Discuss Scratch
- Discussion Forums
- » 日本語
- » 意外と知られていないテクニック集
- hamuumakara
-
Scratcher
3 posts
意外と知られていないテクニック集
[上矢印 v] キーが押されたとき
もし <<[上矢印 v] キーが押された> ではない> なら
y座標を (10) ずつ変える
end
- yuhake_sub
-
Scratcher
6 posts
意外と知られていないテクニック集
その月限定のプログラムを作りたいとき
⚑ がクリックされたとき
もし <(現在の [月 v]) = [1から12までの数字]> なら
[ここに何かを入れる] と言う
end
Last edited by yuhake_sub (April 1, 2024 23:54:58)
- nposss
-
Scratcher
100+ posts
意外と知られていないテクニック集
(A)≦(B)::operators booleanを再現するには
<(A)<(B)>または<(A)=(B)>::operators booleanよりも
<(A)>(B)>ではない::operators booleanの方が効率的
- inoking
-
Scratcher
1000+ posts
意外と知られていないテクニック集
ちなみに、Scratch では短絡評価を行われないため上記は正しいのですが(A)≦(B)::operators booleanを再現するには<(A)<(B)>または<(A)=(B)>::operators booleanよりも<(A)>(B)>ではない::operators booleanの方が効率的
短絡評価が行われるプログラミング言語では
A < B の出現率が高い場合、以下は前者のほうが早いです。
<(A)<(B)>または<(A)=(B)>::operators booleanよりも
<(A)>(B)>ではない::operators boolean
- 5656godzilla
-
Scratcher
15 posts
意外と知られていないテクニック集
#4016マウスホイールが上に転がされるとy座標を10ずつ変えるプログラムです。
それは何をするプログラムですか?
- tsubuanman
-
Scratcher
100+ posts
意外と知られていないテクニック集
https://scratch.mit.edu/projects/536863944
https://scratch.mit.edu/projects/958298397
これらのプロジェクトは、
前者後者は私の友人が作ったものです。
これらのプロジェクトは、接触面の判定を壁で管理したり、コスチュームで判断したりしています。
しかし、私は新たにコスチュームやスプライトを追加するのは手間だと感じたので前者のプロジェクトをリミックスしてこのプロジェクトを作ってみました。
私の作ったこのプロジェクトでは上下左右の4方向に対応するようにコードを作り、壁に接触した際に座標をわずかに移動させて接触面の判定を管理しています。
欠点として挙げられるものは、
https://scratch.mit.edu/projects/958298397
これらのプロジェクトは、
もし端に着いたら、跳ね返るというブロックを使用せずに跳ね返る挙動を再現している、ないしその要素が含まれているものです。
前者後者は私の友人が作ったものです。
これらのプロジェクトは、接触面の判定を壁で管理したり、コスチュームで判断したりしています。
しかし、私は新たにコスチュームやスプライトを追加するのは手間だと感じたので前者のプロジェクトをリミックスしてこのプロジェクトを作ってみました。
私の作ったこのプロジェクトでは上下左右の4方向に対応するようにコードを作り、壁に接触した際に座標をわずかに移動させて接触面の判定を管理しています。
欠点として挙げられるものは、
- 変数が必要
- 斜面に対応していない
- 自由な回転に対応していない
- 冒頭のブロックと全く同じ挙動はしない
Last edited by tsubuanman (Feb. 16, 2024 13:41:45)
- medal-kuraharu
-
Scratcher
14 posts
意外と知られていないテクニック集
@greenflagがクリックされたとき
[任意の文字列1] と聞いて待つ
[ 変数1 v] を (答え) にする
[任意の文字列2] と聞いて待つ
[ 変数2 v] を (答え) にする
([あなたの回答は] と ((変数1) と ([と、] と (変数2)))) と言う
回答を保存できる
(常識かもしれません)
(回答のところ1が抜けていたため訂正)
(#4026 の意見を受け訂正)
Last edited by medal-kuraharu (June 28, 2024 04:30:26)
- KRTSD0823
-
Scratcher
500+ posts
意外と知られていないテクニック集
ブロックプラグインを理解していない人がしがちな事(偏見?)
実際かなり見てきているので偏見よりは個人の感想?みたいな感じです
となっており、この vが選択するマーク?を表示しています。
ですが、このvを謎のvだと勘違いしてしまい、とりあえず全て消しているような気がします。
しかし!これがないと入力欄のような感じで、白くなってしまいます。見た目的にも少し変
実際かなり見てきているので偏見よりは個人の感想?みたいな感じです
[... v] を [...] にするなどの、選択部分があるブロックの中身は
[scratchblocks]
[... v] を [...] にする
[/scratchblocks]
ですが、このvを謎のvだと勘違いしてしまい、とりあえず全て消しているような気がします。
しかし!これがないと入力欄のような感じで、白くなってしまいます。見た目的にも少し変
[...] を [...] にするもしvを抜いているようであればこれからは付けてみてください。ちなみに、vの前には空白が必要です。
- Yumukkuri2023
-
Scratcher
15 posts
意外と知られていないテクニック集
もうほかの人が言ってたらすみません。
( all) 番目を [list v] から削除するを使うと「リストをすべて削除する」のブロックと同じ動作をします。
- kouhei-1
-
Scratcher
1000+ posts
意外と知られていないテクニック集
[all] 番目を [list v] から削除する //便宜的に①と呼びますでないとよくわからないので上のブロックで解釈しますが、
[list v] のすべてを削除する :: list //便宜的に②と呼びますを使うよりも①のブロックを使用することによって起こる良いことはなんですか?
(普通に知りたい)
Last edited by kouhei-1 (March 3, 2024 01:41:59)
- oligami
-
Scratcher
100+ posts
意外と知られていないテクニック集
まだ出ていなかったような気がしなくもない
スプライト専用の変数がクローン間で共有されないように、スプライト専用のリストはクローン間で共有されない。
よって、クローンの限りまで無理やりデータを増やすことができる。200000(リスト制限)*300(クローン制限)
現実的な使用用途としては、「戻る・進む」の実装に使える。
基本的にはスタックメモリのような使用用途になると思われる。
スプライト専用を用いることでアクセス速度が上がるテクがあるが、仕様によりクローンや他のスプライトから扱えないため、何かしらの基盤システムを作るときにはもどかしいものがある。
# 2024/03/11
inokingさんの指摘より、クローン制限を200から300に修正しました。
スプライト専用の変数がクローン間で共有されないように、スプライト専用のリストはクローン間で共有されない。
よって、クローンの限りまで無理やりデータを増やすことができる。200000(リスト制限)*300(クローン制限)
現実的な使用用途としては、「戻る・進む」の実装に使える。
基本的にはスタックメモリのような使用用途になると思われる。
スプライト専用を用いることでアクセス速度が上がるテクがあるが、仕様によりクローンや他のスプライトから扱えないため、何かしらの基盤システムを作るときにはもどかしいものがある。
# 2024/03/11
inokingさんの指摘より、クローン制限を200から300に修正しました。
Last edited by oligami (March 11, 2024 10:47:50)
- inoking
-
Scratcher
1000+ posts
意外と知られていないテクニック集
よって、クローンの限りまで無理やりデータを増やすことができる。200000(リスト制限)*200(クローン制限)「300(クローン制限)」ですね。
スプライト専用を用いることでアクセス速度が上がるテクがあるが、仕様によりクローンや他のスプライトから扱えないため、何かしらの基盤システムを作るときにはもどかしいものがある。こちらが本題です。
「スプライト専用を用いることでアクセス速度が上がるテク」とは何ですか?