RPGのアイテムについてなんですが、メニュー画面でアイテムの名前をソートして表示したいのですが
なかなか考えつきません。構造体でアイテムの名前、番号、持っている数、種類、効果数値を作ってからアイテム欄を開くときにifで0以上のアイテムの番号を配列に代入して番号をソートしてとまで考えたのですがそこから進みません・・・・・・。アイテム欄は次のように表示したいと思っています。
道具 数
毒消し 3
薬草 5
傷薬 3
高級傷薬 1
毒消しがナンバー 1 薬草がナンバー 2 傷薬がナンバー 3 高級傷薬がナンバー 4です。
ヒントだけでも教えてもらえるとありがたいです。そのやり方よりもこっちのやり方の方が良いというのも有りましたら教えて欲しいです。ご指南よろしくお願いします。
vistaでvisual C++2008 Express Edition DXライブラリ
プログラミング知識はここのゲームプログラミングの館とc,c++の絵本という本を読んだ程度です。
RPGでのアイテムについて
Re:RPGでのアイテムについて
>ifで0以上のアイテムの番号を配列に代入して番号をソートして
>とまで考えたのですがそこから進みません
あとは表示するだけじゃないんですか?
・アイテムにIDを振ってある
・所持しているアイテムのみ取得
・ソートした
この後何が進まないのかすみませんが解りません、
上記のどこかで詰まっていると言う事でしょうか?
>とまで考えたのですがそこから進みません
あとは表示するだけじゃないんですか?
・アイテムにIDを振ってある
・所持しているアイテムのみ取得
・ソートした
この後何が進まないのかすみませんが解りません、
上記のどこかで詰まっていると言う事でしょうか?
Re:RPGでのアイテムについて
返信ありがとうございます。
アイテムのIDで名前を表示するというのがなかなか思いつかないのです。
構造体は struck item{
int no;
char name[10];
int stock;
・
・
・
};
という感じのものを考えています。
アイテムのIDで名前を表示するというのがなかなか思いつかないのです。
構造体は struck item{
int no;
char name[10];
int stock;
・
・
・
};
という感じのものを考えています。
Re:RPGでのアイテムについて
ソートするときに個数やIDでアイテムを探し出しますよね?
その時探し当てた配列番号を記憶します。
単純に書くと以下の様になります。
list[/url]に格納されるのはアイテムNoではなく
そのアイテムの配列番号である。
その時探し当てた配列番号を記憶します。
単純に書くと以下の様になります。
list[/url]に格納されるのはアイテムNoではなく
そのアイテムの配列番号である。
for( i=k=0;k<256;k++ ) if( item[k] != 0 ) list[i++] = k;
Re:RPGでのアイテムについて
余談ですが、RPGを作成するエディタのように途中でアイテムデータの順番が
変わったりするのでないならItem No = 配列番号とした方が楽ですよ。
それか読み込んだ時にItem No順にデータを
置き換えないとアイテムを使用するたびに格納された番号を
探す羽目になります。
変わったりするのでないならItem No = 配列番号とした方が楽ですよ。
それか読み込んだ時にItem No順にデータを
置き換えないとアイテムを使用するたびに格納された番号を
探す羽目になります。