実装する内容
本記事では下記の内容について、実装コードとその解説を紹介します。
- 画面にテキストを表示する
- 動的にテキストを変更する
画面にテキストを表示する
実装コード
import pyxel
class App:
def __init__(self):
pyxel.init(150, 150)
pyxel.run(self.update, self.draw)
def update(self):
pass
def draw(self):
pyxel.text(50, 50, "Hello World!", 2)
App()
実行結果
解説
文字を表示している関数はpyxel.text()です。
pyxel.text()を使用するための引数は下のようになります。
- 第1引数:x座標
- 第2引数:y座標
- 第3引数:表示するテキスト(文字列)
- 第4引数:テキストの色
実装コードの例では、
『x座標:50、y座標:50の位置に、Hello World!の文字を2の色で表示する』
という意味になります。
色の番号については、pyxelの公式サイトのカラーパレットを参照してください。
0~15の16色を使用することができます。
テキスト表示の注意点として、日本語は使用できません。
使用できるのは、
- 英数字
- 記号
です。
動的にテキストを変更する
実装コード
import pyxel
class App:
def __init__(self):
pyxel.init(150, 150)
pyxel.run(self.update, self.draw)
def update(self):
count = pyxel.frame_count % 60
if count < 30:
self.text = "Pyxel"
self.color = 3
else:
self.text = "Game"
self.color = 4
def draw(self):
pyxel.cls(0)
pyxel.text(50, 50, self.text, self.color)
App()
実行結果
解説
テキストを動的に切り替えるには、変数を使ってpyxel.text()の引数に入れましょう。
今回の実装コードでは、30フレーム毎にテキストの文字列と色を変えるようにしました。
テキストを切り替える点で気をつけることは、表示させる前に画面をクリアすることです。
でないと、前に表示していた文字の上からさらに次の文字が表示されて、何が書いているかわからなくなります。
今回は、文字の位置を固定していましたが、変数を使って同じように実装すれば、様々な場所に文字を表示をすることができます。
コメント