今天我们要学习的是文字变量,了解什么是Flag及lsp的相关指令。
也叫文字列变量,用语输入文字列的变量
就像这样
$8
文字变量就像“今天要去看的电影是(文字变量)”这样,可以在文章中变化的文字部分。
变数的编号
数字变量和文字变量编号可以是同样的,重复使用也可以。
%7和$7是完全不同的变量。
文字变量,也是分内部变量和外部变量,变量范围,使用方法和之前所说的相同。
(或者说文字变量和数字变量内部变量和外部变量是相同的)
变量用途
用0与1判断是否拥有物品(Flag处理)
数字变量中输入0(无)1(有)的数值,进行到需要判断的时候开启变量确实数值进行判断。
比如说“是否按下开关”
结果
(0)什么也没发生。
(1)出现了暗道。
“是否放过敌人”
结果
(0)敌人死去了,主角遇到危险时无人帮助他。
(1)敌人在主角遇到危险时帮助了他。
这就是被称为Flag判断的做法
可能有的人会说,文字变量有什么用呢?
它的用途
根据不同情况可以变化成不同的台词。
在游戏中,经常有所持道具不同的情况,当台词里出现了道具名称时可以使用文字变量。
使用方法
mov $5,"下午好!"
mov是命令本体,$5是变量名称。
表示将“下午好!”的文字列代入到$3中,需要注意的是文字两边一定要加上这个"",它表示引号中的文字都会被当作文字串。
先举个例子,
;$S1280,720
*define
effect 3,10,200
clickstr "。!",2
game
start
bg "bg/bg01.png",3
mov $4,"冬川心"
$4说我一定会保护你的!
click
end
但是,半角文字无法显示,如果直接写出来,显示出来的东西可能是乱码,如果数值是偶数个数,可以正常显示,奇数个数则不能
当想要将数字变量的数值显示在游戏画面中时:
①先判断数字变量数值之后于文字列中代入对应的全角文字。
②使用将数值转成全角文字的itoa2指令。
itoa2命令
此命令可以将数值(如果直接表示则会显示半角文字)转成全角文字,代入到变量中去。
格式及参数
itoa2 文字变量,数值
举个例子
mov %5,2022;(表示将2022数值代入到变量%5中)
itoa2 $2,%5;(表示将$5里面的数值2022转换成全角文字的2022,代入到$2中)
$2;在游戏画面上显示$2
;游戏画面上会显示2022
————————————
不常用的东西,如果显示立绘不是用ld,可以不看以下这部分。看下一部分
这个人物立绘显示使用的是ld命令
现在说点有关lsp的东西,
改变人物立绘与其他lsp的重叠顺序
在游戏制作中,想要让女主角后面有孔明灯飞上天空的画面,但孔明灯的图像出现在女主角的人物立绘前面就让人困扰。
人物立图的预设范围是0~25号,26号以上的就会显示在人物立绘的后面。
我们可以更改人物立绘的范围,需要使用
humanz命令,请注意,此命令只能在定义区使用。
格式
humanz 数值
举个例子
*define
humanz 70
game
start
humanz是命令本体
70是指定人物立绘的范围。
表示在0~70号的lsp会显示在人物立绘前面,70号之后则在人物立绘后面。
——————————
下一部分
拓展的lsp命令
在ns中追加了新的lsp命令。
特点是可以对图像进行放大,缩小,旋转,左右上下翻转等等。
它和普通的lsp不同,图像的起点位置并不是左上角而是中心。
扩大率数值是以整数方向扩大缩小,当输入minus(它的符号是-就是说实际应用要写成-数值,而不是写成minus数值)时,图像就会镜像翻转,当输入100时为等比例(也就是图像大小不变)翻转显示。
回转角的单位是度(°),可以输入0~360的数值,回转方向为逆时针方向。
命令格式
lsp2
lsp2 编号,图像,中心坐标X,中心坐标Y,X轴扩大率,Y轴扩大率,回转角度(默认为α值,省略则为255)
举个例子
lsp2 7,":a;tupian.png",640,360,150,140,45
此命令图片是显示状态。
lsph2
另一个是以隐藏状态载入图像,它就是
lsph2。
命令格式
lsph2 拓展的lsp编号,图像,中心坐标X,中心坐标Y,X轴扩大率,Y轴扩大率,回转角度(默认为α值,省略则为255)
例子
lsph2 7,":a;tupian.png",640,360,150,140,45
和lsp2几乎相同,只是多了一个H,就像lsp命令和lsph命令一样。
csp2
它的清除指令是csp2
格式
csp2 编号
例子
csp2 2
csp -1是清除所有载入及显示的lsp2
msp2
拓展功能的移动图片命令
msp2
格式
msp2 拓展的lsp编号,中心X坐标增减数值,中心Y坐标增减数值,X轴扩大增减数值,Y轴扩大增减数值,回转角度增减数值,不透明度数值(省略为255)
举个例子
msp2 1,20,50,-10,30,7
msp2是命令本体。
1是拓展的lsp2的号码。
20是X轴的坐标增减数值,当想要像相反的方向移动时请输入-20并且加上minus符号的数值。
50是Y轴的坐标增减数值,反方向移动时方法同上。
-10是X轴方向扩大率的增减数值。
30是Y轴方向扩大率的增减数值。
当扩大率的数值经过减法变为负数时,图像就会镜像翻转显示。
7为回转角度的增加数值,数值是正数是逆时针旋转,负数则是顺时针旋转。
当使用这条命令时,必须要使用print刷新命令才能使其显示。
amsp2
使用绝对位置的移动命令
msp2 拓展的lsp编号,中心X坐标增减数值,中心Y坐标增减数值,X轴扩大增减数值,Y轴扩大增减数值,回转角度增减数值,不透明度数值(省略为255)
举个例子
amsp2 1,200,500,-100,300,70
amsp2是命令本体。
1是拓展的lsp的号码。
200是X轴坐标的绝对值。
150是Y轴坐标的绝对值。
此命令使用的是绝对坐标,直接输入了X,Y的坐标值,图像会直接显示在这个坐标的位置。
-100是X轴的绝对数值。
300是Y轴的扩大率绝对数值。
当扩大率为minus数值时,图像会镜像翻转显示,70是旋转角度的数值,根据输入的数值进行逆时针旋转。
这个命令也需要使用print刷新画面命令才能显示出来。
vsp2
它的作用是暂时隐藏或显示的命令
可以将拓展的lsp命令切换为隐藏模式,显示模式。
格式
vsp2 拓展的lsp编号,显示(1)或隐藏(0)
举个例子
vsp2 1,0
vsp2是命令本体。
1是拓展的lsp号码。
0代表Flag,当数值为1时是显示模式,为0时是隐藏模式。
使用这条命令也是要使用print命令的。
allsp2hide
将拓展的lsp全部暂时隐藏或显示的命令。
格式与例子一样
allsp2hide;(暂时隐藏全部的拓展lsp)
allsp2resume(显示全部隐藏的拓展lsp)
好了,今天的教程结束了,也很多,没看懂多看几遍,有什么疑问可以在评论区留言。
「艾尔登法环」梅琳娜手办开订 立体手办▪
万代「艾尔登法环」白狼战鬼手办开订 立体手办▪
「夏目友人帐」猫咪老师粘土人开订 立体手办▪
「五等分的新娘∬」中野三玖·白无垢版手办开订 立体手办▪
「海贼王」乌索普Q版手办开订 立体手办▪
良笑社「初音未来」新手办开订 立体手办▪
「黑岩射手DAWN FALL」死亡主宰手办开订 立体手办▪
「盾之勇者成名录」菲洛手办登场 立体手办▪
「魔法少女小圆」美树沙耶香手办开订 立体手办▪
「咒术回战」七海建人粘土人登场 立体手办▪
「五等分的新娘」中野二乃白无垢手办开订 立体手办▪
「为美好的世界献上祝福!」芸芸粘土人开订 立体手办▪
「公主连结 与你重逢」六星可可萝手办开订 立体手办▪
「女神异闻录5」Joker雨宫莲手办开订 立体手办▪
「间谍过家家」约尔・福杰粘土人登场 立体手办▪
「街角魔族 2丁目」吉田优子手办开订 立体手办▪
「火影忍者 疾风传」旗木卡卡西·暗部版粘土人登场 立体手办▪
「佐佐木与宫野」宫野由美粘土人开订 立体手办▪
「盾之勇者成名录」第2季拉芙塔莉雅手办开订 立体手办▪
「咒术回战」两面宿傩Q版坐姿手办开订 立体手办▪
「DATE·A·BULLET」时崎狂三手办开订 立体手办▪
「狂赌之渊××」早乙女芽亚里粘土人开订 立体手办▪
「魔道祖师」魏无羨粘土人开订 立体手办▪
「新·奥特曼」奥特曼手办现已开订 立体手办▪