RPGでのアイテムについて

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

RPGでのアイテムについて

#1

投稿記事 by stomach » 16年前

RPGのアイテムについてなんですが、メニュー画面でアイテムの名前をソートして表示したいのですが
なかなか考えつきません。構造体でアイテムの名前、番号、持っている数、種類、効果数値を作ってからアイテム欄を開くときにifで0以上のアイテムの番号を配列に代入して番号をソートしてとまで考えたのですがそこから進みません・・・・・・。アイテム欄は次のように表示したいと思っています。

道具    数

毒消し   3  
薬草    5
傷薬    3
高級傷薬 1


毒消しがナンバー 1 薬草がナンバー 2 傷薬がナンバー 3 高級傷薬がナンバー 4です。

ヒントだけでも教えてもらえるとありがたいです。そのやり方よりもこっちのやり方の方が良いというのも有りましたら教えて欲しいです。ご指南よろしくお願いします。

vistaでvisual C++2008 Express Edition DXライブラリ
プログラミング知識はここのゲームプログラミングの館とc,c++の絵本という本を読んだ程度です。

SooA

Re:RPGでのアイテムについて

#2

投稿記事 by SooA » 16年前

>ifで0以上のアイテムの番号を配列に代入して番号をソートして
>とまで考えたのですがそこから進みません
あとは表示するだけじゃないんですか?

・アイテムにIDを振ってある
・所持しているアイテムのみ取得
・ソートした

この後何が進まないのかすみませんが解りません、
上記のどこかで詰まっていると言う事でしょうか?

stomach

Re:RPGでのアイテムについて

#3

投稿記事 by stomach » 16年前

返信ありがとうございます。
アイテムのIDで名前を表示するというのがなかなか思いつかないのです。

構造体は struck item{
int no;
char name[10];
int stock;
        ・
        ・       
        ・
     };
という感じのものを考えています。

SooA

Re:RPGでのアイテムについて

#4

投稿記事 by SooA » 16年前

ソートするときに個数やIDでアイテムを探し出しますよね?
その時探し当てた配列番号を記憶します。

単純に書くと以下の様になります。
list[/url]に格納されるのはアイテムNoではなく
そのアイテムの配列番号である。
for( i=k=0;k<256;k++ )
	if( item[k] != 0 )
		list[i++] = k;

SooA

Re:RPGでのアイテムについて

#5

投稿記事 by SooA » 16年前

余談ですが、RPGを作成するエディタのように途中でアイテムデータの順番が
変わったりするのでないならItem No = 配列番号とした方が楽ですよ。

それか読み込んだ時にItem No順にデータを
置き換えないとアイテムを使用するたびに格納された番号を
探す羽目になります。

stomach

Re:RPGでのアイテムについて

#6

投稿記事 by stomach » 16年前

SooAさんのおかげで解決できました!ありがとうございます!
素早い返信とても助かりました。

閉鎖

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