カード製作
ここ1週間くらいはカードの製作にいそしんでいていて、100枚弱のカードを実装しました。いい書き方になかなか悩みます。
理想ではこの手のものは外部ファイルに切り出したいところなんですが、カードゲームのカードはルール処理を内包しているので、テキストやCSVのような操作が簡単なファイルに切り出すのが困難なんですよね。
(例えば「このクリーチャーが場にいるとき、他のクリーチャーはATが0になる」というカードを実装しようと思ったら、『他のクリーチャーのATを0にする』という関数を持たせる必要があるわけです)
結局ラムダ式をデリゲート代入する形でカードをコードに直埋めして実装したんですが、もっと美しく書けたのではないかという一抹の疑いが残ります。
まぁ最高形を言えばカードテキストを読み下して処理するアルゴリズム作るのがベストなんですけどね。ただ流石に手間が莫大すぎる。多分MtGアリーナとか遊戯王マスターデュエルみたいな超大型アプリでも、それはやってないんじゃないかな。(高レベルジャッジかつエースプログラマみたいな能力が要求されるし)