ゲームではどのボタンが押されているのかを、プログラムが判断し、そのキーの値によってキャラクターを動かしたり、ゲームを操作していきます。
今回は岐阜県恵那市からゲームプログラミング講座を受講しており、そういったイベント発生、取得などを学んでいる生徒様の受講事例を紹介します。
恵那市からプログラミング教室でPythonを勉強中!
そもそもイベントとは、ソフトウェアに対して使う人が、キーボードやマウスを操作することをいいます。
たとえばゲーム画面のキャラクターをクリックしたときには、
キャラクターに対し、クリックイベントが発生した
といえます。どのようなイベントが発生したのかを調べたり、知ることを
イベントを「受け取る」や「取得する」と表現することが多いです。
今回の恵那市の受講生様もそういった基本的な言葉の意味からしっかりと学ばれていました。
Pythonでイベントを作成・取得しています
Pythonでイベントの発生を受取るときにはbind()というメソッドを利用できます。今回入力したプログラムを見ていきましょう。
import tkinter
root = tkinter.Tk()
root.title("キーを取得")
root.bind("<KeyPress>",key_down)
root.mainloop()
このプログラムを実行すると、キーボードで押した際に実行する関数を指定できます。
そのコードに加えて、
key = 0
def key_down(event):
□□□□global key
□□□□key = event.keycode
□□□□print("KEY",str(key))
上記のプログラムを追加し、押したキーのキーコードを取得し、画面に表示させました。
【bindのメソッドの記述方法】
bind("<イベント>", イベント発生時に実行する関数名)
bindで取得できるイベント例
<KeyPress> か<Key> | キーをおしたかどうか |
<KeyRelease> | キーを離した |
<Motion> | マウスポインタを動かした |
<ButtonPress>か<Button>
例:<Button-1>→左ボタン、<Button-2>→真ん中ボタン、<Button-3>→右ボタン |
マウスのボタンをクリックした |
def key_down(event):と書いたところの引数であるeventでイベントを受取っています。
このevent部分は好きな名前に変えることができます。
このあたりの細かいところで、なかなかわからないな・・・というところも、プログラミング教室担当の講師に確認しながら学ぶことで、スムーズに学習を進めていらっしゃいました。
このイベントを取得するプログラムを学び、ゲームのキャラクターを操作できるプログラムを作成していきます。
Pythonの主なキーコード一覧
windowsのパソコンのキーコード方向キー(上、下、右、左) | 38、40、37、39 |
エンターキー | 13 |
スペースキー | 32 |
キーコードによって処理を分けることもできますので、ここではキーコードというものがあるということをお伝えしたうえで、そのコードによって処理を分ける方法も体験していただきました。
恵那市からもプログラミング教室の無料体験受付中!
個別指導で一人ひとりに合わせた受講方法で学べる教室なので、
恵那市をはじめ岐阜県内の各所から選ばれております。
当プログラミング教室の特徴については、教室の特徴についてをご覧ください。
岐阜県内では国道21号線沿いの店舗と、JR岐阜駅直結の店舗と2店舗ございますので恵那市から受講される場合もお選び頂けます。
恵那市からプログラミング教室を受講するメリット
恵那市からプログラミングを受講するメリットは、将来役立つスキルを身につけられることです。
家電製品をはじめ、車やスマホなど、プログラムが関わっていないものも少なくなってきており、プログラム自体が世の中を動かす仕組みにもなってきています。
だからこそ、プログラミングを今学習することが将来の可能性を伸ばすことにつながります。