敵にショットを撃たせてみようの最初のこれ
void enter_shot(int i){
int j;
for(j=0;j<SHOT_MAX;j++){//フラグのたって無いenemyを探す
if(shot[j].flag==0){//未使用の弾幕データがあれば
memset(&shot[j],0,sizeof(shot_t));//初期化して登録
shot[j].flag=1;//フラグをたてる
shot[j].knd=enemy.blknd;//弾の種類
shot[j].num=i;//num=どの敵から発射されたものか。
shot[j].cnt=0;
return ;
}
}
}
//敵の行動制御
void enemy_act(){
int i;
for(i=0;i<ENEMY_MAX;i++){
if(enemy.flag==1){//その敵のフラグがオンになってたら
if(0<=enemy.pattern && enemy.pattern<ENEMY_PATTERN_MAX){
enemy_pattern[enemy.pattern](i);
enemy.x+=cos(enemy.ang)*enemy.sp;
enemy.y+=sin(enemy.ang)*enemy[i].sp;
enemy[i].x+=enemy[i].vx;
enemy[i].y+=enemy[i].vy;
enemy[i].cnt++;
enemy[i].img=enemy[i].muki*3+(enemy[i].cnt%18)/6;
//敵が画面外に外れたら消す
if(enemy[i].x<-20 || FIELD_MAX_X+20<enemy[i].x || enemy[i].y<-20 || FIELD_MAX_Y+20<enemy[i].y)
enemy[i].flag=0;
if(enemy[i].bltime==enemy[i].cnt)
enter_shot(i);
}
else
printfDx("enemy[i].patternの%d値が不正です。",enemy[i].pattern);
}
}
}
どうすればいいかがわからないです教えてください
敵にショットを撃たせてみよう
Re: 敵にショットを撃たせてみよう
言い方変えます
敵にショットを撃たせてみようのところの
最初の enemy.cpp がありますけど
追加するのか変更するのかそれともなにもしなくていいのかがわからないんです
敵にショットを撃たせてみようのところの
最初の enemy.cpp がありますけど
追加するのか変更するのかそれともなにもしなくていいのかがわからないんです
- softya(ソフト屋)
- 副管理人
- 記事: 11677
- 登録日時: 14年前
- 住所: 東海地方
- 連絡を取る:
Re: 敵にショットを撃たせてみよう
既に同じ関数名があれば変更でなければ追加です。
意味を理解するためにも、そのまま写すのではなく今何故こうするのかを考えてやらないと意味がありません。
意味を理解するためにも、そのまま写すのではなく今何故こうするのかを考えてやらないと意味がありません。
by softya(ソフト屋) 方針:私は仕組み・考え方を理解して欲しいので直接的なコードを回答することはまれですので、すぐコードがほしい方はその旨をご明記下さい。私以外の方と交代したいと思います(代わりの方がいる保証は出来かねます)。
- Dixq (管理人)
- 管理人
- 記事: 1662
- 登録日時: 14年前
- 住所: 北海道札幌市
- 連絡を取る:
Re: 敵にショットを撃たせてみよう
まず、現在のプロジェクトに
enter_shotという関数が存在するか確認して下さい。なければ追加すべきことが分かります。
既にあれば、差分を見てどこが変わったか確認して修正して下さい。
また、ソースコードは一式配布しておりますので、そちらでご確認頂いても良いかと思います。
enter_shotという関数が存在するか確認して下さい。なければ追加すべきことが分かります。
既にあれば、差分を見てどこが変わったか確認して修正して下さい。
また、ソースコードは一式配布しておりますので、そちらでご確認頂いても良いかと思います。
Re: 敵にショットを撃たせてみよう
>>Ausutoさん
enter_shotはそのまま追加。
enemy_actは赤字部分を変更、または全体を置き換えればよいです。
>>Dixqさん
13章の
---- enemy.cpp ----を
---- enemy.cppを変更 ----とすればよいのではないでしょうか。
他は変更とか追加とか書かれているのに
これはファイルの名前だけなのが気になったのでしょう。
あと、
http://dixq.net/forum/viewtopic.php?f=3&t=11281
に回答するときに14章のページを見たのですが
エクセルデータはそれまでのを変更ではなく、
配布プロジェクトと同じように14章用のcsvとして保存とし、
load_story()のファイルパスの変更も書いたほうがよいでしょう。
---- define.h に以下を「追加」 ----
#define SHOT_KND_MAX 7
となっていますが
13章に
#define SHOT_KND_MAX 1
があるので「変更」ですね。
最後の文で脱字。
実行結果のように色々な弾幕を敵「が」撃てば成功です。
enter_shotはそのまま追加。
enemy_actは赤字部分を変更、または全体を置き換えればよいです。
>>Dixqさん
13章の
---- enemy.cpp ----を
---- enemy.cppを変更 ----とすればよいのではないでしょうか。
他は変更とか追加とか書かれているのに
これはファイルの名前だけなのが気になったのでしょう。
あと、
http://dixq.net/forum/viewtopic.php?f=3&t=11281
に回答するときに14章のページを見たのですが
エクセルデータはそれまでのを変更ではなく、
配布プロジェクトと同じように14章用のcsvとして保存とし、
load_story()のファイルパスの変更も書いたほうがよいでしょう。
---- define.h に以下を「追加」 ----
#define SHOT_KND_MAX 7
となっていますが
13章に
#define SHOT_KND_MAX 1
があるので「変更」ですね。
最後の文で脱字。
実行結果のように色々な弾幕を敵「が」撃てば成功です。
Re: 敵にショットを撃たせてみよう
皆さんありがとうございます。
ではこの場合は
--- shot.cpp (のinclude文の直後) に以下を追加 ---
と書いてありますが(のinclude文の直後)とはどれなのでしょうか?
スイマセンがこれもお答えして欲しいです。
ではこの場合は
--- shot.cpp (のinclude文の直後) に以下を追加 ---
と書いてありますが(のinclude文の直後)とはどれなのでしょうか?
スイマセンがこれもお答えして欲しいです。
- softya(ソフト屋)
- 副管理人
- 記事: 11677
- 登録日時: 14年前
- 住所: 東海地方
- 連絡を取る:
Re: 敵にショットを撃たせてみよう
これはinclude文が何か分からないという質問でしょうか?Ausuto さんが書きました:皆さんありがとうございます。
ではこの場合は
--- shot.cpp (のinclude文の直後) に以下を追加 ---
と書いてありますが(のinclude文の直後)とはどれなのでしょうか?
スイマセンがこれもお答えして欲しいです。
by softya(ソフト屋) 方針:私は仕組み・考え方を理解して欲しいので直接的なコードを回答することはまれですので、すぐコードがほしい方はその旨をご明記下さい。私以外の方と交代したいと思います(代わりの方がいる保証は出来かねます)。
Re: 敵にショットを撃たせてみよう
>>Ausutoさん
include文というのは
#include "../include/GV.h"
のことですがそれまでのページには書いていませんね。
shot.cppの最初に
#include "../include/GV.h"
を追加してください。
>>Dixqさん
13章のshot.cppの追加内容に
#include "../include/GV.h"
を追加してください。
1章のページに脱字。
今後章ごとにダウ「ン」ロードしたファイルはこのように追加して行って下さい。
include文というのは
#include "../include/GV.h"
のことですがそれまでのページには書いていませんね。
shot.cppの最初に
#include "../include/GV.h"
を追加してください。
>>Dixqさん
13章のshot.cppの追加内容に
#include "../include/GV.h"
を追加してください。
1章のページに脱字。
今後章ごとにダウ「ン」ロードしたファイルはこのように追加して行って下さい。
- Dixq (管理人)
- 管理人
- 記事: 1662
- 登録日時: 14年前
- 住所: 北海道札幌市
- 連絡を取る:
Re: 敵にショットを撃たせてみよう
>Tatuさん
ご指摘ありがとうございます。
修正しました。
14章用のcsvとして保存する件については、確かに仰る通りですね。検討させて下さい。
ご指摘ありがとうございます。
修正しました。
14章用のcsvとして保存する件については、確かに仰る通りですね。検討させて下さい。