Project Anthem(TCストライカーズ)

ぷろじぇくとあんせむ公式サイトであり雑記ブログ。当サイトはリンクフリーです。

icon


4

こんな感じ。サークルロゴの色を変えただけなんですが、割とお気に入りです。


logo


これシリーズ全体で共有できるので次回作も色を変えて下に”TC04"と入れるだけでOKですね。


・作り方

作ったのはこちらのサイト
https://service.tree-web.net/icon_converter/

ここに画像ファイルをUPするだけで自動的に作ってくれます。あとは右クリックでDLするだけ。

5

 
 なんとも便利なサービスです。Photoshopでもプラグインを入れれば作れるそうですが、私達が使うのは年1回くらいなのでこちらのほうが都合いいかと思います。


・何がいいのか

 ゲームがくっきりすると言えばいいのでしょうか、汎用アイコンの時にはなかった高揚感が溢れてきます。完成したと思い込んでしまうところですかね。タイトル画面だけ見たら完成品ですのでw。ただ、そういう気持ちがあると完成時をイメージしやすいですよね。気分良く作成できます。気分良く過ごすのが一番大事。



・ついでに

 私個人としては、また一つ東方から離れることができた、という喜びがあります。STG作ってる人は共感してもらえると思うんですけど、
  1. 東方みたいの作りたい!
  2. 作った!
  3. 東方でよくね?と言われる。
  4. 東方と差別化しようとするも無理ゲー。
  5. ソーシャルゲームにハマる。
という経験をします。些細なことですが、差別化できたかなーと。STGファンが求めてるのは東方のクオリティで東方ではないもの、ですから。このへんはまた記事にしたいですね。







2



さて、リファクタリングを続けています。
簡単なところで変数の名前を短くすることで読みやすくするという方法があります。

  • alpha ⇒ alp
  • count ⇒ cnt
  • step ⇒ stp
  • control ⇒ ctrl

という風に、よく使うものを略しました。母音を削って短くするのが一般的です。
これだけでもかなり読みやすくなりました。

次に独自に略法を使います。個人で作っているので自分さえ分かればいいのです。

  • Layer ⇒ L
  • stage ⇒ stg
  • cnt ⇒ c
  • Bullet ⇒ B
  • Player ⇒ P
  • State ⇒ S

P,Bなんてプライベートブランド見たいです。これだけやると文というより記号的になってきますが、案外おしゃれな感じです。以前と比べて見やすくなりました、さらに読む手間も省けて効率的です。ラムダ式も使えば暗号みたいになりますね。


C#ショートコードプログラミング 第3版 〜短いコードで生産性を高める必修テクニック〜 [ 川俣 晶(株式会社ピーデー代表取締役) ]
C#ショートコードプログラミング 第3版 〜短いコードで生産性を高める必修テクニック〜 [ 川俣 晶(株式会社ピーデー代表取締役) ]

フリーSTG紹介シリーズ
STGプレイ動画


鏈縁霊烈傳 〜 Reactivate Majestical Imperial Hard Mode 1cc

【怒首領蜂大復活】 ver1 5 1周ALL Cstrong

【C91】 Phantom Sol 難易度BLAZE  自動追尾型

【怒首領蜂大復活】 ver1 5 1周ALL Bstrong

【怒首領蜂大復活】2周目突入 B string

【FLOWN】 HARD 黒鳳蝶typeA ノーコンテニュークリア

【FLOWN】 HARD 黒揚羽蝶typeB ノーコンテニュークリア
【東方神霊廟】HARD 6年越しの初クリア!

虫姫さま ~ Mushihimesama Original Mode 1CoinClear

鏈縁霊烈傳 〜 Reactivate Majestical Imperial - Normal Mode 1cc
同人弾幕STG Flown STAGE2ボス戦 (HARD) NEXT-SOFT+
同人弾幕STG Flown STAGE3 (HARD) NEXT-SOFT+

同人弾幕STG Flown STAGE1 (HARD) NEXT-SOFT+

フリーSTG紹介シリーズ
STGプレイ動画


 コーディング

 さて、1月ほどかけてリファクタリング。外見上変わったことはないのでお見せできるものはないのですが、内部的に随分きれいになりました。

  • プレイヤー、ボス、ステージのステートパターン化
  • 自機タイプをポリモーフィズム、オーバーライド
  • シートのカテゴリー化(使用場面毎にフォルダ化)
  • 雑魚をストラテジーパターン化
  • 命名ルールに則って再命名

 と、まあわかってる人にとっては当たり前のことですがオブジェクト指向の基本事項を導入しました。


参考にした本
 独習C# 新版 (独習) [ 山田 祥寛 ]
独習C# 新版 (独習) [ 山田 祥寛 ]


きれいなコードを書くための鉄則 [ Lepton ]
きれいなコードを書くための鉄則 [ Lepton ]

 
 いままでは命名ルールすら分かっていなかったので後で見返した際に「これなんだっけ」と思う変数が多かったのです。全体にcamel法で統一しました。今後、命名する際にも単純なルールと役割に基づいて命名できるので変数・関数名を考える手間が省けました。

 またステートパターンを多用したことで動きがわかりやすくなりました。前作はswitch文でステージ、ボスを進行させていたのですが、複雑になりすぎたため改善する必要があったのです。2の作成終盤なんてうんざりしてました。今回のリファクタリングで3だけではなく4以降もこのプロジェクトを使って作成できます。ステートパターンはシートを増やせばいくらでも複雑なことができますので拡張性も高くシリーズ物を作るにはもってこいではないでしょうか。

 コードがすっきりし空いた分で色々と考えることができるなります。なんか進まない時は今までに作ったものを見直して最適化すると新しいことに挑めるのかもしれません。私はここまで整理してやっと絵をかける状態になりました。リファクタリング前は「書いたとしても位置・ポーズ調整とかめんどくせえな」と思っていたのでやる気がでなかったです。素材を作ったらすぐ実装できるようにコードを整えておくというのも有効ですね。



サキュレーターでPC冷やすと早くなるよ
P_20180821_160635



↑このページのトップヘ