<   2014年 08月 ( 2 )   > この月の画像一覧

絶賛炎上中

よし、炎上プロジェクトのヘルプ分を何とか仕上げた。
明日が期限だから、上々だな。
 
とにかく、もうソースがヘタレすぎて見てられん。
やたらと ○○Base という基本クラスを作っているだが、作ってるのが素人かと疑いたくレベル。
  
選択肢用の SelectBase というクラスを作り、継承して、
キャラ選択用、装備選択用のクラスを作っているのだが、
”現在選択されているものが変更された”というイベント検出が、なぜかSelectBaseではなく、継承側で実装されているため、キャラ選択にはあるが、装備選択には無いというクソ仕様。
  
そのため、装備品を選択中に、リアルタイムにパラメータの更新(攻撃力+10とか)ができないという…。
俺の作業は、まず全部の継承クラスにイベント検出をつけるというところからなんだぜ…。
[PR]
by miries | 2014-08-20 07:54 | ゲームを作る

私の現状

かなり更新していませんが。
大型のプロジェクトのプログラマーリーダーとしてお仕事してます。
まだまだ一般には告知されてませんが、来月辺りに発表されるのではないでしょうか。

で、マスターも見えている感じなんですが、なんと!
炎上しているプロジェクトのヘルプに召喚されたわけですよ。

リーダーを火消しに回さないといけないほどの自体ってことですな。

そのせいで、私のプロジェクトのプログラマーは実質一人になり、
炎上の方は、9人ですよ。

そして、実際ヘルプに入ってみて、なるほど。これは炎上するわ。
全くつながりができてないじゃん。

そして、そもそも繋がるように作って無いじゃん。

(ゲーム)プログラムの王道として、メインループの中でシーンを分けるというのがある。

switch( scene ){
case タイトル:hoge();break;
case メニュー:hoge();break;
case キャラ選択:foo();break;
case バトル:hoge();break;
case リザルト:hoge();break;
}

まあ、こんな感じ。
各シーンの中で、共通に使える部分などを別クラス化したり、小項目で分けたりするけれど、あまり細分化しないものだと思っていた。

ところが、炎上プロジェクトで、キャラ選択の部分に手を加えて欲しいと言われたのだが、
驚くべきことに、それがソースのどこにあるのか分からないのよ!
この長年他人のプログラムを見てきた私がw

character_select
という分かりやすいフォルダがあるのに、そこにあるのは、別のプログラムw

ようやくたどり着いたキャラ選択。

私が作る場合は、上記の例で、foo() に当たる部分にその処理を書くわけだが、
この炎上プロジェクトでは、だな…。

└ 何かのインターフェース
 └ 何かのインターフェース
  └ 何かのインターフェース
   └ 選択クラス

とかいう感じで超階層。
しかも、CMenuBase とか、キャラ選択とはかけ離れた命名規則。

正直、発狂するレベル。
[PR]
by miries | 2014-08-12 00:29 | ゲームを作る