设为首页收藏本站|繁體中文

Project1

 找回密码
 注册会员
搜索
查看: 4467|回复: 13
打印 上一主题 下一主题

[已经解决] 如何用脚本让事件走动

[复制链接]

Lv4.逐梦者

梦石
0
星屑
8080
在线时间
7346 小时
注册时间
2010-7-16
帖子
4915

开拓者

跳转到指定楼层
1
发表于 2010-7-22 09:28:33 | 只看该作者 回帖奖励 |正序浏览 |阅读模式

加入我们,或者,欢迎回来。

您需要 登录 才可以下载或查看,没有帐号?注册会员

x
本帖最后由 熊的选民 于 2010-7-23 12:13 编辑

我在论坛上搜索“脚本”“移动”,把相关帖子都看了一遍,也没找到答案
event.moveto(x, y) #这个有效,事件瞬移了
event.move_forward #这个无效,事件毫无反应
请问怎么才能让事件走动(不是瞬移)?

Lv4.逐梦者

梦石
0
星屑
8080
在线时间
7346 小时
注册时间
2010-7-16
帖子
4915

开拓者

14
 楼主| 发表于 2010-7-23 12:11:22 | 只看该作者
又测试了一下,成功了,不用attr_accessor :events
当我在别的游戏里测试时,可能和某个脚本有冲突,所有指令都不好用
后来建了个新项目,move_forward还是不能用,但是move_backward却好用了。原因在于这个脚本我是让主角和事件对话后触发的,事件虽然没有改变朝向,但move_forward却是朝主角的方向移动,因为主角挡路,才无法移动。用了move_backward后,看到事件朝与主角相反的方向平移了一下,才明白是怎么回事。大概和事件对话后,系统默认事件自动转向主角?但我又没有设置固定朝向,为什么事件没有转向呢?导致我一直以为这个脚本不好用。晕死了。总之谢谢各位的热心解答。

点评

额,原来默认脚本已经attr_reader :events了,话说我以前还一直记着@events只能在Game_Map内部调用来着,大概以前看某个脚本的时候被误导了- -b  发表于 2010-7-23 14:02
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
270 小时
注册时间
2010-2-4
帖子
1305
13
发表于 2010-7-23 11:08:32 | 只看该作者
本帖最后由 zhangbanxian 于 2010-7-23 11:09 编辑

先往脚本里插
  1. class Game_Map
  2. attr_accessor :events
  3. end
复制代码
然后$game_map.events[事件id].move_up



评分

参与人数 1星屑 +200 收起 理由
「旅」 + 200 认可答案

查看全部评分

好歹当年也当过大魔王过,orz
回复 支持 反对

使用道具 举报

Lv4.逐梦者

梦石
0
星屑
8080
在线时间
7346 小时
注册时间
2010-7-16
帖子
4915

开拓者

12
 楼主| 发表于 2010-7-23 07:16:02 | 只看该作者
我新建了一个项目,测试了一下,确认不是因为和其他脚本不兼容。事件就是无法移动
回复 支持 反对

使用道具 举报

Lv4.逐梦者

梦石
0
星屑
8080
在线时间
7346 小时
注册时间
2010-7-16
帖子
4915

开拓者

11
 楼主| 发表于 2010-7-23 07:03:39 | 只看该作者
event.move_forward #这个无效,事件毫无反应

我就是用的这个,无效啊
回复 支持 反对

使用道具 举报

Lv1.梦旅人

剑仙·影羽

梦石
0
星屑
172
在线时间
224 小时
注册时间
2010-3-20
帖子
1580
10
发表于 2010-7-23 06:28:18 | 只看该作者
本帖最后由 火ZHI意志 于 2010-7-23 06:43 编辑
  1. $game_map.events[X].move_down
复制代码
X为事件编号
懒得多说
如果是本是件的话
X = @event_id

————————————————————————————————————

我想说LZ为什么不肯好好吧脚本编辑器给翻一番呢………………………………
  1.         # 命令编号分支
  2.         case command.code
  3.         when 1  # 向下移动
  4.           move_down
  5.         when 2  # 向左移动
  6.           move_left
  7.         when 3  # 向右移动
  8.           move_right
  9.         when 4  # 向上移动
  10.           move_up
  11.         when 5  # 向左下移动
  12.           move_lower_left
  13.         when 6  # 向右下移动
  14.           move_lower_right
  15.         when 7  # 向左上移动
  16.           move_upper_left
  17.         when 8  # 向右上
  18.           move_upper_right
  19.         when 9  # 随机移动
  20.           move_random
  21.         when 10  # 接近主角
  22.           move_toward_player
  23.         when 11  # 远离主角
  24.           move_away_from_player
  25.         when 12  # 前进一步
  26.           move_forward
  27.         when 13  # 后退一步
  28.           move_backward
  29.         when 14  # 跳跃
  30.           jump(command.parameters[0], command.parameters[1])
  31.         end
复制代码

点评

以此类推,脚本基础…………………………  发表于 2010-7-23 06:32

评分

参与人数 1星屑 +300 收起 理由
「旅」 + 300 认可答案

查看全部评分


——至今为止,谁也没能分析出他们为什么会因为说了这些话而死。
回复 支持 反对

使用道具 举报

Lv4.逐梦者

梦石
0
星屑
8080
在线时间
7346 小时
注册时间
2010-7-16
帖子
4915

开拓者

9
 楼主| 发表于 2010-7-23 06:25:32 | 只看该作者
其实我只想让目标移动一格,但目前连转一下身都无法实现。难道要想让它移动必须写大段函数?我觉得这个功能应该很常用才对,但在论坛上却搜不到实现方法。
另外忘了说,$game_player.move_down是有效的。这些移动函数对主角有效,对事件就不行
回复 支持 反对

使用道具 举报

Lv3.寻梦者 (暗夜天使)

名侦探小柯

梦石
0
星屑
3367
在线时间
3624 小时
注册时间
2006-9-6
帖子
37402

开拓者贵宾第3届短篇游戏大赛主流游戏组亚军第5届短篇游戏比赛亚军

8
发表于 2010-7-22 20:06:59 | 只看该作者
其实如果你知道目标的坐标的话可以用这个:
http://rpg.blue/htm/Topic_27070.htm
回复 支持 反对

使用道具 举报

Lv4.逐梦者

梦石
0
星屑
8080
在线时间
7346 小时
注册时间
2010-7-16
帖子
4915

开拓者

7
 楼主| 发表于 2010-7-22 18:58:11 | 只看该作者
因为我要让事件朝另一个事件移动,而另一个事件的位置不是固定的,所以才用脚本。有人知道为什么我的方法不行吗?如果实在无法实现,我可以试一下6楼的办法
回复 支持 反对

使用道具 举报

Lv3.寻梦者 (暗夜天使)

名侦探小柯

梦石
0
星屑
3367
在线时间
3624 小时
注册时间
2006-9-6
帖子
37402

开拓者贵宾第3届短篇游戏大赛主流游戏组亚军第5届短篇游戏比赛亚军

6
发表于 2010-7-22 15:03:40 | 只看该作者
一定要用脚本的话,我有个办法。
$game_temp.common_event_id = 编号
这个可以调用公共事件,里面用事件写移动事件。不过记得加上移动后等待。

如果经常用的话,你也可以做成4个公共事件,每个都代表一个方向的移动,然后用执行公共事件的办法串联起来……

评分

参与人数 1星屑 +240 收起 理由
「旅」 + 240 认可答案

查看全部评分

回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

站长信箱:[email protected]|手机版|小黑屋|无图版|Project1游戏制作

GMT+8, 2025-4-5 16:39

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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