001package com.fs.starfarer.api.impl.campaign.econ;
002
003import java.awt.Color;
004
005import com.fs.starfarer.api.Global;
006import com.fs.starfarer.api.impl.campaign.intel.PerseanLeagueMembership;
007import com.fs.starfarer.api.impl.campaign.intel.events.EstablishedPolityScript;
008import com.fs.starfarer.api.ui.TooltipMakerAPI;
009import com.fs.starfarer.api.util.Misc;
010
011public class EstablishedPolity extends BaseMarketConditionPlugin {
012
013        public static float ACCESSIBILITY_BONUS = 0.1f;
014        
015        public static String NAME_BASE = "Established Polity";
016        public static String NAME_LEAGUE = "League development programs";
017        
018        public EstablishedPolity() {
019        }
020
021        public void apply(String id) {
022                String text = Misc.ucFirst(getName().toLowerCase());
023//              if (PerseanLeagueMembership.isLeagueMember()) {
024//                      text = "New Persean League member";
025//              }
026                market.getAccessibilityMod().modifyFlat(id, ACCESSIBILITY_BONUS, text);
027        }
028
029        public void unapply(String id) {
030                market.getAccessibilityMod().unmodifyFlat(id);
031        }
032        
033        @Override
034        public void createTooltipAfterDescription(TooltipMakerAPI tooltip, boolean expanded) {
035                EstablishedPolityScript script = EstablishedPolityScript.get();
036                if (script == null) return;
037                
038                Color h = Misc.getHighlightColor();
039                
040                float opad = 10f;
041                
042                if (PerseanLeagueMembership.isLeagueMember()) {
043                        tooltip.addPara("Your colonies are recently joined members of the Persean League, resulting in an increased "
044                                        + "flow of commerce.", opad);
045                } else {
046                        tooltip.addPara("You've proven the independence and strength of your colonies by defeating a "
047                                        + "Persean League force sent against you, and are viewed as a stable trading partner.", opad);
048                }
049                
050                tooltip.addPara("%s accessibility.", 
051                                opad, h,
052                                "+" + (int)Math.round(ACCESSIBILITY_BONUS * 100f) + "%");
053        }
054
055        @Override
056        public boolean hasCustomTooltip() {
057                return true;
058        }
059
060
061        @Override
062        public String getName() {
063                if (PerseanLeagueMembership.isLeagueMember()) {
064                        return NAME_LEAGUE;
065                }
066                return NAME_BASE;
067        }
068
069
070        @Override
071        public String getIconName() {
072                if (PerseanLeagueMembership.isLeagueMember()) {
073                        return Global.getSettings().getSpriteName("events", "new_league_member");
074                }
075                return super.getIconName();
076        }
077        
078        
079
080}
081
082
083
084
085