Starsector API
Loading...
Searching...
No Matches
SpecialItemOffer.java
Go to the documentation of this file.
1package com.fs.starfarer.api.impl.campaign.intel.bar.events.historian;
2
3import com.fs.starfarer.api.Global;
4import com.fs.starfarer.api.campaign.CargoAPI;
5import com.fs.starfarer.api.campaign.InteractionDialogAPI;
6import com.fs.starfarer.api.campaign.SectorEntityToken;
7import com.fs.starfarer.api.campaign.SpecialItemData;
8import com.fs.starfarer.api.campaign.SpecialItemSpecAPI;
9import com.fs.starfarer.api.impl.campaign.ids.Sounds;
10import com.fs.starfarer.api.impl.campaign.rulecmd.SetStoryOption;
11
13
14 protected int points;
15 protected String data;
16
17 public SpecialItemOffer(SectorEntityToken entity, int points, String id) {
18 super(entity);
19 this.points = points;
20 this.data = id;
21
22 }
23
24 @Override
25 public void addPromptAndOption(InteractionDialogAPI dialog) {
26 SpecialItemSpecAPI spec = Global.getSettings().getSpecialItemSpec(data);
27 dialog.getOptionPanel().addOption("... the possible location of an item (" +
28 spec.getName() + ")",
29 this);
30 SetStoryOption.set(dialog, points, this, "historianBP", Sounds.STORY_POINT_SPEND_TECHNOLOGY,
31 "Learned location of " + spec.getName());
32 }
33
34 public String getSortString() {
35 return "AAA";
36 }
37
38 public String getName() {
39 SpecialItemSpecAPI spec = Global.getSettings().getSpecialItemSpec(data);
40 if (isEnding()) {
41 return spec.getName() + " - Recovered";
42 } else {
43 return spec.getName() + " Location";
44 }
45 }
46
47 @Override
48 protected void addItemToCargo(CargoAPI loot) {
49 loot.addSpecial(new SpecialItemData(data, null), 1);
50 }
51
52 public String getData() {
53 return data;
54 }
55
56}
57
58
59
60
61
62
63
64
65
66
static SettingsAPI getSettings()
Definition Global.java:51
SpecialItemSpecAPI getSpecialItemSpec(String itemId)