Starsector API
Loading...
Searching...
No Matches
CommodityIconCounts.java
Go to the documentation of this file.
1
package
com.fs.starfarer.api.impl.campaign.econ;
2
3
import
com.fs.starfarer.api.Global;
4
import
com.fs.starfarer.api.campaign.econ.CommodityOnMarketAPI;
5
6
public
class
CommodityIconCounts
{
7
8
protected
CommodityOnMarketAPI
com
;
9
10
public
int
available
;
11
public
int
production
;
12
public
int
demand
;
13
public
int
nonDemandExport
;
14
public
int
deficit
;
15
public
int
imports
;
16
public
int
demandMetWithLocal
;
17
public
int
demandMet
;
18
public
int
globalExport
;
19
public
int
inFactionOnlyExport
;
20
public
int
canNotExport
;
21
public
int
extra
;
22
23
public
CommodityIconCounts
(CommodityOnMarketAPI
com
) {
24
this.com =
com
;
25
26
// int shippingGlobal = CommodityMarketData.getShippingCapacity(com.getMarket(), false);
27
// int shippingInFaction = CommodityMarketData.getShippingCapacity(com.getMarket(), true);
28
int
shippingGlobal =
Global
.
getSettings
().
getShippingCapacity
(
com
.getMarket(),
false
);
29
int
shippingInFaction =
Global
.
getSettings
().
getShippingCapacity
(
com
.getMarket(),
true
);
30
31
// if (com.getId().equals("food") && com.getMarket().getId().equals("jangala")) {
32
// System.out.println("efwefwef");
33
// }
34
35
available
=
com
.getAvailable();
36
production
=
com
.getMaxSupply();
37
// if (com.getCommodity().isPrimary()) {
38
// List<CommodityOnMarket> withSameDemandClass = ((Market)com.getMarket()).getCommoditiesWithClass(com.getDemandClass());
39
// for (CommodityOnMarket other : withSameDemandClass) {
40
// if (com == other) continue;
41
// production += other.getMaxSupply();
42
// }
43
// }
44
production
= Math.min(
production
,
available
);
45
46
int
export = 0;
47
demand
=
com
.getMaxDemand();
48
export = (int) Math.min(
production
, shippingGlobal);
49
50
extra
=
available
- Math.max(export,
demand
);
51
if
(
extra
< 0)
extra
= 0;
52
53
deficit
=
demand
-
available
;
54
demandMet
= Math.min(
available
,
demand
);
55
56
demandMetWithLocal
= Math.min(
available
,
production
) -
extra
;
57
//imports = available - production - extra;
58
imports
=
available
-
production
;
59
60
61
nonDemandExport
= 0;
62
if
(
demandMetWithLocal
>
demand
&&
demand
> 0) {
63
nonDemandExport
=
demandMetWithLocal
-
demand
;
64
demandMetWithLocal
=
demand
;
65
}
66
67
globalExport
=
production
;
68
inFactionOnlyExport
= 0;
69
canNotExport
= 0;
70
71
72
// if (com.getMarket().getName().equals("Stral") && com.getId().equals(Commodities.SUPPLIES)) {
73
// System.out.println("wefwefe");
74
// }
75
76
if
(
globalExport
> shippingGlobal) {
77
inFactionOnlyExport
=
globalExport
- shippingGlobal;
78
globalExport
= shippingGlobal;
79
}
80
if
(
globalExport
+
inFactionOnlyExport
> shippingInFaction) {
81
canNotExport
=
globalExport
+
inFactionOnlyExport
- shippingInFaction;
82
inFactionOnlyExport
-=
canNotExport
;
83
}
84
85
int
aboveMax = Math.max(
demandMetWithLocal
,
globalExport
) +
canNotExport
+
inFactionOnlyExport
- (
available
-
imports
);
86
if
(aboveMax > 0) {
87
inFactionOnlyExport
-= aboveMax;
88
if
(
inFactionOnlyExport
< 0) {
89
canNotExport
+=
inFactionOnlyExport
;
90
}
91
}
92
93
94
if
(
inFactionOnlyExport
< 0)
inFactionOnlyExport
= 0;
95
if
(
canNotExport
< 0)
canNotExport
= 0;
96
if
(
nonDemandExport
< 0)
nonDemandExport
= 0;
97
if
(
imports
< 0)
imports
= 0;
98
if
(
deficit
< 0)
deficit
= 0;
99
if
(
demandMetWithLocal
< 0)
demandMetWithLocal
= 0;
100
}
101
102
}
103
104
105
106
107
108
109
110
com.fs.starfarer.api.Global
Definition
Global.java:13
com.fs.starfarer.api.Global.getSettings
static SettingsAPI getSettings()
Definition
Global.java:51
com.fs.starfarer.api.impl.campaign.econ.CommodityIconCounts
Definition
CommodityIconCounts.java:6
com.fs.starfarer.api.impl.campaign.econ.CommodityIconCounts.inFactionOnlyExport
int inFactionOnlyExport
Definition
CommodityIconCounts.java:19
com.fs.starfarer.api.impl.campaign.econ.CommodityIconCounts.available
int available
Definition
CommodityIconCounts.java:10
com.fs.starfarer.api.impl.campaign.econ.CommodityIconCounts.deficit
int deficit
Definition
CommodityIconCounts.java:14
com.fs.starfarer.api.impl.campaign.econ.CommodityIconCounts.extra
int extra
Definition
CommodityIconCounts.java:21
com.fs.starfarer.api.impl.campaign.econ.CommodityIconCounts.CommodityIconCounts
CommodityIconCounts(CommodityOnMarketAPI com)
Definition
CommodityIconCounts.java:23
com.fs.starfarer.api.impl.campaign.econ.CommodityIconCounts.production
int production
Definition
CommodityIconCounts.java:11
com.fs.starfarer.api.impl.campaign.econ.CommodityIconCounts.demand
int demand
Definition
CommodityIconCounts.java:12
com.fs.starfarer.api.impl.campaign.econ.CommodityIconCounts.demandMet
int demandMet
Definition
CommodityIconCounts.java:17
com.fs.starfarer.api.impl.campaign.econ.CommodityIconCounts.demandMetWithLocal
int demandMetWithLocal
Definition
CommodityIconCounts.java:16
com.fs.starfarer.api.impl.campaign.econ.CommodityIconCounts.com
CommodityOnMarketAPI com
Definition
CommodityIconCounts.java:8
com.fs.starfarer.api.impl.campaign.econ.CommodityIconCounts.imports
int imports
Definition
CommodityIconCounts.java:15
com.fs.starfarer.api.impl.campaign.econ.CommodityIconCounts.globalExport
int globalExport
Definition
CommodityIconCounts.java:18
com.fs.starfarer.api.impl.campaign.econ.CommodityIconCounts.nonDemandExport
int nonDemandExport
Definition
CommodityIconCounts.java:13
com.fs.starfarer.api.impl.campaign.econ.CommodityIconCounts.canNotExport
int canNotExport
Definition
CommodityIconCounts.java:20
com.fs.starfarer.api.SettingsAPI.getShippingCapacity
int getShippingCapacity(MarketAPI market, boolean inFaction)
src
com
fs
starfarer
api
impl
campaign
econ
CommodityIconCounts.java
Generated by
1.9.8