Starsector API
Loading...
Searching...
No Matches
InvestigationEventCommSniffer.java
Go to the documentation of this file.
1package com.fs.starfarer.api.impl.campaign.events;
2
3import java.util.Map;
4
5import com.fs.starfarer.api.Global;
6import com.fs.starfarer.api.campaign.BaseOnMessageDeliveryScript;
7import com.fs.starfarer.api.campaign.comm.CommMessageAPI;
8import com.fs.starfarer.api.campaign.comm.MessagePriority;
9import com.fs.starfarer.api.impl.campaign.CoreReputationPlugin.RepActionEnvelope;
10import com.fs.starfarer.api.impl.campaign.CoreReputationPlugin.RepActions;
11
12
14
16 super();
17 }
18
19 @Override
20 public void startEvent() {
21 if (faction == null || faction.isNeutralFaction()) {
22 log.info("Aborting comm sniffer invesitgation on " + entity.getName() + ", null or neutral faction");
23 endEvent();
24 }
25
26 Global.getSector().getIntel().getCommSnifferLocations().remove(entity);
27
28 InvestigationEventParams params =
29 new InvestigationEventParams("Comm sniffer investigation - " + entity.getName(), "start_comm_sniffer");
30
31 params.warningPriority = MessagePriority.ENSURE_DELIVERY;
32 params.minInitialDelay = 0;
33 params.maxInitialDelay = 0f;
34
35 float guiltMult = getPlayerRepGuiltMult(faction);
36
37 InvestigationResult clear = new InvestigationResult(null, null);
38 InvestigationResult guilty = new InvestigationResult("player_guilty_comm_sniffer", MessagePriority.ENSURE_DELIVERY);
39 params.results.add(clear);
40 params.results.add(guilty);
41
42 clear.weight = 100f;
43 guilty.weight = 25f * guiltMult;
44
45 guilty.onDelivery = new BaseOnMessageDeliveryScript() {
46 public void beforeDelivery(CommMessageAPI message) {
47 Global.getSector().adjustPlayerReputation(
48 new RepActionEnvelope(RepActions.COMM_SNIFFER_INVESTIGATION_GUILTY, null, null, true),
49 faction.getId());
50 }
51 };
52
53 setParam(params);
54
55 super.startEvent();
56 }
57
58 @Override
59 public Map<String, String> getTokenReplacements() {
60 return super.getTokenReplacements();
61 }
62
63}
64
65
66
67
68
69
70
71
72
static SectorAPI getSector()
Definition Global.java:59