找回密码
 点一下
查看: 2342|回复: 12

求救,下面这段jass哪里错了啊?为什么我在游戏中打ssl无效啊,怎么都没法子触发,求解释哪里出问题了。。。。。。。

[复制链接]
发表于 2011-7-7 15:53:15 | 显示全部楼层 |阅读模式
  1. function Trig_ssl_Actions takes nothing returns nothing
  2. call DisplayTextToForce( GetPlayersAll(), ( GetPlayerName(GetTriggerPlayer()) + "|cffe55bb0哈哈,5点全属性就这么来啦!|r" ) )
  3. call ModifyHeroStat( bj_HEROSTAT_STR, GetTriggerUnit(), bj_MODIFYMETHOD_ADD, 5 )
  4. call ModifyHeroStat( bj_HEROSTAT_AGI, GetTriggerUnit(), bj_MODIFYMETHOD_ADD, 5 )
  5. call ModifyHeroStat( bj_HEROSTAT_INT, GetTriggerUnit(), bj_MODIFYMETHOD_ADD, 5 )
  6. endfunction
  7. function InitTrig_ssl takes nothing returns nothing
  8. set gg_trg_ssl = CreateTrigger(  )
  9. call TriggerRegisterPlayerChatEvent(gg_trg_ssl, Player(0), "ssl", true )
  10. call TriggerRegisterPlayerChatEvent(gg_trg_ssl, Player(1), "ssl", true )
  11. call TriggerRegisterPlayerChatEvent(gg_trg_ssl, Player(2), "ssl", true )
  12. call TriggerRegisterPlayerChatEvent(gg_trg_ssl, Player(3), "ssl", true )
  13. call TriggerRegisterPlayerChatEvent(gg_trg_ssl, Player(4), "ssl", true )
  14. call TriggerAddAction(gg_trg_ssl,function Trig_ssl_Actions)
  15. endfunction
复制代码
发表于 2011-7-7 16:16:10 | 显示全部楼层
哪有GetTriggerUnit()啊
回复

使用道具 举报

 楼主| 发表于 2011-7-7 16:22:38 | 显示全部楼层
我对jass不懂 ,GetTriggerUnit()不是取得触发单位的意思吗?
回复

使用道具 举报

 楼主| 发表于 2011-7-7 16:24:06 | 显示全部楼层
如果我想无论是谁输入“ssl”就给他加5点全属性要怎么做呢 ?
回复

使用道具 举报

 楼主| 发表于 2011-7-7 16:28:24 | 显示全部楼层
难道要用GetEnumUnit()
回复

使用道具 举报

 楼主| 发表于 2011-7-7 16:37:57 | 显示全部楼层
也是不行啊,还请大大指点下。
回复

使用道具 举报

 楼主| 发表于 2011-7-7 17:13:25 | 显示全部楼层
唉~看来是zhuzeitou闲我问的问题小白了。那算了吧。。。
回复

使用道具 举报

发表于 2011-7-7 18:00:17 | 显示全部楼层
不是。。打字的是玩家。。怎么能是单位呢。。难道是某英雄在屏幕上打字?
回复

使用道具 举报

 楼主| 发表于 2011-7-8 13:07:53 | 显示全部楼层
嗯,谢谢楼上的,我知道了,我现在用其它方法实现了,但是代码太多,有很多的if elseif还有代码不能移植,我现在想求有没有什么函数可以得到当前玩家选中的单位,或者可以获得玩家所拥有的单位?
回复

使用道具 举报

发表于 2011-7-8 22:09:29 | 显示全部楼层
GroupEnumUnitsOfPlayer
回复

使用道具 举报

发表于 2011-7-8 23:26:08 | 显示全部楼层
话说啊……人家要上班的,也不可能每时每刻盯着这帖啊

方法1:预先用变量记录单位,可以用数组与玩家索引做匹配,也可以向其他方法
方法2:选取满足触发玩家所属匹配单位是英雄的单位做动作

顺便,帖子可以编辑啊,不要连那么多
回复

使用道具 举报

发表于 2011-8-7 08:30:06 | 显示全部楼层
可以先 建个单位组   
local group gp1=CreateGroup()
call GroupEnumUnitsOfPlayer(....中间参数 用JASSHELP 填满)
然后  分别对单位组中的单位进行判断
是英雄  就增加 不是就不做动作
回复

使用道具 举报

发表于 2011-9-2 00:45:04 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-12-22 14:53 , Processed in 0.049114 second(s), 19 queries .

Powered by Discuz! X3.5

© 2001-2023 Discuz! Team.

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