Project1

标题: 问个脚本的两个小小问题 [打印本页]

作者: 八云紫    时间: 2008-3-29 04:12
标题: 问个脚本的两个小小问题
嘛,目前在学脚本,遇到两个小问题,望大家帮帮我,感谢。

    1. 用RGSS2可以不可以定义多维数组?

    2. 看到 Window_Base 里的这一段:
  #--------------------------------------------------------------------------
  # ● 描绘步行图像
  #     character_name  : 步行图像文件名
  #     character_index : 步行图像索引
  #     x               : 描绘目标 X 坐标
  #     y               : 描绘目标 Y 坐标
  #--------------------------------------------------------------------------
  def draw_character(character_name, character_index, x, y)
    return if character_name == nil
    bitmap = Cache.character(character_name)
    sign = character_name[/^[\!\$]./]  ★
    if sign != nil and sign.include?('$')
      cw = bitmap.width / 3
      ch = bitmap.height / 4
    else
      cw = bitmap.width / 12
      ch = bitmap.height / 8
    end
    n = character_index
    src_rect = Rect.new((n%4*3+1)*cw, (n/4*4)*ch, cw, ch)
    self.contents.blt(x - cw / 2, y - ch, bitmap, src_rect)
  end

带★的那句是什么意思啊?看了半天,不知所云?
{/ll}
[LINE]1,#FF3333[/LINE]

PS,问题二经研究,已明白是怎么回事了。
[LINE]1,#dddddd[/LINE]版务信息:本贴由楼主自主结贴~
作者: 小幽的马甲    时间: 2008-3-29 04:53
用RGSS2可以不可以定义多维数组?

用Table吧…… [LINE]1,#dddddd[/LINE]系统信息:本贴由楼主认可为正确答案,66RPG感谢您的热情解答~
作者: 八云紫    时间: 2008-3-29 04:58
嘛,发现脚本的多维数组没有C++的好用。
作者: hexawing    时间: 2008-3-29 08:00
sign = character_name[/^[\!\$]./]

以在下对JS这样的脚本语言的粗浅了解,窃以为此句是正则表达式……
[//]是括号
^是“非”
\!和\$是!和$的转义符
.是多次匹配

合在一起大概表达的意思是:一个不能有“!”或者“$”符号的字符串
作者: 雪流星    时间: 2008-3-29 15:12
以下引用hexawing于2008-3-29 0:00:31的发言:

sign = character_name[/^[\!\$]./]

以在下对JS这样的脚本语言的粗浅了解,窃以为此句是正则表达式……
[//]是括号
^是“非”
\!和\$是!和$的转义符
.是多次匹配

合在一起大概表达的意思是:一个不能有“!”或者“$”符号的字符串


LS只说对了一部份
所以最後得结论就错了

[//] 是括号
^ 指从字符串第一个字符开始判断
\! 和 \$ 分别代表!和$
.是指只要匹配[/\!\$/]内任一字符(也就是!或$)

结论:sign为角色行走图图档名称当中所带有的符号(也就是!或$)


to LZ and LS
像这些问题其实可以从F1中找到答案
找不到或看不懂再来提问





欢迎光临 Project1 (https://rpg.blue/) Powered by Discuz! X3.1