提供:Japanese Scratch-Wiki

このきじは ひらがなでよめません。ごめんなさい。編集者向け:作成する
現在の ()
現在の [分 v]
カテゴリ 調べる
タイプ
追加 Scratch 2.0

現在の ()ブロック調べるブロック値ブロック)は、指定した引数に応じて、現在のローカルタイムの年、月、日、曜日、分、秒を返す。このブロックが返す値は、ユーザーが使用しているコンピューターの内部時計に基づいており、24時間方式となっている。Scratch 2.0α版では、このブロックは「ローカル ()」という名前であり、ユーザーのローカル時間を使うことがよりわかりやすかった。

現在の ()ブロックのオプション

Scratch 2.0でこれまでに追加された時間関係のブロックは2つあるが、このブロックはそのうちの1つである。もう1つは 2000年からの日数ブロックであり、こちらは2000年1月1日からの経過日数を返す。

使用例

このブロックは次のように使用できる:

  • 時計やカレンダーをつくる
@greenFlag が押されたとき::events hat
ずっと
((現在の [時 v]) と ([:] と ((現在の [分 v]) と ( [:] と (現在の [秒 v]))))) と言う
Warning
メモ:
時間帯によって背景を変えたいときは、次のスクリプトを使う。背景のラベルを「朝」「昼」「夜」に変更しておくのを忘れないように
@greenFlag が押されたとき::events hat
ずっと
もし <<(現在の [時 v]) > [5]> かつ < (現在の [時 v]) < [12]>>  なら // 朝だと思う時間を自由に指定する。この場合は6〜11時
背景を (朝 v) にする
でなければ
もし <<(現在の [時 v]) > [11]> かつ < (現在の [時 v]) < [18]>>  なら // 昼だと思う時間を自由に指定する。この場合は12〜17時
背景を (昼 v) にする
でなければ
背景を(夜 v) にする // これらは現在の時間にもとづいて決まる。この場合、夜になるのは、18〜5時
end
end
((現在の [時 v]) と([:] と ((現在の [分 v]) と ([:] と (現在の [秒 v]))))) と言う
  • 指定した日時の前または後では、一部の機能を利用できないようにする
もし <(現在の [年 v]) < [2015]> なら
  [金額 v] を (1000) ずつ変える
でなければ
  [申し訳ありません。この機能は2015年以降は使用できません。] と言う
end
  • ハイスコア一覧にタイムスタンプを追加する
( ( ( ( ( ( ( [日時:] と (現在の [日 v])) と [:]) と (現在の [時 v])) と [:]) と (現在の [分 v])) と [ハイスコア:]) と (点数)) を [ハイスコア一覧 v] に追加する
Warning
メモ:
返される値が10より小さいときは、時、分、秒ブロックは2桁ではなく1桁の数値を返す(例:「05:09:03」 は「5:9:3」と表示される)

これを修正するには、次のスクリプトを使えばよい:

もし <(現在の [時 v]) < (10)> なら
 [時 v] を ((0) と (現在の [時 v]))にする
でなければ
 [時 v] を (現在の [時 v])にする
end
もし <(現在の [分 v]) < (10)> なら
[分 v] を ((0) と (現在の [分 v]))にする
でなければ
[分 v] を (現在の [分 v])にする
end
もし<(現在の [秒 v]) < (10)> なら
[秒 v] を ((0) と (現在の [秒 v]))にする
でなければ
[秒 v] を (現在の [秒 v])にする
end
 ( (時) と ([:] と ((分) と ([:] と (秒)))))と言う

現在の曜日

「現在の曜日」を使うときは、「月曜日」などと表示されない。そのため、「⚪︎曜日」とのように表示させるためには以下のプログラムが必要である。

もし <(現在の [曜日 v]) = (1)> なら
[現在の曜日 v] を [日曜日] にする
でなければ
もし <(現在の [曜日 v]) = (2)> なら
[現在の曜日 v] を [月曜日] にする
でなければ
もし <(現在の [曜日 v]) = (3)> なら
[現在の曜日 v] を [火曜日] にする
でなければ
もし <(現在の [曜日 v]) = (4)> なら
[現在の曜日 v] を [水曜日] にする
でなければ
もし <(現在の [曜日 v]) = (5)> なら
[現在の曜日 v] を [木曜日] にする
でなければ
もし <(現在の [曜日 v]) = (6)> なら
[現在の曜日 v] を [金曜日] にする
でなければ
[現在の曜日 v] を [土曜日] にする
end
end
end
end
end
end

関連項目

Cookieは私達のサービスを提供するのに役立ちます。このサービスを使用することにより、お客様はCookieの使用に同意するものとします。