※ ChatGPTを利用し、要約された質問です(原文:ノベルゲームを作る場合、)
ノベルゲーム作成時のテキスト表示方法についての問題
このQ&Aのポイント
ノベルゲームを作る際、テキストを表示する方法について質問です。
現在、ノベルゲームのテキスト表示はLabelクラスを使用し、XMLファイルからテキストを読み込んでいます。
現在の実装では、読み終えたテキストをArrayListに保存しているため、150KBのテキストをすべてArrayListに詰め込むことによる動作の支障や、読み終えたテキストの破棄について悩んでいます。
現在C#にてゼロからノベルゲームの体裁をもってたものをつくっています。
そこで質問です。現在、ノベルゲームのテキストを表示させる箇所をLabelクラスで
画面下部に表示させているのですが、これはexeファイルと同階層においてある
XMLディレクトリ内のXMLファイルに記述されたテキストをArrayListクラスを用いて
テキストを保存しており、それを1クリックごとにArrayListのindexをひとつづつ進めて
テキスト(ストーリー)を進めるような形にしています。
1.xml
2.xml
3.xml
などという風に章ごとにxmlファイルを複数に分けておき
ゲームを進めるたびに、たとえば1.xmlファイルが読み終えたら自作定義したイベントを走らせ
コントロール側で2.xmlファイルをそのLabelオブジェクトにわたしてやります。
ここで問題というか気になった点が、現在作っているものに関しては、すでに読み終えたテキスト(つまりログですね)をマウスのホイールイベントで巻き戻せるように、ArrayListの中に蓄積したままにしているのです。つまりホイールをまわすたびにArrayLisntのindexをマイナスしていくということです。
しかし、実際にシナリオは全部で150KBほどになると思われます。
この150KBのテキストをすべてArrayListに詰め込むことによって動作に支障がでるようなことってあるのでしょうか?
あるいは、ひとつのxmlファイルを読み終えたあとはそのデータをすべて破棄して、現在呼んでいるxmlファイルの
テキストのみをArrayListに保存しておくという風にしたほうがやはり動作的に軽快でしょうか?
どなたかこの手の実装に詳しいかたご教授ください。