LoadDivGraph相当のコード

フォーラム(掲示板)ルール
フォーラム(掲示板)ルールはこちら  ※コードを貼り付ける場合は [code][/code] で囲って下さい。詳しくはこちら
みけCAT

LoadDivGraph相当のコード

#1

投稿記事 by みけCAT » 15年前

無謀かもしれませんが、龍神録をDXライブラリを使わずに作ってみようとしています。
しかし、4章でつまずきました。
メインのループに入ってくれません。
メインのループとは、GameThread関数内のwhileのことです。
いろいろ調べてみたところ、
自作LoadDivGraph関数の中の
output[yy*x+xx].bmp=bmp;
output[yy*x+xx].x=xx*sx;
output[yy*x+xx].sizex=sx;
output[yy*x+xx].y=yy*sy;
output[yy*x+xx].sizey=sy;
のところをコメントアウトすると一応動いてくれました。
どこが悪いか教えてくださる人がいたら幸いです。
プロジェクトは添付しました。
画像は「プロジェクトを一括ダウンロード」の中の画像を同名でbmpに変換したものを使用しています。
プロジェクトの変換はhttp://sourceforge.jp/projects/sfnet_prjconverter/を使用しました。

softya

Re:LoadDivGraph相当のコード

#2

投稿記事 by softya » 15年前

extern gazou img_ch[2][12];でリンクエラーが出ますが何か足らないってことでしょうか?
実体は何処で定義されていますか?

みけCAT

Re:LoadDivGraph相当のコード

#3

投稿記事 by みけCAT » 15年前

main.cpp内の
int img_ch[2][12];    //キャラクタ画像9枚分 X2(変身用)
gazou img_ch[2][12];    //キャラクタ画像9枚分 X2(変身用)
に直したらうまくいきました。
ありがとうございました。
透過処理とかはまたあとで考えます。

みけCAT

Re:LoadDivGraph相当のコード

#4

投稿記事 by みけCAT » 15年前

とりあえず実行結果に近くなるようにfunction.cppを修正しました。
DrawRotaGraphF関数内です。
修正前
StretchBlt(to,x,y,
        (int)(graph->sizex*ExtRate),(int)(graph->sizey*ExtRate),
        gazoufordraw,graph->x,graph->y,graph->sizex,graph->sizey,
        SRCCOPY);
修正後
StretchBlt(to,x-graph->sizex/2,y-graph->sizey/2,
        (int)(graph->sizex*ExtRate),(int)(graph->sizey*ExtRate),
        gazoufordraw,graph->x,graph->y,graph->sizex,graph->sizey,
        SRCCOPY);

閉鎖

“C言語何でも質問掲示板” へ戻る