1package com.fs.starfarer.api.impl.campaign.rulecmd;
6import com.fs.starfarer.api.Global;
7import com.fs.starfarer.api.campaign.InteractionDialogAPI;
8import com.fs.starfarer.api.campaign.rules.MemoryAPI;
9import com.fs.starfarer.api.util.Misc.Token;
10import com.fs.starfarer.api.util.MutableValue;
18 if (dialog ==
null)
return false;
20 String commodityId = params.get(0).getString(memoryMap);
23 if (params.get(1).isOperator()) {
24 quantity = -1 * params.get(2).getFloat(memoryMap);
27 quantity = params.get(1).getFloat(memoryMap);
32 boolean withText = Math.abs(quantity) >= 1;
33 if (dialog !=
null && params.size() >= next + 1) {
34 withText = params.get(next).getBoolean(memoryMap) && withText;
37 if (commodityId.equals(
"credits")) {
40 credits.
add(quantity);
45 credits.
subtract(Math.abs(quantity));
46 if (credits.
get() < 0) credits.
set(0);
68 if (!
"credits".equals(commodityId)) {
static SectorAPI getSector()
static void addCommodityLossText(String commodityId, int quantity, TextPanelAPI text)
static void addCreditsGainText(int credits, TextPanelAPI text)
static void updatePlayerMemoryQuantity(String commodityId)
static void addCommodityGainText(String commodityId, int quantity, TextPanelAPI text)
static void addCreditsLossText(int credits, TextPanelAPI text)
boolean execute(String ruleId, InteractionDialogAPI dialog, List< Token > params, Map< String, MemoryAPI > memoryMap)
void removeCommodity(String id, float quantity)
MutableValue getCredits()
void addCommodity(String commodityId, float quantity)
TextPanelAPI getTextPanel()
CampaignFleetAPI getPlayerFleet()