找回密码
 点一下
查看: 2043|回复: 18

怎么做个流畅的键盘控制移动系统?

[复制链接]
发表于 2008-9-21 11:05:43 | 显示全部楼层 |阅读模式
[trigger]
UP Left Select
事件
玩家 - 玩家1(红色) 释放 Left键
玩家 - 玩家2(蓝色) 释放 Left键
条件
动作
自定义代码: local integer playerId = GetPlayerId(GetTriggerPlayer())
自定义代码: set udg_V2_KeySta[(playerId*10)+2] = 0
自定义代码: call AngelCount(playerId)
自定义代码: call PauseTimer(udg_V2_TimerSelectionMove[GetPlayerId(GetTriggerPlayer())])
[/trigger]
[trigger]
P Left Select
    事件
        玩家 - 玩家1(红色) 按下 Left键
        玩家 - 玩家2(蓝色) 按下 Left键
    条件
    动作
        自定义代码: local integer playerId = GetPlayerId(GetTriggerPlayer())
        自定义代码: set udg_V2_KeySta[(playerId*10)+2] = 1
        自定义代码: call AngelCount(playerId)
        自定义代码: if (udg_V2_IsDanceAnim[playerId] == FALSE ) then
        自定义代码: call TimerStart(udg_V2_TimerSelectionMove[playerId],1,FALSE,function ArrowMoveTimer)
        自定义代码: if (udg_V2_IsHRable[playerId] ) then
        自定义代码: call ArrowMove(playerId,TRUE)
        自定义代码: set udg_V2_IsHRable[playerId] = FALSE
        等待 0.35 秒
        自定义代码: set udg_V2_IsHRable[playerId] = TRUE
        自定义代码: endif
        自定义代码: endif
[/trigger]
这是Darkdance2里的,应该是键盘上向左键的触发,但我看不懂,不知道谁能指点下怎么做到那么流畅的移动系统 ,或者能把这些代码解释告诉我,谢谢帮忙。
发表于 2008-9-21 12:10:25 | 显示全部楼层
你至少还要把自定义脚本里的函数也发一下吧

或者你可以去学习一下jass,这并不是很难的
回复

使用道具 举报

 楼主| 发表于 2008-9-21 12:14:22 | 显示全部楼层
JASS我暂时没时间学 ,那些函数太多了不好复制,谁能帮我翻译下也好,不需要翻译出什么来,让我知道这些代码是什么意思就好,翻译不用翻译函数,让我知道功能就好了。
回复

使用道具 举报

发表于 2008-9-21 12:15:59 | 显示全部楼层
比如说AngelCount这些不是原有的函数,而是作者自定义的函数,你至少应该把这些函数贴出来吧………………
回复

使用道具 举报

发表于 2008-9-21 12:18:06 | 显示全部楼层
Darkdance2没玩过,不知道我的这个是否复合要求。
回复

使用道具 举报

发表于 2008-9-21 12:18:20 | 显示全部楼层
回复

使用道具 举报

 楼主| 发表于 2008-9-21 12:29:53 | 显示全部楼层
这些JASS我看不是很明白,所以那些函数我也可能找不到了,这个地图是DarkDancer2-黑暗舞者2,它的键盘操作很流畅所以我想学习下,
地图加上,大家帮忙看看吧 (2)DarkDancer2.w3x (203 KB, 下载次数: 66)
thody给的应该是汽车的,我是要人物移动的 ,同样感谢你。
回复

使用道具 举报

发表于 2008-9-21 12:31:44 | 显示全部楼层
人物和车貌似没有本质区别吧………………………………
回复

使用道具 举报

发表于 2008-9-21 13:10:27 | 显示全部楼层
差别就在于车是自动导航的。
回复

使用道具 举报

 楼主| 发表于 2008-9-21 18:56:19 | 显示全部楼层
不同,差别很大,thody给的车是向前行走的(而且是JASS- -!我不懂的JASS),机动性还不如人来的强,我想要的效果可以试玩我给出的黑暗舞者2你们就理解了。
回复

使用道具 举报

发表于 2008-9-21 18:58:12 | 显示全部楼层
不懂jass不应该成为问题………………
你顶楼给出的触发也就是披着自定义代码的皮而已
回复

使用道具 举报

 楼主| 发表于 2008-9-21 19:06:57 | 显示全部楼层
那它翻译过来一定是有汉语吧,哪怕是设置函数=XX也是有翻译吧
回复

使用道具 举报

发表于 2008-9-21 19:09:32 | 显示全部楼层
其实我觉得去翻译代码是一件意义不大的事情,而且jass之需要看看函数名基本就知道是干什么的了
回复

使用道具 举报

发表于 2008-9-21 19:37:18 | 显示全部楼层
a触发
按下上键
if x单位组的单位数量为0 then
开启b触发
endif
把要移动的单位加到x单位组

b触发
每过去0.1秒
选取x单位组的单位做动作
移动选取的单位到选取的单位的位置位移50

c触发
放开上键
if x单位组的单位数量为1 then
关闭b触发
endif
把要移动的单位移出x单位组
回复

使用道具 举报

 楼主| 发表于 2008-9-21 19:40:21 | 显示全部楼层
那是什么,我地图给出了,你帮我看看吧
回复

使用道具 举报

发表于 2008-9-21 19:43:29 | 显示全部楼层
你别管他是什么,核心原理我已经给出了,优化和个性化是你自己的事
回复

使用道具 举报

发表于 2008-9-21 19:47:23 | 显示全部楼层
回复

使用道具 举报

 楼主| 发表于 2008-9-21 19:49:10 | 显示全部楼层
非常感谢,这些就够了


LS给的T我见过的,还是代码(我晕,不过没关系了)
回复

使用道具 举报

发表于 2008-9-22 00:51:51 | 显示全部楼层
http://www.islga.org/bbs/read.php?tid=15408
我这个貌似也可以的...
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-7-21 06:17 , Processed in 0.091208 second(s), 21 queries .

Powered by Discuz! X3.5

© 2001-2023 Discuz! Team.

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