Discuss Scratch

sohtamei
New to Scratch
16 posts

Scratch 3.0 の拡張機能について話すトピック

このスレッドの内容をまとめさせて頂きました。
「Scratch3.0で独自extensionを使ったサンプルプログラムをリンククリックで開く方法」
https://github.com/sohtamei/docs/blob/master/Scratch3.0LinkToSample.md
akku--n11
Scratcher
1000+ posts

Scratch 3.0 の拡張機能について話すトピック

yukumom wrote:

penで塗りつぶしってできるんですか?]
定義 塗りつぶす
ペンを上げる
x座標を (0) 、y座標を (0) にする
ペンの太さを (1000) にする
ペンを下ろす
ペンを上げる

この線から下は 署名(しょめい) です

カワイソス ಥ_ಥこれで傾向乗りたい

適当ポストカウント:
Found 1032 posts.
ioio3
Scratcher
26 posts

Scratch 3.0 の拡張機能について話すトピック

yu-tatta wrote:

「Makey Makey」の
when [スペース v] key pressed ::pen
と「イベント」にある
[スペース v] キーが押されたとき
の違いってなんですか?
⚑ がクリックされたとき
ずっと
もし <[スペース v] キーが押された> なら

end
end

を簡略化したものです

フォローはここから ここに飛んでフォローボタン押すだけ!!!!!!!!!!
<ioio3のフォロワー数:198 | おすすめのゲーム(経営SLGって面白いよね)
もうすぐ0.2k!!
yukku
Scratcher
1000+ posts

Scratch 3.0 の拡張機能について話すトピック

既に解決している質問に答える必要はありません。

↑こういう線の下に宣伝とか書いてる人がよくいるけど、こういう線より下の文章には「署名」って名前がついていて、設定を行うと自動で投稿にくっついてきます。詳しいこととか設定方法はこのページにあるので確認してみてください。
この「署名」以外で関係ないこととかをするのは基本禁止なのでそういうことやりたいと思ったら署名でやってください。

日本語フォーラムの使い方っていうプロジェクトを作ったのでどうぞ。
gdpre2ed98464a95c004773f44d7
Scratcher
100+ posts

Scratch 3.0 の拡張機能について話すトピック

噂ですが、デンソーウェブが、QRコード認証を拡張機能として追加する予定と聞いたことがあるのですが、本当でしょうか?

宣伝及び広告
私は2021年01月08日をもちましてscratchという場を退けさせていだだきます。理由は公表いたしません。例のなりすましの件ですが、犯人探し及び犯人への攻撃はしないようお願いします。私の大好きなscratchが汚れます。最後の私からのお願いです。もう行きます。さようなら。
(この場を借りさせていただいたことに感謝申し上げます。諸事情のため、著作権関連の作品は全て公開を停止しております。申し訳ありません)
abee
Scratcher
1000+ posts

Scratch 3.0 の拡張機能について話すトピック

その情報源はどこですか。
akku--n11
Scratcher
1000+ posts

Scratch 3.0 の拡張機能について話すトピック

stretchのことではないでしょうか。
元サイトはscratch(?)です。

この線から下は 署名(しょめい) です

カワイソス ಥ_ಥこれで傾向乗りたい

適当ポストカウント:
Found 1032 posts.
abee
Scratcher
1000+ posts

Scratch 3.0 の拡張機能について話すトピック

そうかもしれませんが、私たちが想像しても、本人に聞かない限り分かりません。
少なくとも、Stretch3に入っているQRコードは、デンソーウェーブではなく、sugiura-labが開発したものです。これが公式の拡張機能に入る予定はありません。
また、Stretch3の移転前のサイトはScratchの公式サイトとは関係ありません。
intelyuza5
Scratcher
12 posts

Scratch 3.0 の拡張機能について話すトピック

定義 
定義

ディフィスカッションフォーラムに投稿し始めたばかりなので、教えてくれると助かります。
フォロワー140人!
https://scratch.mit.edu/projects/833583397/
☝記念のプロジェクトです
君の運勢(カメラなどで撮ってね)
Es-2
Scratcher
1000+ posts

Scratch 3.0 の拡張機能について話すトピック

#49
定義ブロックは拡張機能ではありません。

↑この線より下は、今話している内容とは関係がありません。 詳しくは、ScratchWiki 署名

質問や意見を投稿する前に、まずは
ScratchWikiで検索
調べたい言葉 site:https://scratch.mit.edu/discuss/でGoogle検索
③プロジェクトに関することなら参考にする作品を検索して中をみる
コミュニティーガイドラインよくある質問利用規約の確認
などをしておくと、無駄な投稿を減らしたり、スムーズに議論できます。
質問の仕方については質問のためのテンプレート(外部サイト)が参考になると思います(本名は書かないでね)。
takoyariika
Scratcher
48 posts

Scratch 3.0 の拡張機能について話すトピック

自作拡張機能について質問なんですが
下記のコードを拡張機能として動かした際になぜかブロックが追加されませんでした。

argumentsの部分がないバージョンは動いたので多分そこらへんが悪さしてるとは思いましたが、
いくら調べてもどこがおかしいかわからないので詳しい方は教えてください。

ちなみにe羊icquesで実行した場合、コンソールに

sheeptester.github.io/:1 Uncaught (in promise) DOMException: Failed to execute ‘importScripts’ on ‘WorkerGlobalScope’: The script at ‘ローカルサーバー上のJSファイルのURL’ failed to load.


と出ます。


class Test {

constructor() {}

getInfo() { // 拡張機能の各種情報
return {
id: ‘test’,
name: ‘Test’, // 拡張機能の名前
blocks: [ // 各ブロックの定義
{
opcode: ‘hello’, // このブロックが実行されると、helloという関数が呼ばれる
blockType: Scratch.BlockType.COMMAND, // 「10歩動かす」のような通常の命令ブロック
text: ‘log ’,
arguments: {
TEXT: {
type: ArgumentType.STRING,
defaultValue: “hello”
}
}
}
],
menus: {
}
};
}

hello() {
console.log('hello'); // console log に hello と出力
}
}

Scratch.extensions.register(new Test());

ウマ娘的なゲームを作りました。
詳しくはここで

「出口の見えのない努力オンライン」もよろしくね!
出口の見えのない努力オンライン

メイドインワリオシリーズが好きな方へ
ワリウォッチ

.ioゲームとくにおくんシリーズの悪魔合体
Kun.io
abee
Scratcher
1000+ posts

Scratch 3.0 の拡張機能について話すトピック

以下のように書き換えて、e羊icquesで実行できました。
プログラムを載せるときはcodeタグを使うことをお勧めします。
class Test {
  constructor() {}
  getInfo() {
    return {
      id: 'test',
      name: 'Test',
      blocks: [
          {
          opcode: 'hello', 
          blockType: Scratch.BlockType.COMMAND,
          text: 'log',
          arguments: {
            TEXT: {
              type: Scratch.ArgumentType.STRING,
              defaultValue: 'hello'
               },
             }
           }
        ]
     }
  }
  hello(args) {
    console.log('hello');
  }
}
Scratch.extensions.register(new Test());
takoyariika
Scratcher
48 posts

Scratch 3.0 の拡張機能について話すトピック

abee wrote:

以下のように書き換えて、e羊icquesで実行できました。
プログラムを載せるときはcodeタグを使うことをお勧めします。
class Test {
  constructor() {}
  getInfo() {
    return {
      id: 'test',
      name: 'Test',
      blocks: [
          {
          opcode: 'hello', 
          blockType: Scratch.BlockType.COMMAND,
          text: 'log',
          arguments: {
            TEXT: {
              type: Scratch.ArgumentType.STRING,
              defaultValue: 'hello'
               },
             }
           }
        ]
     }
  }
  hello(args) {
    console.log('hello');
  }
}
Scratch.extensions.register(new Test());

ありがとうございました!
実行できました!

ウマ娘的なゲームを作りました。
詳しくはここで

「出口の見えのない努力オンライン」もよろしくね!
出口の見えのない努力オンライン

メイドインワリオシリーズが好きな方へ
ワリウォッチ

.ioゲームとくにおくんシリーズの悪魔合体
Kun.io
takoyariika
Scratcher
48 posts

Scratch 3.0 の拡張機能について話すトピック

以下のコードを書いてブロックを組み合わせたのですがうまくいきませんでした。
どうしたら想定した挙動になりますか?
僕が思うにはscratchの拡張機能だとグローバル変数にしてもほかのブロックとの共有がうまくいってなかったので
ちゃんと動かなかったんだと思いました。
他のブロックと変数を共有する方法が分かれば多分動くようになると思いました。


想定した挙動
JS実行ブロックででaに1を代入する。
上のブロックで代入したaという変数を変数に入れる


⚑ がクリックされたとき
JS実行[a=1;]
[変数] を (変数[a]) にする

class jsexec {
  constructor() {}
  getInfo() {
    return {
      id: 'JSEXEC',
      name: 'JS実行',
      blocks: [
          {
          opcode: 'jikko', 
          blockType: Scratch.BlockType.COMMAND,
          text: 'JSを実行[TEXT]',
          arguments: {
            TEXT: {
              type: Scratch.ArgumentType.STRING,
              defaultValue: 'スクリプト内容'
               },
             }
           },
           {
          opcode: 'hensu', 
          blockType: Scratch.BlockType.REPORTER,
          text: '変数[TEXT]',
          arguments: {
            TEXT: {
              type: Scratch.ArgumentType.STRING,
              defaultValue: '変数名'
               },
             }
           }
        ]
     }
  }
  jikko(args) {
    var text =  String(args.TEXT);
    eval(text);
  }
  hensu(args) {
    var text =  String(args.TEXT);
    var kekka=0;
    eval("var kekka = parseFloat("+text+");");
    return kekka;
  }
}
Scratch.extensions.register(new jsexec());

ウマ娘的なゲームを作りました。
詳しくはここで

「出口の見えのない努力オンライン」もよろしくね!
出口の見えのない努力オンライン

メイドインワリオシリーズが好きな方へ
ワリウォッチ

.ioゲームとくにおくんシリーズの悪魔合体
Kun.io
Es-2
Scratcher
1000+ posts

Scratch 3.0 の拡張機能について話すトピック

ここは「ここはScratch 3.0 で追加された「拡張機能」について話すトピック」なので、自作拡張機能についてはScratch 3.0 をハック(動作や構造を解析すること)しよう!
で投稿したほうがいいですよ。

↑この線より下は、今話している内容とは関係がありません。 詳しくは、ScratchWiki 署名

質問や意見を投稿する前に、まずは
ScratchWikiで検索
調べたい言葉 site:https://scratch.mit.edu/discuss/でGoogle検索
③プロジェクトに関することなら参考にする作品を検索して中をみる
コミュニティーガイドラインよくある質問利用規約の確認
などをしておくと、無駄な投稿を減らしたり、スムーズに議論できます。
質問の仕方については質問のためのテンプレート(外部サイト)が参考になると思います(本名は書かないでね)。
abee
Scratcher
1000+ posts

Scratch 3.0 の拡張機能について話すトピック

#55
#1に「こんな拡張機能作ってみたいけど、どうすればいいと思いますか?」と書いてあります。
takoyariika
Scratcher
48 posts

Scratch 3.0 の拡張機能について話すトピック

globalThisで宣言した変数はちゃんと動作しました。
少し不便ですけどやりたいことはできるのでそうしました。

ウマ娘的なゲームを作りました。
詳しくはここで

「出口の見えのない努力オンライン」もよろしくね!
出口の見えのない努力オンライン

メイドインワリオシリーズが好きな方へ
ワリウォッチ

.ioゲームとくにおくんシリーズの悪魔合体
Kun.io
takoyariika
Scratcher
48 posts

Scratch 3.0 の拡張機能について話すトピック

完成した拡張機能はこうなりました。
jsの実行と変数の出力とコンソール出力の機能があります。

class jsexec {
  constructor() {}
  getInfo() {
    return {
      id: 'JSEXEC',
      name: 'JS実行',
      blocks: [
          {
          opcode: 'jikko', 
          blockType: Scratch.BlockType.COMMAND,
          text: 'JSを実行[TEXT]',
          arguments: {
            TEXT: {
              type: Scratch.ArgumentType.STRING,
              defaultValue: 'スクリプト内容'
               },
             }
           },
           {
          opcode: 'hensu', 
          blockType: Scratch.BlockType.REPORTER,
          text: 'JS変数[TEXT](「globalThis.」で宣言した変数のみ)',
          arguments: {
            TEXT: {
              type: Scratch.ArgumentType.STRING,
              defaultValue: '変数名'
               },
             }
           },
           {
          opcode: 'gurobaru', 
          blockType: Scratch.BlockType.REPORTER,
          text: 'コピペ用[TEXT]',
          arguments: {
            TEXT: {
              type: Scratch.ArgumentType.STRING,
              defaultValue: 'globalThis.'
               },
             }
           },
           {
          opcode: 'konsoru', 
          blockType: Scratch.BlockType.COMMAND,
          text: 'コンソール出力[TEXT]',
          arguments: {
            TEXT: {
              type: Scratch.ArgumentType.STRING,
              defaultValue: '出力したい言葉'
               },
             }
           }
        ]
     }
  }
  jikko(args) {
    var text =  String(args.TEXT);
    eval(text);
  }
  hensu(args) {
    var text =  String(args.TEXT);
    var kekka=0;
    eval("kekka = "+text+";");
    return kekka;
  }
  gurobaru(args) {
    return 0;
  }
  konsoru(args) {
    var text =  String(args.TEXT);
    console.log(text);
  }
}
Scratch.extensions.register(new jsexec());

ウマ娘的なゲームを作りました。
詳しくはここで

「出口の見えのない努力オンライン」もよろしくね!
出口の見えのない努力オンライン

メイドインワリオシリーズが好きな方へ
ワリウォッチ

.ioゲームとくにおくんシリーズの悪魔合体
Kun.io
taji-pg
Scratcher
62 posts

Scratch 3.0 の拡張機能について話すトピック

最近LEGO社が新しく「LEGO spike」というレゴブロックで作ったロボットを動かすキットを作りましたが、EV3やBOOST、LEGOwedoの拡張機能までも追加してるからLEGOspikeの拡張機能も追加してほしいです。


この画像をクリックしたときに出てくるスタジオを拡散しまくれ!!!
3659662244
Scratcher
100+ posts

Scratch 3.0 の拡張機能について話すトピック

質問失礼します。ここは拡張機能などで増えて欲しいものは投稿しない方が良いのですか?

野球が好きです!福岡ソフトバンクホークスを応援しています!
スプラトゥーン3が好きです。

Powered by DjangoBB