ページ 11

【解決済み】セーブデータがない場合だけ表示される文字

Posted: 2017年11月02日(木) 17:50
by 栗下義孝
こんにちは。また皆さんのお力を借りたく投稿させて頂きました。
現在ツミオさんの「シンプルなセーブ画面(https://forum.tkool.jp/index.php?thread ... 9D%A2.498/)」を改造して使用しています。
そこで左のウィンドウにセーブデータがない場合「----/--/-- --:--」を表示するという機能を追加したいと思いました。
以下のコードで表示させる事には成功したのですが、セーブデータがある場合も表示されてしまいます。

コード: 全て選択

Window_SavefileList.prototype.drawItem = function(index) {
	var id = index + 1;
	var valid = DataManager.isThisGameFile(id);
	var info = DataManager.loadSavefileInfo(id);
	var rect = this.itemRectForText(index);
	this.resetTextColor();
	if (this._mode === 'load') {
		this.changePaintOpacity(valid);
	}
	this.drawFileId(id, rect.x, rect.y);
	if (info) {
		this.changePaintOpacity(valid);
		this.drawContents(info, rect, valid);
	        this.changePaintOpacity(true);
	}

	//↓追加した要素
	if (DataManager.isAnySavefileExists()) {
		this.drawNoDate(info, rect.x, rect.y, rect.width);
	}
	//↑追加した要素
};

コード: 全て選択

Window_SavefileList.prototype.drawNoDate = function(x, y, width) {
	this.drawText(' -----/---/--- --:-- ', x, y, 472,'right');
};
いろいろ検索してここまで出来ましたが、あと一歩ができず悩んでいます。
どうか宜しくお願い致しますm(_ _)m

Re: セーブデータがない場合だけ表示される文字

Posted: 2017年11月02日(木) 18:10
by ツミオ
こんばんは。
プラグインのご利用ありがとうございます。

試していませんが

コード: 全て選択

   if (DataManager.isAnySavefileExists()) {
      this.drawNoDate(info, rect.x, rect.y, rect.width);
   }
このコードを以下のように改変すればよいと思います。

コード: 全て選択

   if (!valid) {
      this.drawNoDate(info, rect.x, rect.y, rect.width);
   }

Re: セーブデータがない場合だけ表示される文字

Posted: 2017年11月02日(木) 19:58
by 栗下義孝
ツミオさん>

回答ありがとうございました!無事に希望通りの表示になりました!
いつも便利なプラグインをありがとうございますm(_ _)m