roji さんが書きました: ↑5年前
メインプログラムのif (talk == 0) { talkdrow(); }の部分でtalk.hの中に書いてある関数 talkdrow()の中の変数talkの値が変わらないため画面が展開しません。
これは本当ですか?
「メイン関数の中の変数talkの値が変わらないため画面が展開しません。」の間違いではないですか?
roji さんが書きました: ↑5年前
talk == 1とtalk == 2の時の文字が描画されません。どうしたら描画されるでしょうか。
色の取得をグローバル変数の初期化時(→DxLib_Init()を呼ぶ前)ではなく
DxLib_Init()を呼んだ後にすることで、正しく色を取得できるようにすると、
描画される可能性が考えられます。
(ざっとコードを眺めただけなので、間違っているかもしれません)
roji さんが書きました: ↑5年前
また、なぜメインプログラムの変数をSeenに編集したら変数talkがキーAによりちゃんと上がったのでしょうか。
というのも編集前のメインのtalkはヘッダファイルtalk.hの変数talkと同じなので、talk.hのtalkがキーAにより上がるとメインプログラムの変数talkも値を引き継いで上がった値を持つと思っていたためです。
「編集前のメインのtalk」はmain関数のローカル変数であり、同じ名前でもスコープが違う別の変数です。
Seenはmain関数内でローカル変数として定義されていないので、
「Seenに編集したら変数talkが」の「変数talk」がSeenのことであると仮定すれば、同じ変数を参照できたのでしょう。
roji さんが書きました: ↑5年前
最後に戦闘画面に移る際に最初の数秒間だけ自分と敵の画像が描画されないのですがどうしたらいいでしょうか。
ざっとコードを眺めただけではわかりませんでした。
後で詳しく見たいと思います。