[Kotlin写游戏教程五]使用Text处理文字

[Kotlin写游戏教程五]使用Text处理文字

作者:丫丫    浏览次数:481    2021-06-15 15:23:00

游戏中除了会有图片呈现,有一些文字在上面也是不可或缺的,虽然好的设计是不用文字言语就能让玩家理解,但是有时一些简单的文字辅助,还是让玩家比较快能进入状况。而且游戏里一些像是玩家名称,或是一些程式版本号码,也是由文字组成,因此文字的呈现还是必要的存在(虽然知道有的设计会连文字都直接用图片替代),这一回就来介绍KorGE里的Text给大家了。

在Splash.kt加上提示字串
不知道大家有没有印象,很多游戏出现进版画面后,其实会等玩家主动点及萤幕才真正进入游戏?所以这次我们也要来练习这样的做法,当进入到Splash时,我们也加一个字串来提示玩家要点击画面,才能继续进到下一页。
试着在程式里头加上下列的文字!

text(“Tap to Start”)
执行结果"Tap to Start"的文字出现在左上角了!

摆放Text位置
不过位置放在左上角实在是无法引人注意,还可能会被忽略掉,我们试着放在正中间,然后离下面高度1/4的位置,视觉上会比较好看到。

text(“Tap to Start”){
position((image.scaledWidth-scaledWidth)/2, (image.scaledHeight - image.scaledHeight/4))
}

加大Text跟加上颜色
嗯嗯,位置放对了,不过字体有点小,而且预设白色不是很明显,我们试着改大小跟换个蓝色的字来练习。

text(“Tap to Start”){
textSize = 30.0
color = Colors.BLUE
position((image.scaledWidth-scaledWidth)/2, (image.scaledHeight - image.scaledHeight/4))
}
执行后,加大跟换颜色的字体更大又更明显了!

触发onClick进到下一场景
既然我们都写了Tap to Start,那就要真的来实作按下去就会跳进下一个Menu画面了,我们在Day03的范例就有用按钮去操作切换场景啰!不过KorGE所有的view物件都有onClick的功能,就是触发点击事件,所以这里是拿Text再来做一次练习。

text(“Tap to Start”){
textSize = 30.0
color = Colors.BLUE
position((image.scaledWidth-scaledWidth)/2, (image.scaledHeight - image.scaledHeight/4))
onClick {
launchImmediately { sceneContainer.changeTo

() }
}
}
当然不想要触发的范围只限制在Text上,你可以直接将onClick你放在Scene里,这样只要点到任何视窗上的范围就会进到Menu了!

override suspend fun Container.sceneInit() {
val image = image(resourcesVfs[“mylogo.png”].readBitmap()) {…}
text(“Tap to Start”){…}
onClick {
launchImmediately { sceneContainer.changeTo

() }
}
}
总结
这回的Text介绍应该轻松简单就学起来了(跟上一篇Image比起来),大家也可以试着把©copyright或是版本号放在进版画面,让自己的进版画面真的有这么一回事的感觉唷,这里就交给大家自行练习了!

上一篇:[Kotlin写游戏教程四]使用Image处理图片
下一篇:[Kotlin写游戏教程六]KorGE使用Font改变文字风格