找回密码
 点一下
查看: 1806|回复: 8

war3map.j的修改问题

[复制链接]
发表于 2009-4-11 14:40:46 | 显示全部楼层 |阅读模式
现在刚开始弄jass的一些东西, 一般都把其他图的J文件解压出来学,  然后发现一个问题

就是:   比如有个公式计算伤害=(A+1)*5  我想把他改成 (A+1)*GetUnitState(GetTriggerUnit(), UNIT_STATE_MAX_MANA)  保存压缩回去

但是进去建图的时候看不见玩家选择栏 -.-, 但是改成(A+1)*6,(A+1)*7之类的就没问题 或者把1改成2或者3什么的,用的工具就是论坛

里的工具,这是怎么回事? 感谢各位大大
发表于 2009-4-11 14:44:34 | 显示全部楼层
看不到这些一般是语法没通过
jasscraft这些可以检测语法的
现在刚开始弄jass的一些东西, 一般都把其他图的J文件解压出来学,  然后发现一个问题
谁教你的?通过改图来学图绝对不是正统的方法,好好的从基本开始慢慢看教程慢慢学慢慢写些小东西连手吧,不要老想着去改这改那的
回复

使用道具 举报

 楼主| 发表于 2009-4-11 15:00:19 | 显示全部楼层
谢谢LS,不过应该不是语法问题吧,后面的GetUnitState 我就是从这个文件里其他地方复制黏贴过

来的,吧数字改成其他数字没问题,改成一个命令好像就不行了 >.<

把他解压出来主要是有个很有趣的技能  释放后可以跟随绕着目标转圈  想看看怎么作的
回复

使用道具 举报

发表于 2009-4-11 15:02:16 | 显示全部楼层
估计这行语句前面的变量是整型或者传入的函数参数是整型
回复

使用道具 举报

发表于 2009-4-11 15:03:28 | 显示全部楼层
其实我也没看出有问题,但是出现这个情况的话貌似都是语法问题
hmmm,那么检测下来的结果如何呢?
引用第3楼lunaflywar于2009-04-11 15:02发表的  :
估计这行语句前面的变量是整型或者传入的函数参数是整型

hmmm,的确有这个可能呢,如果是做伤害的话,参数应该是实数的啊
回复

使用道具 举报

 楼主| 发表于 2009-4-11 15:26:55 | 显示全部楼层
谢谢啊, 他这个技能是这样的: 绕着目标转圈, 转的路程越长伤害越大

伤害语句是这样的:  call DmTg(unit_1,GetEnumUnit(),1,A*(B*2+2)/ 100)

然后 DmTg 是这样定义的

function DmTg takes unit U1,unit U2,integer G,real R returns nothing
if G==0 then
return
endif
if G==1 then
call UnitDamageTarget(U1,U2,R,true,true,ATTACK_TYPE_NORMAL,DAMAGE_TYPE_FIRE,WEAPON_TYPE_WHOKNOWS)
elseif G==2 then
call UnitDamageTarget(U1,U2,R,true,true,ATTACK_TYPE_HERO,DAMAGE_TYPE_NORMAL,WEAPON_TYPE_WHOKNOWS)
endif
endfunction

好像也没什么问题啊
回复

使用道具 举报

发表于 2009-4-11 15:32:29 | 显示全部楼层
LZ把附近用到的函数和LZ的修改完整的贴一下
回复

使用道具 举报

 楼主| 发表于 2009-4-11 16:59:50 | 显示全部楼层
哈哈  解决了 谢谢LS两位(我竟然不知道有语法纠错这个功能 T^T)

是那个unit_1 在其他函数里是local 定义 但没有在这个DmgTg里声明
回复

使用道具 举报

发表于 2009-4-13 08:37:48 | 显示全部楼层
jass..我一向都看不懂....只能看懂些小T= =
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 点一下

本版积分规则

Archiver|移动端|小黑屋|地精研究院

GMT+8, 2024-7-21 20:23 , Processed in 0.077692 second(s), 20 queries .

Powered by Discuz! X3.5

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表