#きっかけ
「ずっと作りたかったんだけど無理だよね〜」みたいなことをツイートしたところ、たくさんの人に「できるできる」「意外と簡単」と励ましをいただいたのでその日のうちに我流で作ってみました〜!(実用性はないです)
ただプロジェクトを見てくれた人のユザネを保存するというだけの単純なプログラムです。クラウド変数も一個しか使ってないので、本当に少しのデータしか保存できません。(そういうのは後々改良します★)
#Scratchのクラウド変数のお話!
中身が保存できる変数。
チャットが簡単に作られて無法地帯と化すことを防ぐため、クラウド変数には数値しか入れることができない。
以前は10240文字も入れられたらしいが、2018年2月、256文字までに修正されたらしい。ウワーン
サインイン状態のScratcherしか使うことができない。
#クラウドリストって何?何するの?
リストに、例えば今までプロジェクトを見てくれた人のユーザーネームなどのデータを表示するもの。
応用すればゲーム作品の成績優秀者のスコアとユザネを保存して表示できる。
要するに、そういう風にクラウドリストを突っ込めばちょっとやりがいのあるゲームになるんです。。!(多分)
#(私の)作り方
##1.文字列を数値に変換。
さっきもお話しましたが。。w
クラウド変数には数値しか保存できないので、文字を数字に変換しなきゃならない。
どうやって変換するのか?
私はこういう風に文字を一文字ずつ手作業でリストにぶっ込んで、()
このように組みました。
読んでいただければわかるとは思いますが、1で次の文字、0で次の人の名前に行くようになってます。
ここで私が無理やりぶりを発揮、「文字変換」リストの中の一の位に0、1が含まれる番目を抹消しました!これで復元の時安心だね♡
例えばabciをこの方法で数値に変換すると、0213141121となります。
##2.保存した数値を文字列に復元。
こんな風に書きました。変数iを少し上手く使えるようになったのは競プロのおかげだと思います。ありがとう競プロ(T . T)ウホウホ
数値を文字列に変換したら一時的に変数文字列一時保管に突っ込みます。
ユザネに1がつく人のために、文字列一時保管における改行は**&としました。(人に言われて気づいた。。)
1が2連続で続いている場合は、2文字目の1から「番目」判定となります。だめだ語彙が。。
2桁の番号も、これで上手く文字に戻すことができました!フォエイ!
##3.ユザネを1つずつリストに表示。
最後のコードとなります。
文字列一時保管の文字を1文字ずつ文字列二時保管にコピーし、
次のユザネにうつることを示す&**が登場したら文字列二時保管の中身をクラウドリストにつっ込んで、それから文字列二時保管の中身を消します。
文字列一時保管の1文字目から&が入る仕様なので、クラウドリストの1つ目は空白になってしまうため最後にリストの1番目を削除します。
できあがり〜!
#クラウドリスト作った感想
PTE(ペンテキストエンジン)作った時と、文字コードと文字を行ったり来たりする点ですごく似てました。でもそれよりはちょっと楽だったかな?
久しぶりにScratchを触ったのですが、作れて本当に良かったです。
夢がかなったぜい(((o(゚▽゚)o)))
まずは仕組みを理解しようってことで作ったので、これから改良していきたいです。
4月あたりの、自分がクラウドリスト作ろうとしてものすごく苦労してる感じの作品が出てきて、今回は人のも見てないしすぐ作れたのでちょっとだけ成長を感じました。
色々助言くださった人ありがとうございました!
知ってるScratcherさんの名前がいろいろ表示された時は飛び上がるほど嬉しかったです!飛び上がらなかったけどね★
#記事書いた感想
思っていたよりも日本語で説明するのが大変でした。()
初めての記事です。
読んでくれた方ありがとうございました!
#よきScratchライフを。
More than 5 years have passed since last update.
Register as a new user and use Qiita more conveniently
- You get articles that match your needs
- You can efficiently read back useful information
- You can use dark theme