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

Project1

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

[已经解决] 有些不明白的脚本?请耐心解答下呵

[复制链接]

Lv1.梦旅人

梦石
0
星屑
45
在线时间
282 小时
注册时间
2012-2-18
帖子
161
跳转到指定楼层
1
发表于 2012-5-14 11:19:06 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
# 自己是主角、对方的图形是角色的情况下     为什么会表达为这种形式呢?? {:2_251:}
翻译为:如果事件的角色名称不等于任意字符串??看不懂呀…~
                  if event.character_name != ""
# 不能通行
                    return false
为什么要设定成“自己是主角、对方的图形是角色的情况下,不能通行”这种呢??{:2_257:}








def bigevent_passable?(x, y, d)  
定义巨大事件的通行判定 (true:可通行;false:不可通行)

坐标在地图以外的情况

不能通行

穿透是 ON 的情况下

可以通行

移动者的元件无法来到指定方向的情况下

通行不可

元件从指定方向不能进入到移动处的情况下       

不能通行



循环全部事件                            # 为何在这个地方要“循环全部事件呢”??而不是在最后的位置循环??{:2_248:}


事件坐标与移动目标坐标一致的情况下

穿透为 ON的情况下

(可以通行)

自己就是事件的情况下

不能通行

自己是主角、对方的图形是角色的情况下

不能通行

主角的坐标与移动目标坐标一致的情况下
穿透为 ON
(可以通行)
自己的图形是角色的情况下
不能通行


除此之外可以通行
真实的我不是这样子的~@

Lv3.寻梦者

梦石
0
星屑
3884
在线时间
2260 小时
注册时间
2008-1-28
帖子
3193

开拓者

2
发表于 2012-5-14 22:10:23 | 只看该作者
= =关于 自己是主角、对方的图形是角色的情况下  同样表示不理解,估计编者的含义是如果你要去的地方正好那里站了个人,就不能走
循环时间是想刷新一下。。。你挪了一次看看有没有再碰到上述的(能否通行的)问题。???
[pmshow=23,31925]阿柏蛇[/pmshow]
回复

使用道具 举报

Lv2.观梦者

梦石
0
星屑
690
在线时间
791 小时
注册时间
2011-10-20
帖子
2394

开拓者

3
发表于 2012-5-14 23:05:24 | 只看该作者
翻译错了
是当事件行走图不为空白就不可通行啊
欢迎点此进入我的egames.wink.ws,有RMQQ堂等

[url=http://rpg.blue/thread-317273-1-1.html]短篇八-赶选

http://yun.baidu.com/share/link?shareid=2158225779&uk=169642147&third=0


历险ARPG赢回你的疆域新的战斗模式?…………点击这里:[宋乱贼狂 for QQ堂]
http://rpg.blue/group-368-1.html
programing ....?
[url=http://rpg.blue/thrd-234658-1-1.html]
回复

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
45
在线时间
282 小时
注册时间
2012-2-18
帖子
161
4
 楼主| 发表于 2012-5-15 18:30:00 | 只看该作者
本帖最后由 dabojun 于 2012-5-16 16:11 编辑

啊!感谢楼上两位的解答,我明白了 如果你要去的地方没有人,可以走;事件行走图为空白可以通行。
只是不明白循环的位置为何不放在下方而是中间呢? 下方的事件也是被循环检测的吗??
既这一段:(也会被循环检测吗?)
事件坐标与移动目标坐标一致的情况下

穿透为 ON的情况下

(可以通行)

自己就是事件的情况下

不能通行

自己是主角、对方的图形是角色的情况下

不能通行

主角的坐标与移动目标坐标一致的情况下
穿透为 ON
(可以通行)
自己的图形是角色的情况下
不能通行


除此之外可以通行




真实的我不是这样子的~@
回复

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
3 小时
注册时间
2012-5-12
帖子
29
5
发表于 2012-5-15 23:01:06 | 只看该作者
(*^__^*) 嘻嘻……
回复

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
45
在线时间
282 小时
注册时间
2012-2-18
帖子
161
6
 楼主| 发表于 2012-5-16 16:13:54 | 只看该作者
@飞3a这个问题还有个小疑问想请你再帮忙看一下~
真实的我不是这样子的~@
回复

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
3884
在线时间
2260 小时
注册时间
2008-1-28
帖子
3193

开拓者

7
发表于 2012-5-16 19:32:14 | 只看该作者
dabojun 发表于 2012-5-16 16:13
@飞3a这个问题还有个小疑问想请你再帮忙看一下~

某飞很贱的拿尺子对了一下for的缩进。。。。
你说的是这个帖子的http://rpg.blue/thread-232046-1-1.html这个吧?
那我为了方便把它贴过来好了
37.            for event in $game_map.events.values
38.              # 事件坐标于移动目标坐标一致的情况下
39.              if event.areas.include?(new_point) and self != event
40.                # 穿透为 ON
41.                unless event.through
42.                  # 自己就是事件的情况下
43.                  if self != $game_player
44.                    # 不能通行
45.                    return false
46.                  end
47.                  # 自己是主角、对方的图形是角色的情况下
48.                  if event.character_name != ""
49.                    # 不能通行
50.                    return false
51.                  end
52.                end
53.              end
54.            end
这上面的37-54是一个循环体,剩下的语言和循环体无关。
一般在c里面是这么写的:
for()//判断条件,初始值等
{//你写的语句
}
然而在ruby里,{}不是很常用,一般的格式是:
class A
end#我写了一个类的格式,在java或者别的什么的话写法是:
class A
{//你写的语句
}
好了扯回来你说关于循环在中间的问题,不知道你有没有注意到两个判断的条件不一样:(红字的部分)
55.            # 主角的坐标与移动目标坐标一致的情况下
56.            if $game_player.areas.include?(new_point)
一个是事件,一个是主角,两个东西不一样。
[pmshow=23,31925]阿柏蛇[/pmshow]
回复

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
45
在线时间
282 小时
注册时间
2012-2-18
帖子
161
8
 楼主| 发表于 2012-5-16 20:12:11 | 只看该作者
飞3a 发表于 2012-5-16 19:32
某飞很贱的拿尺子对了一下for的缩进。。。。
你说的是这个帖子的http://rpg.blue/thread-232046-1-1 ...

你的意思是… for event in $game_map.events.values这段循环承接了上下两部分内容吗?
如果理解有出入莫怪~
真实的我不是这样子的~@
回复

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
3884
在线时间
2260 小时
注册时间
2008-1-28
帖子
3193

开拓者

9
发表于 2012-5-16 21:00:33 | 只看该作者
dabojun 发表于 2012-5-16 20:12
你的意思是… for event in $game_map.events.values这段循环承接了上下两部分内容吗?
如果理解有出入莫 ...

$打头的是全局变量,在整个rgss中都有用。
可以看一下game_map的312行:
  #--------------------------------------------------------------------------
  # ● 获取指定位置的事件 ID
  #     x          : X 坐标
  #     y          : Y 坐标
  #--------------------------------------------------------------------------
  def check_event(x, y)
    for event in $game_map.events.values
      if event.x == x and event.y == y
        return event.id
      end
    end
  end
[pmshow=23,31925]阿柏蛇[/pmshow]
回复

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
45
在线时间
282 小时
注册时间
2012-2-18
帖子
161
10
 楼主| 发表于 2012-5-16 21:15:17 | 只看该作者
飞3a 发表于 2012-5-16 21:00
$打头的是全局变量,在整个rgss中都有用。
可以看一下game_map的312行:
  #--------------------------- ...

在帮助中曾提到过"$"全局变量很强大,要慎用。原来是这样~
感谢“飞”的耐心解答和细心解答@ 我可以结贴了!
真实的我不是这样子的~@
回复

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-11-26 19:44

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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