龍神録のスペルについて

フォーラム(掲示板)ルール
フォーラム(掲示板)ルールはこちら  ※コードを貼り付ける場合は [code][/code] で囲って下さい。詳しくはこちら
燐子
記事: 7
登録日時: 14年前
住所: 千葉県

龍神録のスペルについて

#1

投稿記事 by 燐子 » 14年前

6つのスペルを作ったのですが、6つ目を読み取ってくれません…

龍神録の42章を書き換えてスペカを作っていました
初めは6つをばらばらに作っていて、6つ作り終わったので、ひとつのデータにまとめたら、6つ目だけが出てきませんでした
ビルドは失敗していません
エラーも出ずにちゃんと正常終了しています。


確認したこと
・6つのスペルを別々に確認するとちゃんと動作しました。

・boss_shotH.cppのスペルには
void boss_shot_bulletH000()
void boss_shot_bulletH001()
void boss_shot_bulletH002()
void boss_shot_bulletH003()
void boss_shot_bulletH004()
void boss_shot_bulletH005()
がありました。

・func.hには
boss_shot_bulletH000,
boss_shot_bulletH001,
boss_shot_bulletH002,
boss_shot_bulletH003,
boss_shot_bulletH004,
boss_shot_bulletH005,
が書いてあります。

・boss_shotH.cppとfunc.h以外は、ini.cppの「弾幕それぞれのHP」を1000にしたことしか変えていません。
つまり、boss_shotH.cppとfunc.hとini.cpp以外には触れていません。


その他の症状
・func.hにboss_shot_bulletH005,を書き込むとfunc.hを書き換えても
このプロジェクトは変更されています
の文字が出ません。
・上記の「6つ目だけが出てきませんでした」とは、
6つ目が出て来ずに1番目のスペルが3回出てきて、その後に「RyuJin.exeは動作を停止しました」と表示され、止まってしまう状態です。



考えられる改善策など、ありましたら教えてください。
最後に編集したユーザー 燐子 on 2012年2月05日(日) 10:27 [ 編集 1 回目 ]

アバター
softya(ソフト屋)
副管理人
記事: 11677
登録日時: 15年前
住所: 東海地方
連絡を取る:

Re: 龍神録のスペルについて

#2

投稿記事 by softya(ソフト屋) » 14年前

だれも書きこまない様ですね。
龍神録の42章あたりは把握していないのですが、ブレークポイントなどで分岐しているか?とか分岐前の処理で条件をみたすことがあるのか?事を調べてみたほうが良いと思います。

「太田研究室 > Visual C++ 2010 Express プログラミング入門 プログラムのデバッグ実行」
http://cvwww.ee.ous.ac.jp/vc10prog.html#7
by softya(ソフト屋) 方針:私は仕組み・考え方を理解して欲しいので直接的なコードを回答することはまれですので、すぐコードがほしい方はその旨をご明記下さい。私以外の方と交代したいと思います(代わりの方がいる保証は出来かねます)。

アバター
みけCAT
記事: 6734
登録日時: 15年前
住所: 千葉県
連絡を取る:

Re: 龍神録のスペルについて

#3

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

func.hをインクルードしているソースファイルを少し書き換えて上書き保存し、
もとに戻して上書き保存してください。
こうすることによりfunc.hの変更を反映してそのソースコードごとコンパイルされるはずです。
(少なくともDev-C++の場合)

使用している開発環境を教えてください。
複雑な問題?マシンの性能を上げてOpenMPで殴ればいい!(死亡フラグ)

燐子
記事: 7
登録日時: 14年前
住所: 千葉県

Re: 龍神録のスペルについて

#4

投稿記事 by 燐子 » 14年前

回答ありがとうございます!!m(_ _)m

>ソフト屋さん
ブレークポイントを5つ目のスペルの書き始めの場所に設定すると、5つ目が始まる前に一時停止するのですが、6つ目のスペルの書き始めの場所に設定すると、5つ目までのスペルが正常に出た後に、1つ目のスペルが3回出てきて、その後に
RyuJin.exe の 0x00000000 でハンドルされていない例外が発生しました: 0xC0000005: 場所 0x00000000 を読み込み中にアクセス違反が発生しました。
というよくわからない表示が出ました。

一つ目が3回出てきたのは、func.hに6つ目のスペルを追加する前にfunc.hが、
boss_shot_bulletH000,
boss_shot_bulletH001,
boss_shot_bulletH002,
boss_shot_bulletH003,
boss_shot_bulletH004,
boss_shot_bulletH000,
boss_shot_bulletH000,
boss_shot_bulletH000,
の様になっていたのが原因かと思われます。
どうしてもboss_shot_bulletH005,を書き込んだ後のfunc.hを読み取ってくれないようです…

それと言い忘れていたのですが、私の質問の「6つ目だけが出てきませんでした」も、6つ目が出て来ずに1番目のスペルが3回出てきて、その後に「RyuJin.exeは動作を停止しました」と表示され、止まってしまいます。
質問のその他の症状に追加しておきます。


<みけCATさん
「func.hをインクルードしているソースファイル」とは、
#include "../include/func.h"などと書かれているファイルですよね?
只今探しています。

開発環境とは…どこら辺を答えればよいのでしょう…私無知なもので…
使っているソフト(?)はVisual C++です。

アバター
Dixq (管理人)
管理人
記事: 1662
登録日時: 15年前
住所: 北海道札幌市
連絡を取る:

Re: 龍神録のスペルについて

#5

投稿記事 by Dixq (管理人) » 14年前

ヘッダだけ変更すると時々コンパイラがちゃんとコンパイルしてくれないことがあるようです。
メニューバーのビルド>「リビルド」を行ってみて下さい。

どうしても原因が分からないようなら、42章フォルダをzipにして添付して頂ければこちらで確認しますよ。
(その際.ncbファイルやDebugフォルダ等不要な物は削除して下さい)

燐子
記事: 7
登録日時: 14年前
住所: 千葉県

Re: 龍神録のスペルについて

#6

投稿記事 by 燐子 » 14年前

>みけCATさん
boss_shot.cppに#include "../include/func.h"とあったので、あなたが教えてくださった方法を試したら、無事、読み込んでくれました
ありがとうございます!(m´∀`)m


>管理人さん
回答、親切にありがとうございます
今後、読み込めないことがあったら、あなたの教えてくださった方法を使わせてもらいますm(_ _)m

アバター
Dixq (管理人)
管理人
記事: 1662
登録日時: 15年前
住所: 北海道札幌市
連絡を取る:

Re: 龍神録のスペルについて

#7

投稿記事 by Dixq (管理人) » 14年前

解決してよかったですね。
みけCATさんが書いているのは、
includeしているソースを変更することでヘッダも更新されるという点で
実質的に私が書いている事と同じなので、それで解決したなら、リビルドの必要はないと思います。
ただ、何らかのことが原因で整合性が取れなくなっている可能性もあるので、
おかしくなったら「リビルド、キャッシュされそうなデータをクリアし、VC++再起動」を行ってみると良いかと思います。

閉鎖

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