找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
楼主: 幻耶

[已解决] 如何在公共事件里实现允许穿透?

[复制链接]
发表于 2010-1-10 20:04:32 | 显示全部楼层
我不是伪娘。。。我只是比较喜欢我头像的那幅图片而已。。。很邪恶。。有我当年的风范
发表于 2010-1-10 22:41:57 | 显示全部楼层
天使喝可乐 那个方法可以换成脚本,这样可行行就更大了。。。旅的方法是加一个独立开关。

那么完全可以在update中加一个独立开关E的判断啊。。
if E
  @through = true
end
这样。。公共事件就省了吧。。。公共事件比这个浪费资源
 楼主| 发表于 2010-1-11 09:09:19 | 显示全部楼层
引用第11楼secondsen于2010-01-10 22:41发表的  :
天使喝可乐 那个方法可以换成脚本,这样可行行就更大了。。。旅的方法是加一个独立开关。

那么完全可以在update中加一个独立开关E的判断啊。。
if E
  @through = true
.......


脚本怎么写啊?我想用在循环里的。。。也就是说,循环事件的编号1..20
发表于 2010-1-11 09:46:44 | 显示全部楼层
update 不就是自动循环了么
发表于 2010-1-11 09:51:49 | 显示全部楼层
旅 的方法:$game_self_switches[[$game_map.map_id,event.id,"E"]]
$game_self_switches[[地图编号,事件编号,"E"]] = true / false

添加一个独立开关E

你可以这样。。。

if $game_self_switches[[$game_map.map_id,@id,"E"]]
@through = true
end
这段脚本放到 Game_character 的 def update中
 楼主| 发表于 2010-1-11 10:07:46 | 显示全部楼层
如果地图编号也循环应该怎么写?比如只在10~30号地图循环1~20号事件
 楼主| 发表于 2010-1-11 10:47:07 | 显示全部楼层
在事件里这样写??
for i in 10..30
  for i in 1..20
    $game_self_switches[[i,j,"E"]] = true
  end
end
发表于 2010-1-11 11:08:41 | 显示全部楼层
是这样的。。。
 楼主| 发表于 2010-1-11 13:19:21 | 显示全部楼层
公共事件里这么写好像没效果呢。。。

if $game_player.direction == 2
  $game_player.animation_id = 201
  for j in 10..30
    for i in 1..20
      if $game_player.x==$game_map.events[
i].x and $game_map.events[
i].y < $game_player.y and $game_map.events[
i].y > $game_variables[28]
      $game_self_switches[[j,i,"E"]] = true
      break
end;end;end;end
发表于 2010-1-11 17:30:25 | 显示全部楼层
我就说你基础没打牢。。。还老想着ARPG。。。

你地图编号不对,不用循环
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|幻想森林

GMT+8, 2026-10-31 15:26 , Processed in 0.010744 second(s), 13 queries .

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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