ActivityWatcherData.java 1.11 KB
Newer Older
Akka's avatar
Akka committed
1
2
3
4
package emu.grasscutter.data.excels;

import emu.grasscutter.data.GameResource;
import emu.grasscutter.data.ResourceType;
Akka's avatar
Akka committed
5
import emu.grasscutter.game.props.WatcherTriggerType;
Akka's avatar
Akka committed
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
import lombok.AccessLevel;
import lombok.Getter;
import lombok.experimental.FieldDefaults;

import java.util.List;

@ResourceType(name = "NewActivityWatcherConfigData.json", loadPriority = ResourceType.LoadPriority.HIGH)
@Getter
@FieldDefaults(level = AccessLevel.PRIVATE)
public class ActivityWatcherData extends GameResource {
    int id;
    int rewardID;
    int progress;
    WatcherTrigger triggerConfig;

    @Override
    public int getId() {
        return this.id;
    }
    @Override
    public void onLoad() {
        triggerConfig.paramList = triggerConfig.paramList.stream().filter(x -> !x.isBlank()).toList();
Akka's avatar
Akka committed
28
        triggerConfig.watcherTriggerType = WatcherTriggerType.getTypeByName(triggerConfig.triggerType);
Akka's avatar
Akka committed
29
30
31
32
33
34
35
    }

    @Getter
    @FieldDefaults(level = AccessLevel.PRIVATE)
    public static class WatcherTrigger{
        String triggerType;
        List<String> paramList;
Akka's avatar
Akka committed
36
37

        transient WatcherTriggerType watcherTriggerType;
Akka's avatar
Akka committed
38
39
40
    }

}