うっほー!ゴッリラだよ!
最近、朝起きるのが辛くなってきたよね(;´・ω・)
おいらは毎朝、アラームを5つセットして何とか起きることができているよ‼

関数についての記事でも話したけど、GameMakerStudio(以下GMS)には、
あらかじめ便利な関数がいつくも用意されているんだ!
今回はその中から、知っておくべき便利な関数を5つ紹介するよ!
関数については、こちらの記事をチェックしてね!
★目次
5つの便利な関数
1. random_range(n1,n2)
記述法:
1 |
irandom_range(n1,n2); |
引数 | 説明 |
n1 | 乱数の最小値 |
n2 | 乱数の最大値 |
戻り値: n1~n2の実数
機能:
irandom_range関数は、引数として与えられた範囲から、ランダムに値を返してくれるよ!
戻り値は、必ずしも整数になるとは限らないんだ!
1 |
random_range(1,100); |
例えばこの例だと、1~100の範囲からランダムに値が返されるけど、
値が56.9のような実数になることもあるから、使用するときは注意が必要だよ!
毎回整数を返してほしい場合は、iを先頭につけるんだ!
1 |
irandom_range(1,100) |
こうすることで、範囲内からランダムな整数値が返されるようになるよ!
この例だと、1~100の範囲内から整数値が選ばれるよ!
GMSでは、デバッグを効率化するためにseed値というものが使われていて、
この関数を呼び出した時、最初の戻り値は毎回同じ値になるんだ!
randomize()関数を使うことで、それを避けることができるよ!
詳しく知りたい人はここをチェック!
2. instance_create_layer(x,y,layer_id,obj)
記述法:
1 |
instance_create_layer(x,y,layer_id,obj) |
引数 | 説明 |
x | x座標値 |
y | y座標値 |
layer_id | レイヤー名、またはid |
obj | オブジェクト名 |
戻り値: 作成されたインスタンスのid
機能:
instance_create_layerは、指定したレイヤー上のx,y座標に、オブジェクトのインスタンスを作成してくれる便利な関数なんだ!
戻り値として、作成されたインスタンスのidが返されるので、変数に代入することもできるよ!
使用例:
1 2 3 4 5 6 7 8 9 10 11 |
//空っぽの変数を宣言
var player; //プレイヤーレイヤー上の座標(100,120)にプレイヤーオブジェクトのインスタンスを作成
//変数プレイヤーに作成した、インスタンスのidを代入
player = instance_create_layer(100,120,"Player",object_player);
//作成したプレイヤーのインスタンス値を変更
player.hp = 3;
player.mp = 10;
player.level = 5; |
オブジェクトやインスタンスについて知りたい人は、この記事をチェック!
3. show_debug_message(string)
記述法:
1 |
show_debug_message(string); |
引数 | 説明 |
string | Output欄に表示される文字列 |
戻り値: なし
機能:
show_debug_messageは、GMSのOutput欄に、引数として渡した文字列を表示してくれるんだ!
他のプログラミング言語で言う所の、printのような働きをするよ!
数値と文字列を同時に表示したい場合は、string関数を使って数値を文字列に変換するよ!
小数点以下2桁以上の数値を表示したい場合は、string_format関数を使う必要があるんだ!
詳しくはこちら
使用例:
1 2 3 4 5 |
var date = 30;
var ty = "よんでくれてありがとう!";
show_debug_message("うっほー!");
show_debug_messge("今日は10月"+string(date)+"日だよ!");
show_debug_message(ty); |
実行結果:
4. instance_destory()
記述法:
1 2 3 |
instance_destory();
instance_destory(id);
instance_destory(id,boolean); |
引数 | 説明 |
id | インスタンスのid/オブジェクト名 |
boolean | 消去イベントを実行するかどうか |
戻り値: なし
機能:
- idを渡した場合:
そのidを持ったインスタンスをゲームから削除 - オブジェクト名を渡した場合:
指定したオブジェクトの全インスタンスを削除 - 何も渡さない場合:
関数を呼び出したインスタンスを削除
二つ目の変数は、True/Falseを渡すことによって、インスタンスが消去された時に
呼び出される、Destoryイベントを実行するか指示することができるよ!
何も記述しない場合は実行されるよ!
5. keyboard_check()
記述法:
1 2 3 |
keyboard_check(key);
keyboard_check_pressed(key);
keyboard_check_released(key); |
引数 | 説明 |
key | 入力を確認したいキー |
戻り値: 真偽値
機能:
keyboard_checkは、指定したキーが押されている間、Trueの値を返すんだ!
- keyboard_check():
指定したキーが押されている間、Trueの値を返すよ! - keyboard_check_pressed():
指定したキーが押された時、Trueの値を返すよ!
この関数は一度だけ実行され、もう一度呼びだされるためには一度キーを
離す必要があるんだ! - keyboard_check_released():
指定したキーが離された時、Trueの値を返すよ!
この関数は一度だけ実行され、もう一度呼び出されるためには一度キーを
押しなおす必要があるんだ!
使用例:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
if(keyboard_check(vk_left))
{
show_debug_message("左キーが押されているよ!");
}
if(keyboard_check_pressed(vk_left))
{
show_debug_message("左キーが押されたとき、一度だけ表示されるよ!");
}
if(keyboard_check_released(vk_left))
{
show_debug_message("左キーが離されたとき、一度だけ表示されるよ!"); } |
まとめ
今回は、よく使うことになる便利な関数を5つ紹介したよ!
GMSには、他にも沢山の便利な関数が用意されているから、
一度公式サイトの関数リストに目を通してみてね!
この関数って何?どう使うの?といった疑問があれば、
いつでも僕@hellomanakiに質問してね!
