昔作ったFlashゲーム

http://megyo.jp/games/summer/adv2.html

htdocs配下を見てたら昔作りかけていたFlashゲームの残骸を見つけた。

今見ると意外と頑張ってた。

当時、ブラウザゲームに適したジャンルは何かを考えた結果、アドベンチャーゲームという結論に達したのでFlashでゲームを作ってみてた。

シナリオ、シナリオ分岐やBGM、選択肢などをXMLファイルとして外出しして、XML(シナリオ)と絵、BGMを用意したらゲームが完成するようにフレームワークを作っていた。
#開発中だったのでBGMはペルソナのBGMを仮で流してたっぽい

スマホアプリのナビゲーション・ボタンの配置

こんなアプリ出してます。

https://itunes.apple.com/jp/app/id460679511?l=ja&ls=1&mt=8

元々は、5年以上前に自分が欲しかったものをFlashBuilderで作って、今年Xamarinで焼き直したものです。

#ちなみに初回リリースの当初は結構レビュー評価良かったのですが、途中からエロ漫画の広告が出てきてしまってすごいレビュー下がりました。。。

こだわりのポイント

私個人としてはスマホのボタン等の配置は画面下部に集約したいのです。片手で操作できるように。

結果、こんな画面に。

下の方に色々集約されてます。

文字が切れてるボタンがある部分は、スライドすると後続のボタンが見れるようなってます。

ちなみに文字列の入力フォームにフォーカスがあたると、上側に表示されるようになります。

仮想キーボードが邪魔にならないようにするためです。


ボタン群が3行に渡るのはいけてないのですが、個人的には2行ぐらいなら良いのではと思ってます。

仕事で同じような設計して、「押し間違いそう」といった指摘を受けましたが、「しそう」なだけで実際にはそんなに間違わないのではと思ってます。

なぜこんな記事を書くかと言うと、やりすぎて「他にあまりみない画面はいくない」と言う指摘があったので、「他にもあるよ」と言う状態になって欲しくて情報発信しました。

アドラーの心理学

以前、アドラーの心理学を読みながらマインドマップを書いてたもの。

色々あるけど三行で言うとこんな感じ。

・人は人の役に立ったと思う時に幸せを感じる

・実際に役に立ったかどうかは関係なくて、自分がどう思うかが重要

・見返りの要求や承認欲求があるとそれは自分のための行動となる

悪く言えば「独りよがり」。だから「嫌われる勇気」と言うタイトルなのかな。

イラストの枠線の色

枠線の色は黒ではなくて、着色に合わせて近い色にするとスッキリする

今までは枠線内の塗り潰しの色に合わせてたけど、そのキャラクターの目の色に合わせるのも良いかもと思って来た。

目の色と枠線の色を合わせた例

LINE絵文字ランキング作りました

自分の絵文字がどの辺りなのか知りたくて一覧を表示するページを作りました

7200位まで取得できるようにしてます(テストしてないけど)

やり方は単純で、ランキングサイトのHTMLを眺めて適当に処理するロジックをGoogle Apps Scriptで定期実行してるだけです。

function ScrapingLineRanking() {
var result = [];
var page = 1;
while(true) {
var url = "https://store.line.me/emojishop/showcase/top_creators/ja?page=" + page;
var res = UrlFetchApp.fetch(url) + '';
getData(res, result);
if(res.indexOf('適当な目印') != -1 && page < 200) {
page++;
} else {
break;
}
}
var spreadsheet = SpreadsheetApp.openById('スプレッドシートのID');
var sheet = spreadsheet.getSheetByName('絵文字');
sheet.getRange(1, 1, sheet.getLastRow(), 2).clear();
var range = sheet.getRange(2, 1, result.length, 2);
range.setValues(result);
sheet.getRange('A1').setValue('更新時刻:' + new Date().toString());
}
function getData(res, result) {
// 適当な目印を見つけてHTMLを解析して、絵文字名とURLの配列を作る
}