第一范文网 - 专业文章范例文档资料分享平台

RMXP初初级脚本教程

来源:用户分享 时间:2025/5/25 4:29:48 本文由loading 分享 下载这篇文档手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:xxxxxxx或QQ:xxxxxx 处理(尽可能给您提供完整文档),感谢您的支持与谅解。

self.contents.font.color = actor.hp == 0 ? knockout_color : actor.hp <= actor.maxhp / 4 ? crisis_color : normal_color

【↑这一句很长也很绕,是关于hp字符串颜色的判定,在hp小于一定数值的时候,用不同的颜色来描绘。】

self.contents.draw_text(hp_x, y, 48, 32, actor.hp.to_s, 2)

【↑描绘角色的当前hp(变量actor.hp,加了.to_s表示转换为字符串,最后那个2表示靠右端对齐)。要注意的是,在这里用到的x坐标并不是你在

Window_status里赋值的那个x坐标,而是在上面重新计算过的hp_x。也就是说在Window_status里面你写了draw_actor_hp(@actor, 96, 112, 112)之后,它实际描绘的坐标是x + width – 48,即是96 + 112 - 48 = 160。……= =特多此一举是不是?把hp_x直接改成x就能更清静了。其实在运用熟练之后,你完全可以改掉默认的描绘方式使用更简洁的描绘法。】 # 描绘 MaxHP if flag

【↑条件分歧,如果flag变量成立(判断是否成立见上面的计算过程),即指有地方给你描绘maxhp的时候】

self.contents.font.color = normal_color 【↑给Maxhp设定文字颜色】

self.contents.draw_text(hp_x + 48, y, 12, 32, \

【↑描绘夹在当前HP和MAXHP之间的那个斜杠。这里就是自定义的字符串了,注意这里的双引号和对齐方式,是居中对齐。同样它的x坐标也是那个需要重计算的hp_x……】

self.contents.draw_text(hp_x + 60, y, 48, 32, actor.maxhp.to_s)

【↑描绘最大hp数值。同样因为actor.maxhp这个变量是一数字所以要用.to_s转换。】 end end

练习题:

把在def draw_actor_hp里面的这两段 if width - 32 >= 108 hp_x = x + width - 108 flag = true

elsif width - 32 >= 48 hp_x = x + width - 48 flag = false end

用#号注释掉。把下面的if flag用#号注释掉,再注释掉一个end。然后把括号里面的width=xxx也删掉。(去掉判断maxhp/maxsp是否有位置的这个宽度系数)将hp_x全改为x。

然后调整各个字符串的坐标,确保无论你的hp和maxhp是三位数还是四位数,在菜单里都能正常和完整地显示出来。(必要的时候可改文字大小,具体改法见下面的教学)

def draw_actor_sp进行同理修改。

提示:这样改过之后,draw_actor_hp后面括号里除了actor外就只有两个数字

了,在Window_Status以及其他draw_actor_hp的地方也要记得进行更正。(利用好全局搜索)

3、文字颜色与大小的修改(附加)

核心语句:self.contents.font.size = 字号/ self.contents.font.color = Color.new(R,G,B,强度)

这两句是依附于self.contents.draw_text的,用来更改你接下来要描绘的文字的大小和属性。Size那句不用说了,直接在后面写上字号即可。默认的字号是22号,可以改大改小都没问题。当你改小之后,如果在

self.contents.draw_text保持原本的宽高,那么字间距也会拉大。而且要注意的是一旦在哪里加上self.contents.font.size = 20的话,下面所有描绘的字都会变成20号。想恢复的话就要再补一句self.contents.font.size = 22才行。

文字颜色的话,在Window_Base里面应该能看到很多。

self.contents.font.color = normal_color是最常见的一句,但是normal_color又是什么呢?进行全局搜索之后你可以看到它是这么被『种』出来的: def normal_color

return Color.new(255, 255, 255, 255) end

Color.new(xxx,xxx,xxx,xxx)在这里就是关键语句了。它是定义颜色用的。括号里的四个数字分别代表R,G,B数值和颜色强度。如果要特定一种颜色该怎么设呢?有个简单的方法。打开你的数据库,选择―动画‖,随便在―SE与闪烁时机‖那里点一下叫出窗口,选择―对象‖。然后你可以通过拖动滑块来看到颜色的变化,而右边的几个数字正是它的RGB数值。强度变量看得不够直观,你可以将其理解成透明度。也就是说第四个数字越小,透明度越低。

确定了你需要的颜色后,把这几个数字填入Color.new后面的括号里即可。需要改变文字颜色的时候,即可直接用self.contents.font.color =

Color.new(R,G,B,强度)来进行定义了。同样,一旦设好颜色,下面的所有描绘的数值颜色都会改掉了。所以每次只要想变颜色,必须加这么一句进行定义。由于normal_color这个变量已经定义过是白色,你想要白色字的时候,直接写上self.contents.font.color = normal_color就好了。

练习题:找到system_color的『种』点,并更改其颜色。

到此,比较基础的字符串和数字的修改就讲完了。

其实废话了这么多,需要强调的依然是,在更改数字的时候,需要搞清楚数字指代什么,在游戏里显示出来的样子是什么。这一章所讲的内容看似很少,但关键在于举一反三,知道向回追溯。接下来要做的就是发散思维,只要看到带着装有数字的括号,就把前面的语句拿来查查,看看这些数字原本代表的参数为何,然后尝试进行修改。

改改脚本第二章:用默认的变量与开关做分歧

如果要把RM游戏比作一个人的话,开关与变量就像它的骨骼一样重要。它们是连接事件、转换剧情和构筑数据的重要组成部分,这一点在熟悉了使用基本功能制作游戏之后就能很明显地看出来。关于开关、变量和条件分歧的基本用法在《手把手教你入门RMXP》里已经教过,这里我默认大家都已经掌握了它们的用法。接下来就将教授如何将它们也充分运用到脚本之中,因为对于不太了解脚本的新手而言,它们是最方便的用于改良系统的现成道具。

【脚本里的开关与变量】

1、开关的基本操作

在RMXP里面用事件操作开关是很简单的事情,只要控制它们开和关就可以了。不管是单独一个开关还是许多个开关,基本上涉及的操作也就是这两种——单个开关的On和Off与一定范围内所有开关的On与Off。

在脚本里让单个开关『开』和『关』也是很简单的,只要一句指令就可以解决:

$game_switches[开关编号] = true/false

其中前面的$game_switches就表示『全局开关』这东西,而后面的中括号里则要写上你想要开关的编号——比如1号开关就是$game_switches[1]这样。等号的含义是『赋值』,给开关赋True或者False的『值』,就等同于让开关On或者Off。比如说$game_switches[1] = true,意思就是『打开1号开关』。False则是关闭它。通常情况下如果你打开了一个新工程没有对开关做任何指令的话,所有的开关都是默认False的。(可以在测试游戏时按F9进入Debug模式看到)

让开关打开或关闭的脚本指令和事件的开关操作一模一样,可以在脚本编辑器里写,也可以在RMXP的事件指令第三页最后一个『脚本』里写。如果你在事件指令中写了这句的话,就可以用它替代默认的事件开关操作指令——不过一般情况下,既然都用了事件操作也就没必要以脚本形式来写这句了,这样的语句多数情况下是在脚本编辑器里用到。

另外,除了单独操作一个开关之外,也可以用for循环语句同时操作一定范围内多个开关。比如说,就像事件指令里同时打开1~20个开关那样,用脚本也是可以做到的。基本语句是:

for i in a..b(a与b分别表示你的范围的最小值与最大值,注意这里的省略号不是三点是两点。)

$game_switches[i] = true/false (与打开单个开关的语句相同,不过中括号里填的是i不是具体数字) end

在这三行指令里,for i in a..b 是指『所有在a与b范围内的数字i』,第二句则是表达『编号为数字i的开关都要On/Off』,第三句End是负责给这个循环收尾的完结语句。简单来说这是一个for循环,执行时脚本会挨个把所有符合条件的i号开关都打开(在这里即是指a到b之间的i),然后End。 所以,上面提到的同时打开1~20号的所有开关,用脚本就可以写成

for i in 1..20

$game_switches[i] = true end

这样1~20号开关就会全部打开,和事件指令的操作是一模一样的。

只要掌握这两种用法,你就可以在脚本编辑器里自由地打开或关闭任何一个或一组开关。

搜索更多关于: RMXP初初级脚本教程 的文档
RMXP初初级脚本教程.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.diyifanwen.net/c16zzv4xzqu0fvam2h1ov_4.html(转载请注明文章来源)
热门推荐
Copyright © 2012-2023 第一范文网 版权所有 免责声明 | 联系我们
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:xxxxxx 邮箱:xxxxxx@qq.com
渝ICP备2023013149号
Top