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

Project1

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

[已经解决] 当主角与事件的距离小于或等于2时打开独立开关A

 关闭 [复制链接]

Lv6.析梦学徒

梦石
0
星屑
56136
在线时间
269 小时
注册时间
2010-6-16
帖子
982
跳转到指定楼层
1
发表于 2011-2-17 18:39:50 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 IamI 于 2011-2-17 19:02 编辑

如题,我想弄这种效果,于是就动手写了下脚本……注意我想做的是靠近哪个就开启哪个的。
然后,实际游戏中运用时弹错了,提示nil(大家可以放到工程的game_player中运行试试)。
然后,想请各位帮忙改正= =
脚本:

  1. 触发的距离 = 2      #在此距离内开启开关
  2. 触发的开关 = "A"    #在距离内时开启的开关
  3. for i in 1..$game_map.events.size
  4. 怪物与主角的x距离 = ($game_map.events[i].x - $game_player.x).abs
  5. 怪物与主角的y距离 = ($game_map.events[i].y - $game_player.y).abs
  6. if 怪物与主角的x距离 <= 触发的距离 or 怪物与主角的y距离<= 触发的距离
  7. $game_self_switches[[$game_map.map_id, $game_map.events[i].id,触发的开关]] = true
  8. else
  9. $game_self_switches[[$game_map.map_id, $game_map.events[i].id,触发的开关]] = false
  10.    end
  11.   end
复制代码
◇◆舒克君赛高◆◇

Lv3.寻梦者

孤独守望

梦石
0
星屑
3132
在线时间
1535 小时
注册时间
2006-10-16
帖子
4321

开拓者贵宾

2
发表于 2011-2-17 18:42:39 | 只看该作者
本帖最后由 IamI 于 2011-2-17 18:42 编辑

$game_map.events 是 Hash 不是array。
用for i in $game_map.events.values
下面用i代替$game_map.events
菩提本非树,明镜本非台。回头自望路漫漫。不求姻缘,但求再见。
本来无一物,何处惹尘埃。风打浪吹雨不来。荒庭遍野,扶摇难接。
不知道多久更新一次的博客
回复

使用道具 举报

Lv6.析梦学徒

梦石
0
星屑
56136
在线时间
269 小时
注册时间
2010-6-16
帖子
982
3
 楼主| 发表于 2011-2-17 18:55:44 | 只看该作者
回复 IamI 的帖子

的确是不弹错了,但独立开关似乎并没有开启呢?
◇◆舒克君赛高◆◇
回复

使用道具 举报

Lv3.寻梦者

孤独守望

梦石
0
星屑
3132
在线时间
1535 小时
注册时间
2006-10-16
帖子
4321

开拓者贵宾

4
发表于 2011-2-17 18:59:28 | 只看该作者
本帖最后由 IamI 于 2011-2-17 19:01 编辑

$game_self_switches[[$game_map.map_id, $game_map.events.id,触发的开关]] = true
我懒得吐槽了……
Turn it to i.id

点评

那只是6r把[i]当成斜体指示了,原来是$game_map.events[i].id的  发表于 2011-2-17 19:00
菩提本非树,明镜本非台。回头自望路漫漫。不求姻缘,但求再见。
本来无一物,何处惹尘埃。风打浪吹雨不来。荒庭遍野,扶摇难接。
不知道多久更新一次的博客
回复

使用道具 举报

Lv3.寻梦者

孤独守望

梦石
0
星屑
3132
在线时间
1535 小时
注册时间
2006-10-16
帖子
4321

开拓者贵宾

5
发表于 2011-2-17 19:07:42 | 只看该作者
没有显示神马的是你的幻觉= =v
        $game_self_switches[[$game_map.map_id, i.id,触发的开关]] = true
        >> $game_map.refresh
可以在这里稍微做个检查来保证不拖慢速度,但是实现是肯定可以的……
菩提本非树,明镜本非台。回头自望路漫漫。不求姻缘,但求再见。
本来无一物,何处惹尘埃。风打浪吹雨不来。荒庭遍野,扶摇难接。
不知道多久更新一次的博客
回复

使用道具 举报

Lv6.析梦学徒

梦石
0
星屑
56136
在线时间
269 小时
注册时间
2010-6-16
帖子
982
6
 楼主| 发表于 2011-2-17 19:11:57 | 只看该作者
回复 IamI 的帖子

是不是我插入的地方有点不对= =
我应该把这货放在那里好?
一刷新就无视判断直接开启了= =c
◇◆舒克君赛高◆◇
回复

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
161 小时
注册时间
2011-2-8
帖子
274
7
发表于 2011-2-17 19:30:23 | 只看该作者
本帖最后由 神蛋威武 于 2011-2-17 19:30 编辑

其实可以不用脚本。。只要在周围的格子上都铺上事件。一旦和主角接触就打开开关。。。
回复

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-11-28 19:23

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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