上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。
#初めてhtml文書にコードを載っけるので折角だからという事でpreタグ使ってみたいのに激しく崩れるのでやめました。(修正する気力がないというが問題だけど・・・)
見難くてスイマセン


遂に行き詰りました。

typedef struct{
char name[] ;
void ( *func[] )( void ) ;
} Command ;

この宣言に
Command Command_Tbl[]=
{
{ "スキル" , command_skill } ,
{ "魔法" , command_magic , } ,
{ "装備" , command_equip , } ,
{ "スタータス", command_status , } ,
{ "隊列" , command_formation , } ,
{ "作戦" , command_tactics , } ,
{ "環境" , command_option, } ,
{ "セーブ" , command_save, } ,
};

そしてこれ。

Command* tblptr;
 (中略)
文字列描画: tblptr->name


その結果がこれ。
20071022220317.jpg

_| ̄|○ 何故文字化けを・・・

デバッガで内部の変数を見たところ、きちんと値が格納できてない模様。そこまでは分かったんですが、何故?がわからない・・・

関数ポインタと文字列を分けて処理すればきちんと上手く出来るんですが折角なんで構造体にしてみたいじゃないですか。しかし出来ない。プラス、この問題を解決する為にどういう参考書を見ればよいかも分からない。


1週間考えて駄目だったらベタで処理させるしかないかなあ・・・

しばらくは樹海から抜け出せそうにありません。

スポンサーサイト

テーマ : ゲーム製作 関連 - ジャンル : ゲーム

回復魔法を実装しました。

20071015221149.jpg

エフェクトのグラフィックはUteki Studio様からお借りしました。謝謝。

今回同じタイミングでエフェクトに画像を使ってアニメーションなぞさせてみましたが、なんてーか、魔法のアニメが加わると一気にゲームっぽくなっていい感じですね。フェザー要素はどこにも無いけれど、あれです、名前なんて飾りですことよ。
HP回復にクランプ処理が実装されてないのに特に深いわけはありません。暇な時に追々直して生きます。

これで単体攻撃、範囲攻撃、そして回復魔法と一通り揃いちっとはマシにRPG出来るようになりました。

まだ肝心のMPの実装が出来ておりませんが。それよりも、8fpsってのがヤバイ_| ̄|○

どんだけ処理重いんだろう・・・。

テーマ : ゲーム製作 関連 - ジャンル : ゲーム

無題


変更点その1.
縦列攻撃を実装しました。
画像はエアスラッシャーという魔法で敵の前列を攻撃しているわけです。
処理としては、面倒では有りますがそう難しい内容では御座いませんです。攻撃エフェクトがいつもに増して単調なのはやはりご愛嬌と言うことで。。。


変更点その2.
Hit数の概念を導入してみました。
これは兼ねてよりターン制のRPGを作ることがあったら実装してみたいと思っていたシステム。導入できて嬉しいです。
一方が攻撃し続けている間はHit数がガンガン増え、そのHit数に応じてダメージボーナスを得られるわけです。
素早いキャラクターが威力は低いけれど手数の多い技でHit数を稼ぎ、次に攻撃するキャラクターが重い一撃を加える、と言うような戦法が取れるようにしてあります。
この辺は言わずもがなAAAゲーから影響を受けているわけです。


変更点その3.
細かいバグを修正しました。
ダメージやエフェクトが表示される位置がおかしかったり、攻撃対象に選択したキャラと違うキャラに攻撃してしまったり、果てはフリーズしてしまったり(変数がオーバーフローしてただけだったり)と、しょうもないけれど直さなくてはならないバグが沢山あっていっぱいいっぱいです。

ちなみに、早くもバトル処理をつかさどるbattle.cppのコード量が1400行に到達してしまい管理が大変になってきました。未実装の処理が大量にあるのに。


あぁ、次は回復魔法の実装だ・・・

テーマ : ゲーム作り - ジャンル : ゲーム

取り敢えず全体攻撃実装してみました。

20071003235101.jpg


エフェクトがしょぼいのはご愛嬌。余力があれば画像を使うつもりで居ますがそれはまた次のステップにて。

処理としては今までの攻撃処理を「単体攻撃用」として新たに「全体攻撃用」と言う処理を既存の物を改良して作ってみました。所要時間大体1時間程度。そんな難しい物ではなかったです。

ですが、問題が山積み。

・ヒット時に全キャラフラッシュさせないと
・ヒット時に全キャラ火花を出させないと(今はエフェクトの中央にだけ火花を出して誤魔化してる)
・この程度のエフェクトで処理落ちするのを何とかしないと。火花の処理は思ったより負荷が掛からなくって、どうも透過処理(アルファ演算だっけ?)に依るものらしい。全画面化すれば処理落ちは防げますが暫定対策でしかない。


ダメージにばらつきが無いのは仕様ではなく乱数生成が甘いから。要するにプログラムが腐っとるからですな。

駄目なプログラムって言うのは乱数生成がイマイチらしい。・・・なるほど。

20071002231625.jpg

攻撃がヒットした時のエフェクトを作りました。

やや見づらく、また汚い画像ではありますが攻撃ヒット時に火花が飛び散るようにしました。また、同ヒット時に対象がフラッシュしています。

たったこれだけ(といっても追加するのはそれなりに苦労しましたが・・・)でも凄く見栄えがよくなるから不思議。意味もなく敵に難度も斬りかかって見ました。

曲がりなりにも単体のエフェクトは本当に土台の土台だけ出来ました。次は全体攻撃・範囲攻撃を実装しなきゃ。

できるかな。
powered by
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。