2018年12月31日月曜日

餅搗きゲーム

あまプロでは尼崎市内でプログラミング教室を開催しています。
アドベントカレンダーという企画が有りまして、日本で言う「もう幾つ寝るとお正月〜」のクリスマス版みたいな感じのカレンダーです。
日毎に記事を載せてクリスマスを迎えるのを楽しむ風習だそうです。
そのこどもプログラミング版が有りましたので、載せてもらいました。

あまプロでは一回90分で授業を行っております。
基本的に一回完結形式の授業になります。
今回は年末年始ということで、Scratchで餅搗きゲームを作ってみます。
ちなみにScratch2.0では日本語入力の関係でChromium+pepperflashplugin-nonfreeで行います。
Scratch3.0はFlashを未使用なのでFirefoxで動くと思います。

 スプライトを作る

スクラッチには予めスプライトが幾つか用意されていますが、餅搗きに使えそうなスプライトは含まれていません…。
なので、自作する必要が有ります。
餅搗きに必要なスプライトは「杵」「臼」「餅」です。
初期表示される猫を削除して、左下の筆アイコンをクリックして、杵のスプライトを描きましょう。
簡単に茶色の長方形で描きます。
こちらを左杵とし、複製して左右反転さして右杵にします。
次に臼。
臼は長方形を消しゴムで削って臼にしました。
最後に餅。
餅は形が変わるので、コスチュームを三枚描きます。
こちらも白い楕円を描いたり削ったりして簡単に描きます。
平らな餅と、凹んだ餅と、伸びた餅の三枚を描きます。

スクリプトを組む

スプライトを描いたら次はスクリプトを書きます。

先ずは左杵から

キーボードのqで振り上げ、sで振り下ろします。
振り上げ振り下ろしはスプライトを回転さす事で実現しています。
せっかちなスクラッチャの為に↑↓でスピード調整が行える様にしました。
それと、振り上げ過ぎ振り下ろし過ぎの防止の機能を追加してみました。
これで杵が臼にめり込む事がなくなります。
次に左杵のスクリプトを右杵へドラッグアンドドロップして写します。
右杵はpで振り上げて、lで振り下ろします。

次に餅のスクリプト

杵の振り下ろし中に餅に触れると凹んだ餅に、杵の振り上げ中に餅に触れると伸びた餅に、それ以外は平らな餅にします。

臼のスクリプトは無いです

こんな感じで餅搗きゲームの出来上がりです。
必須では無いですが、ゲームとして盛り上げる為に

おまけとして

  • 餅を撞く時に音を出す機能と
  • 撞いた数を数えておき、数を超えると出来上がりにする演出を加えても良ぇでしょう。
  • それと杵同士がぶつかった時に演出すると、選りゲーム性が高まります。
  • あと、背景は白のままやと餅と同化してまうので、何か色を変えといた方が良ぇです。
この辺りは時間が有ればお好みで。
作成したゲームはこちらになります。

それでは〜

2018年12月13日木曜日

バリューサーバでワードプレス構築

あまプロではウェブサイトの構築をお受けする事が有ります。

小規模なサイトではバリュードメインを使う事が多いです。
バリュードメインのマニュアルに個別の説明は載ってるのですが、ドメイン購入からワードプレスインストールまでの流れが揃ってなかったのであメログ。

手順としてはこんな感じになります。
  1. ドメインの購入
  2. WHOIS情報の確認
  3. サーバの購入
  4. DNSの設定
  5. ドメインウェブの設定
  6. SSLの設定
  7. PHPのバージョン設定
  8. データベースの構築
  9. ワードプレスの設置

2018年12月1日土曜日

GASでPDF出力

あまプロではGoogleAppsScriptで社内システムを構築する事が有ります。
フリーエディションには6分を超えるスクリプトの処理は出来なかったり、一日に作成するファイル数は500迄制限が有ったりすんねんけど、グーグルアカウントさえあればGASで簡単な社内システムなら構築可能です。

その中でも良く使うPDFエクスポートをあメログ。

 簡単に説明すると、IDでファイルを開いて、getAsで変換して、createFileで保存すんだけ。
  DriveApp.getFolderById( 'フォルダID').createFile(
    DriveApp.getFileById( 'スライドID').getAs( MimeType.PDF)
  )
  .setName( 'スライド.pdf')//デフォルト名(ファイル名.pdf)で良ければこの行は不要
  ;
  DriveApp.getFolderById( 'フォルダID').createFile(
    DriveApp.getFileById( 'スプレッドシートID').getAs( MimeType.PDF)
  )
  .setName( 'スプレッドシート.pdf')
  ;
  DriveApp.getFolderById( 'フォルダID').createFile(
    DriveApp.getFileById( 'ドキュメントID').getAs( MimeType.PDF)
  )
  .setName( 'ドキュメント.pdf')
  ;
IDやファイル名は各々変えます。
ご覧の通り、GoogleドキュメントでもGoogleスプレッドシートでもGoogleスライドでも手順は同じです。

グーグルドライブに変換前と変換後のサンプルを置いておきます。
サンプルスプレッドシートスプレッドシートPDF
サンプルスライドスライドPDF
サンプルドキュメントドキュメントPDF

例えば、スプレッドシートをデータベース代わりにして、データを抽出して、データを帳票に埋め込んでPDF出力する
なんて事もGASで可能。

ちなみにドキュメント(ワープロ)ファイルをGASで操作すると(今の所)テキストボックスの操作が出来へん様なので、スライド(プレゼンテーション)をGASで操作してPDFファイルを出力するのが良ぇみたいです。
2018/11/30現在。