RewardPreviewData.java 1.22 KB
Newer Older
Melledy's avatar
Melledy committed
1
package emu.grasscutter.data.excels;
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18

import java.util.Arrays;
import java.util.List;

import emu.grasscutter.Grasscutter;
import emu.grasscutter.data.GameData;
import emu.grasscutter.data.GameResource;
import emu.grasscutter.data.ResourceType;

import emu.grasscutter.game.props.SceneType;

import emu.grasscutter.data.ResourceType.LoadPriority;
import emu.grasscutter.data.common.ItemParamData;
import emu.grasscutter.data.common.ItemParamStringData;

@ResourceType(name = "RewardPreviewExcelConfigData.json", loadPriority = LoadPriority.HIGH)
public class RewardPreviewData extends GameResource {
Melledy's avatar
Melledy committed
19
20
21
	private int id;
	private ItemParamStringData[] previewItems;
	private ItemParamData[] previewItemsArray;
22
23
24
	
	@Override
	public int getId() {
Melledy's avatar
Melledy committed
25
		return this.id;
26
27
28
	}

	public ItemParamData[] getPreviewItems() {
Melledy's avatar
Melledy committed
29
		return previewItemsArray;
30
31
32
33
	}

	@Override
	public void onLoad() {
Melledy's avatar
Melledy committed
34
35
		if (this.previewItems != null && this.previewItems.length > 0) {
			this.previewItemsArray = Arrays.stream(this.previewItems)
36
37
38
39
					.filter(d -> d.getId() > 0 && d.getCount() != null && !d.getCount().isEmpty())
					.map(ItemParamStringData::toItemParamData)
					.toArray(size -> new ItemParamData[size]);
		} else {
Melledy's avatar
Melledy committed
40
			this.previewItemsArray = new ItemParamData[0];
41
42
43
		}
	}
}