Starsector API
Loading...
Searching...
No Matches
GalatiaMarketScript.java
Go to the documentation of this file.
1package com.fs.starfarer.api.impl.campaign.tutorial;
2
3import com.fs.starfarer.api.EveryFrameScript;
4import com.fs.starfarer.api.Global;
5import com.fs.starfarer.api.campaign.FactionAPI;
6import com.fs.starfarer.api.campaign.econ.CommodityOnMarketAPI;
7import com.fs.starfarer.api.campaign.econ.MarketAPI;
8import com.fs.starfarer.api.campaign.econ.MarketDemandAPI;
9import com.fs.starfarer.api.impl.campaign.ids.Commodities;
10import com.fs.starfarer.api.util.IntervalUtil;
11
12public class GalatiaMarketScript implements EveryFrameScript {
13
14 protected MarketAPI market;
15 protected IntervalUtil interval = new IntervalUtil(15f, 25f);
16
17 public GalatiaMarketScript(MarketAPI market) {
18 this.market = market;
19
20 FactionAPI faction = market.getFaction();
21 market.getTariff().modifyFlat("default_tariff", faction.getTariffFraction());
22
24 }
25
26 Object readResolve() {
27 market.updatePrices();
28 return this;
29 }
30
31 public void advance(float amount) {
32 float days = Global.getSector().getClock().convertToDays(amount);
33 interval.advance(days);
34 if (!interval.intervalElapsed()) return;
35
37 }
38
39 protected void updateCommodities() {
40 for (CommodityOnMarketAPI com : market.getAllCommodities()) {
41 //com.setStockpile(com.getSupplyValue());
42 com.setStockpile(200);
43 }
44
45 for (MarketDemandAPI demand : market.getDemandData().getDemandList()) {
46 CommodityOnMarketAPI com = market.getCommodityData(demand.getBaseCommodity().getId());
47 com.addToStockpile(demand.getDemandValue());
48 }
49
50 CommodityOnMarketAPI supplies = market.getCommodityData(Commodities.SUPPLIES);
51 supplies.addToStockpile(100f + 100f * (float) Math.random());
52
53 CommodityOnMarketAPI fuel = market.getCommodityData(Commodities.FUEL);
54 fuel.addToStockpile(100f + 100f * (float) Math.random());
55
56 //Global.getSector().getEconomy().updateStabilityAndPriceMult(market);
57 market.updatePrices();
58 }
59
60 public boolean isDone() {
61 return market.isInEconomy();
62 }
63
64 public boolean runWhilePaused() {
65 return false;
66 }
67
68}
69
70
71
72
73
74
75
76
static SectorAPI getSector()
Definition Global.java:59