提供: Japanese Scratch-Wiki

このきじは ひらがなのページがありません。ごめんなさい。
() キーが押されたとき
[スペース v] キーが押されたとき
カテゴリ イベント
タイプ ハット

() キーが押されたときブロックイベントブロックハットブロック)は、指定されたキーが押されたときに、下に置かれたスクリプトを実行するブロックである。

このブロックで検出することができるキーは、英語のアルファベット(a~z)、数字キー(0~9)、矢印キー(,,,)、spaceキーである。アップデートで、どのキーが押されてもスクリプトを実行する"どれかの"オプションが追加された。

使用例

このブロックは、さまざまな用途で、プレーヤーからの入力を取得するために使用される。一般的な使用例は以下の通り。

  • 何かを動かす操作
[スペース v]キーが押されたとき
[火災! v]を送る
(5) 回繰り返す
y座標を(5)ずつ変える
end
  • ワープロソフトを作る
[a v]キーが押されたとき
コスチュームを[a v]にする
スタンプ
x座標を(20)ずつ変える
  • アニメーションを開始
[スペース v]キーが押されたとき
[アニメーション開始! v]を送る
[イントロ v]の音を鳴らす
  • マップの移動
[上向き矢印 v]キーが押されたとき
y座標を(15)ずつ変える

別のブロックによる表現

このブロックと似たような機能を、別のブロックで実現する方法は次のとおり。

@greenFlag が押されたとき::events hat
ずっと
<[反応させたいキー v]キーが押された>まで待つ
...
end

注意:「() キーが押されたとき」ブロックがスクリプトの途中で終了するのに対し、上のスクリプトはそうではないので、正確に同じ動作とはいえない。また、「() キーが押されたとき」は、わざと遅延するようにできている(キーを押しつづけたとき、 最初の実行までに少しだけ間があり、そのあともそれよりは短いが遅延が入る) が、このスクリプトはそうなっていない。さらに、「() キーが押されたとき」ブロックは緑の旗が押されていなくても動作する点も異なっている。

下のスクリプトのほうが、「() キーが押されたとき」ブロックにより近い動作をする:

@greenFlag が押されたとき::events hat
ずっと
もし<[反応させたいキー v]キーが押された>なら
[実行 v]を送る
end
end
[実行 v] を受け取ったとき
...