ImageVerifierCode 换一换
格式:DOCX , 页数:78 ,大小:68.18KB ,
资源ID:3573115      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/3573115.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(RMXP脚本Ruby的语法.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

RMXP脚本Ruby的语法.docx

1、RMXP脚本Ruby的语法在基础篇,将一边完成单个短程序一边解说 RGSS 的基础知识。首先,来进行开始学习的准备吧。建立工程首先建立一个工程,把它作为学习脚本入门用的新工程。脚本是有关游戏实际运行的数据,照原样改动制作完成的工程,一个小小的错误也将引起游戏不能正常运行。因此,推荐使用新建的工程进行学习。另外,RGPXP 脚本数据是保存在 Data 文件夹内的 Scripts.rxdata 文件中,如果对此文件(或游戏全部数据)已经备份的话,也可以使用既存的工程。建立组建立工程后,在主菜单工具菜单中选择脚本编辑器。显示脚本编辑器对话框后,在最上面新建一个组。点击右键于弹出菜单中选择插入,就建立

2、了一个新的空白组。组的名称是什么无所谓,可以取个容易理解的,我们这里暂命名为“TEST”。名称的输入在窗口左下方的名称里进行。结束程序首先,请输入下面的代码。exit注意,在 Ruby 中是区分字母大小写的,所以不能输入 EXIT 或 Exit。当然全角文字也不行。请全部以半角的小写字母输入。输入完毕按确定键关闭脚本编辑器,运行(游戏测试)看看吧。运行游戏测试,窗口应该显示一瞬间后立即关闭。总之,在这里写的 exit 是结束程序的命令。在最上面的 TEST 组中写入 exit,因此程序就此结束。而在后面众多组中编写的脚本都没有执行。以后示例程序都会省略 exit,在实际测试时请在最后一行加入

3、exit。如果没有加入 exit 而运行测试,就会显示出游戏的标题画面。注释在 Ruby 中,# 符号后面的一整行文字会认定为注释。# 后的注释代码不会执行,不会影响到程序的运作,只作为编写者标记的备忘记录来使用。exit # 结束程序这和事件指令的注释功能相同,是记录程序处理内容的简单说明,使用注释会很容易知道这段脚本是做什么的。即使是自己编写的程序,但时间一长,该段内容是指定做什么处理也会忘记。在脚本的学习和实际操作时,推荐注意多使用注释功能。还有,作为程序的说明,在后面的学习中脚本会写有很多的注释。但实际操作中没有必要完全仿效其注释的内容。# 以后的文字,可以按实际中最容易理解的说明注释

4、。语法和库程序语言在结构上大致分为语法和库两种。所谓语法,就是使用语言记录某些处理时的规则。与中文和英文等自然语言一样,程序语言也有语法。例如条件分歧的语法、循环的语法等等。# 符号后面的一整行文字认定为注释这也是语法之一。语言的说法,狭义上指的就是语法。所谓库,就是字符串的处理和图片的显示等带有应用功能的语言集。与中文英文等自然语言中的单词和词组的意思相似。学习了英文的语法在使用英文时,增加词汇量(掌握库的使用方法)则是非常必要的。这个脚本入门基础篇是以学习语法为重点。最开始学习时或许会产生学习语法,到底有什么用的厌烦感,应用逻辑思维来理解基本语法就能突破最初的屏障,仔细阅读参考程序记住实际

5、的使用方法,其实并不是多么困难的事情。那么现在就开始吧!是关于 Ruby 中数字和计算的基础知识。作为例子将使用计算器那样简单的计算来解说。数字Ruby 中能使用的数字,包括整数和浮点数两种。3 # 整数52 # 整数-99 # 整数1.5 # 浮点数3.0 # 浮点数所谓浮点数,就是使用小数点以下计算的数。数值相同的话写作 3 是整数,而写作 3.0 即是浮点数。整数计算速度快,如果不需要小数点以下的话尽量使用整数。显示数字即在画面上显示数字。想显示某些数字时,使用 p 命令。小写字母 p,半角字符,再把想要显示的数值按顺序输入后换行。今后会出现各种各样的命令和符号,除注释外其它一律使用半角

6、输入。不小心输入全角字符的话,要注意发现错误。p 3这个 p 命令可以在排除程序故障时使用,学习显示数字将会是十分有用的。运行这个程序,会看到在弹出的对话框中显示 3。原本 p 不是显示对话框的命令,但是游戏开发时特殊化的 RGSS 在没有其它输出地点时就会自动显示对话框。计算方法在 Ruby 上进行计算吧。p 1 + 1 # 加法p 10 - 3 # 减法p 7 * 5 # 乘法p 24 / 4 # 除法这样,写上普通算式就会输出计算的结果。+ 和 - 等符号称为运算符。另外还有乘法的 * 和除法的 /。不熟悉的人,一定要记住这些重点。优先顺序和普通的算式一样,* 和 / 计算要优先于 +

7、和 - 计算。想改变这个顺序就要使用括号 ( ),括号中的算式将会优先计算。p 2 * 2 + 3 * 4 # = 16p 2 * (2 + 3) * 4 # = 40p 2 * (2 + 3 * 4) # = 28按优先顺序,示例第一行其实是 4+12,第二行是 2*5*4,第三行是 2*14,所以会是不同的计算结果。括号还可以多层重叠起来(即使是二层三层的情况也是使用同一个符号)。还有,示例程序的注释中使用 = 符号,主要是表示这行的输出结果。这是为了方便直观的理解而做的说明。小数点以下的计算整数除整数的情况下,会省略余数,答案将还是整数。想得到小数点以下的答案,就要使用到浮点数。除数或被

8、除数至少要有一个是浮点数(明确标明了小数点以下),计算的答案就会是浮点数。p 15 / 4 # = 3p 15.0 / 4 # = 3.75p 15 / 4.0 # = 3.75余数的计算求余数(除法的余数),是使用 % 符号。p 14 % 4 # = 2p 13 % 4 # = 1p 12 % 4 # = 0运行示例第一行的算式,是求 14 除以 4 的余数,就会输出计算结果 2。乘方的计算没必要强迫记住,乘方(同一个数指定次数的相乘)是使用 * 符号。p 2 * 4 # = 16这个示例求 2 的 4 次方,也就是计算 2*2*2*2。所谓变量,就是某些数值附上名称。是相对于常量的数据类型

9、。变量的命名变量命名的管理。我们可以为变量取比如 x 和 y 或者更长的像 level 或 gold 这样的名称。名称的长度没有限制。变量有几个类型,首先我们来学习最基本的局部变量。局部变量的命名规则有以下几点。其中的第 1 条应该特别注意。1. 第一个字符必须以小写英文字母或 _(下划线)开头。 2. 第二个字符开始可以使用英文字母、数字或 _(下划线)。 3. 不能使用保留字作变量的名称。 保留字是作为 Ruby 中具有特殊意义的词而被系统所保留,所以变量名称不能使用。以下就是系统的保留字。alias def false nil return unlessand do for not se

10、lf untilbegin else if or super whenbreak elsif in redo then whilecase end module rescue true yieldclass ensure next retry undef除上面列出的保留字以外,其它的词都可以作变量的名称。赋值和引用在实际中使用变量看看吧。x = 3y = 4p x + y # = 7第一行和第二行是进行变量的赋值。其中 = 号是赋值运算符。和数学上使用等号表示左边等于右边的意思不同,这里表示左边的变量代入右边的数值。在上述示例中,第一行 x 变量和第二行 y 变量分别代入数值 3 和 4。第三

11、行是引用变量 x 和 y。所谓引用就是取得那个变量的数值。变量的计算和数字的计算方法完全一样。这里的 x + y 可以解释为 3 + 4,计算结果就为 7。另外,引用从未进行赋值的局部变量,就会使程序出现错误。p zzz # ERROR!请记住,变量一定要进行赋值后才能使用。zzz = 5p zzz # = 5这个示例中,第一行变量 zzz 为其赋值代入 5 后,第二行引用。自运算变量引用自己的数值,并再次代入计算结果称为自运算。x = 1x += 7x -= 3x *= 2p x # = 10第二行的 x += 7 相当于 x = x + 7,总之就是向变量 x 里加上 7。同样 -=、*=

12、、/=、%= 等也是如此使用。这些运算符就是自运算运算符。RPGXP 的变量进行自运算计算处理时思考方法都相似。这个示例中第一行是赋值直接代入 1,第二行加上 7,这时 x 的值其实是 8,第三行减去 3,第四行再乘以 2,最后的计算结果就是 10。全局变量局部变量是暂时使用的变量,只能在函数和类等定义(在后面讲述)内部使用,之外变量就无效。与之相对,在程序任何地方都能引用的就是全局变量。全局变量可以在程序中任何地方使用,名称相同,就必然是同一个变量。如下面的示例,以 $ 号开头的变量就作为全局变量使用。赋值方法和局部变量完全相同。$global虽然在任何地方都能引用,但使用全局变量不一定比局

13、部变量好。全局变量十分强大,胡乱使用恐怕会使程序变得很难懂。请在使用时注意。一般来说,由文字连接起来的数据就称为字符串。print双引号 或单引号 中间的部分,就作为字符串数据使用。p RPG Maker XP # = RPG Maker XPp RPG Maker XP # = RPG Maker XPp 命令会导致双引号和字符串一起输出,所以使用 print 命令代替。print RPG Maker XP # = RPG Maker XP这次双引号就没有了。p 是按照人们容易理解的形式来显示的命令,所以它会加上双引号来强调字符串。print 和 p 相似,但它只显示字符串本身。为变量赋值和

14、数字一样,字符串也能代入变量为该变量赋值。a = RPG Maker XPprint a # = RPG Maker XP字符串也能作加法,字符串加上字符串,就会得到一个连接起来的字符串为答案。a = 我的 b = RPG Maker XPprint a + b # = 我的 RPG Maker XP还可以作乘法,字符串乘以一个整数,就会得到该整数次重复的字符串为答案。a = RPG Maker XPprint a * 2 # = RPG Maker XPRPG Maker XP控制码字符串中的 符号,是作为一段连续文字中换行等操作使用的特殊文字。比如 n 是表示换行。控制码有 t(Tab)和

15、 s(空格)等多种代码,另外 n 表示换行,重叠起来的 表示 文字本身,这两个一定要记住。a = RPG Maker XPb = 10,290print a + n + b # = RPG Maker XP # 10,290单引号 中间的字符串,除 ( 符号本身)和 (单引号)外不能使用任何的控制码。这在打算原样显示文字本身的情况下使用会十分方便。print RPG Maker XPn # = RPG Maker XPn 符号本身即为计算机内部的控制码。以后实际字符串操作中应注意正确使用。内嵌表达式在字符串里面,可以用 #变量名 的形式把变量的内容嵌入在字符串当中。game = RPGprin

16、t #game Maker XP # = RPG Maker XP上述示例里,第一行是为 game 变量赋值代入字符串“RPG”。第二行里面,其中 #game 是表示直接嵌入变量 game 的值字符串“RPG”,和后面的“ Maker XP”组合在一起,从而输出一个新的字符串。 RPGXP 的事件指令显示文章里,在文章中使用 Vn 和 Nn 控制码可以把变量的值和角色的名称作为信息嵌入文字中,这个功能好像和那个十分相似。这个功能,让我们举例来说明在预置脚本中应如何使用。print(文件 #filename 没找到。)print 的显示内容应附加上括号 (),如果其优先顺序不易混淆的话可以省略(

17、本章 print 的使用示例介绍中全部省略了括号)。预置脚本中基本上都统一使用有括号,所以在这儿也加上一个。这个是当然,print(文件 + filename + 没找到。)像这样写也可以,使用内嵌表达式的方法会使读取程序变得很容易。另外内嵌表达式和控制码一样,在单引号 中间的字符串里使用也会无效。满足特定的条件与否,之后的动作会根据其不同而改变就叫作条件分歧。比较运算符在具体地学习处理条件分歧的方法之前,要先记住条件构成中使用的运算符。下面 6 个运算符称为比较运算符。使用这些运算符,和给予的条件(数字和字符串)相比较,然后返回结果。=相等!=不相等大于=大于或相等这里一定要注意的是,判断相

18、等的运算符不是 = 而是 =。像已学习过的那样,所谓 = 符号表示的不是比较而是代入。请注意不要弄混淆了。真伪值比较运算的运算结果就称为真伪值。有真(正确)、伪(错误)两种情况。比较后是正确的话为 true 值,是错误的话就为 false 值。请试试看吧。p (早安 = 早安) # = truep (早安 = 晚安) # = falsep (3 + 1 = 3 + 5) # = falsep (3 + 1 = 2 + 2) # = true逻辑运算符下面 6 个运算符称为逻辑运算符。and&,与,的意思or|,或,的意思not!非的意思英文单词运算符和符号运算符,无论用哪个都是一样的。在预置脚

19、本中运用的主要是英文单词。使用这些逻辑运算符就能指定更加复杂的条件。p (100 77 and 1 + 1 = 2) # = truep (100 77 & 1 + 1 = 2) # = true上述示例中,第一行和第二行表示的都是一个内容100 大于 77 同时 1 + 1 等于 2。不用说 100 是比 77 大的整数,1 + 1 答案也为 2,两个运算都成立。所以输出结果就为 true(真,正确)。那么,看下一个算式吧。p (1 + 1 = 3 or 2 + 2 = 3) # = falsep (1 + 1 = 3 | 2 + 2 = 3) # = false上述示例中,第一行和第二行表

20、示的也都是一个内容1 + 1 等于 3 或 2 + 2 等于 3。很显然,1 + 1 不等于 3,2 + 2 也不等于 3,这样两个运算都不成立。比较运算符 or(|)是只要有一个运算成立就为 ture(真,正确),而这里两个运算全都不成立,所以输出结果就为 false(伪,错误)。另外,not(!)和上面的例子稍微有些不同, not(!)表示的内容为后面的条件不成立。可以理解为颠倒 true 或 false 的运算符。p (not true) # = falsep (! true) # = false上述示例中的内容是非 true的意思,所以输出结果为 false。if elsif else

21、 endif end 语句是条件分歧的句法。这个和英文的 if(如果就)意思相同,表示如果 if 后面的条件成立的话,就运行下面的处理的意思。下面示例中的 35行就是条件分歧。a = 20 # 为变量 a 赋值代入 20。if a = 10 # 如果 a 为 10 以上的话, print big # 显示 big。end # 分歧结束。在条件不满足时也要进行处理的情况下就使用 else,条件不满足但指定另一个条件的情况下就使用 elsif。a = 7 # 为变量 a 赋值代入 7。if a = 10 # 如果 a 为 10 以上的话, print big # 显示 big。elsif a =

22、5 # 除此之外,如果 a 为 5 以上的话, print medium # 显示 medium。else # 其他, print small # 显示 small。end # 分歧结束。unless end与 if 相反,在条件不满足时才进行某些处理的情况下使用 unless 语句。a = 7 # 为变量 a 赋值代入 7。unless a = 10 # 如果 a 不为 10 以上的话, print small # 显示 small。end # 分歧结束。case end在条件为特定的变量值进行分歧的情况下使用 case 语句会更方便。a = 0 # 为变量 a 赋值代入 0。case a

23、# 分歧开始。when 0 # 当 a 为 0 时, print 零 # 显示 零。when 1 # 当 a 为 1 时, print 壹 # 显示 壹。when 2 # 当 a 为 2 时, print 贰 # 显示 贰。end # 分歧结束。把第一行 a = 后面的 0 改为 1 和 2,然后再来看看分歧的结果吧。当 a 代入 1 时会显示“壹”,代入 2 时会显示“贰”。条件运算符使用符号 ? 和 : 也是运算符形式的条件分歧语句。a = 3p (a = 10 ? big : small) # = small这个示例的意思是,变量 a 的值在 10 以上的话就显示 big, 9 以下的话

24、就显示 small。条件运算符的语法是条件 ? 真时的值 : 伪时的值。上述的条件是 a = 10,真时的值为 big,伪时的值为 small,会根据条件是否满足来决定使用 ? 或 : 的值。当然使用 if 语句也能完成同样的事情。a = 3if a = 10 p bigelse p smallend使用 if 语句的语法会像上面写的那样,但是使用条件运算符语句会更加简洁。该语句在当前的脚本中也使用得很多,所以最好事先记住。重复进行特定的处理就要使用循环。while end在满足特定条件期间进行循环的情况下使用 while 语句。a = 0 # 为变量 a 赋值代入 0。i = 1 # 为变量

25、 i 赋值代入 1。while i = 5 # 当变量 i 为 5 以下时循环开始(重复以下处理), a += i # 变量 a 加上 i 的值。 i += 1 # 变量 i 的值增加 1。end # 循环结束。p a # 显示计算结果。这个示例是求从 1 到 5 这五个数字总和的程序。在这里,变量 i 是用来产生从 1 到 5 这五个数字用的。当然变量名也可以不用 i,一般情况下循环处理用的变量会使用 i、j、k 为名称。那么,这个程序最重要的是 i += 1 这行。如果没有这行 i 的值永远为 1,而 i = 5 的条件也会一直满足,就会成为无限循环。因此,这里每次都向 i 加上 1 使得

26、 i 的值依次变为 2、3、4、5、6 从而使得循环结束。变量 a 和 i 的数值变化,如下表所示。循环a 的值i 的值初始状态011 次后122 次后333 次后644 次后1055 次后156循环 5 次后,在 a 的数值里面实际上进行了 1+2+3+4+5 的计算,i 的值也超过了 5 而执行 end 使得循环结束。然后以 p 命令显示最终 a 的值,就会显示出答案 15。变化范围数值的范围,例如类似于从 1 到 5这样的概念就称为变化范围。1.5上述示例表示从 1 到 5的意思。使用 . 运算符,就能作成一个变化范围。而且,使用 . 运算符也可以。1.5和 . 不同的是不含最后一个数。

27、所以,这种情况实际上表示的是从 1 到 4的意思。for in end想在变化范围表示的范围内循环的情况下使用 for 语句。a = 0 # 为变量 a 赋值代入 0。for i in 1.5 # 变量 i 的值按从 1 到 5 的范围变化, a += i # 变量 a 加上 i 的值。end # 循环结束。p a # 显示计算结果。这个示例和使用 while 语句的示例完全相同,也是求从 1 到 5 这五个数字总和的程序,但比使用 while 的情况更加简洁。在 while 中变量 i 加上 1 表示的是从 1 到 5 的范围,然而在 for 中是用变量 i 按从 1 到 5 的范围的顺序代

28、入来表示。表面看起来不同,但实际上进行的是意思完全相同的处理。Ruby 中有许多语法,循环中也存在各种各样不同的方法。在不同语法使用中,请按照这个示例提示的让编写更简便的方式来思考。实际上,如果理解了条件分歧和循环的话,就能进行大部分逻辑运算了。loop do end未指定循环次数和条件的情况下,也就是想进行无限循环时使用 loop 语句。这个与 while 和 for 语句的性质稍微有所不同,一般情况下没有必要注意。i = 0 # 为变量 i 赋值代入 0。loop do # 循环开始。 i += 1 # 变量 i 的值增加 1。 p i # 显示变量 i 的值。end # 循环结束。这个示

29、例是一边把 i 的值加上 1,一边显示 i 的值的程序,没有结束条件。一旦运行的话就会连续显示 1、2、3。如果这种对话框不断显示的话,就算要结束程序也是不可能的,只能按着 F12 键不放强行关闭对话框,并点击右上方的结束按钮关闭程序。break想中途中断循环就要使用 break 命令。i = 0 # 为变量 i 赋值代入 0。loop do # 循环开始。 i += 1 # 变量 i 的值增加 1。 if i = 5 # 如果变量 i 的值为 5 的话, break # 中断循环。 end # 条件分歧结束。 p i # 显示变量 i 的值。end # 循环结束。上述示例在程序中加上了i 等

30、于 5 的就中断循环的条件。运行该程序,显示 1、2、3、4 就结束了。break 即使在 while 和 for 等其它方法作成的循环中也能使用。next在不中断循环的情况下,跳过本次循环而进入下一次循环时使用 next 命令。for i in 1.5 # 变量 i 的值按从 1 到 5 的范围变化, if i = 3 # 如果变量 i 的值为 3 的话, next # 进入下一次循环。 end # 条件分歧结束。 p i # 显示变量 i 的值。end # 循环结束。运行这个示例,会显示 1、2、4、5。数字的计算和字符串的显示等,能够进行某种处理的被命名的功能称为函数。函数的使用我们一直在使用的 exi

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1