001package com.fs.starfarer.api.campaign; 002 003import java.util.Set; 004 005import java.awt.Color; 006 007import org.lwjgl.util.vector.Vector3f; 008 009import com.fs.starfarer.api.loading.WithSourceMod; 010 011public interface PlanetSpecAPI extends WithSourceMod { 012 String getName(); 013 float getTilt(); 014 float getPitch(); 015 float getRotation(); 016 Color getPlanetColor(); 017 float getAtmosphereThickness(); 018 Color getAtmosphereColor(); 019 boolean isStar(); 020 String getPlanetType(); 021 float getAtmosphereThicknessMin(); 022 Vector3f getLightPosition(); 023 float getCloudRotation(); 024 //float getCloudOffset(); 025 Color getIconColor(); 026 Color getCloudColor(); 027 028 void setTilt(float tilt); 029 void setPitch(float pitch); 030 void setRotation(float rotation); 031 void setPlanetColor(Color planetColor); 032 void setCloudRotation(float cloudRotation); 033 void setAtmosphereThickness(float atmosphereThickness); 034 void setAtmosphereThicknessMin(float atmosphereThicknessMin); 035 void setAtmosphereColor(Color atmosphereColor); 036 void setCloudColor(Color cloudColor); 037 void setIconColor(Color iconColor); 038 //void setCloudOffset(float cloudOffset); 039 040 float getCoronaSize(); 041 void setCoronaSize(float coronaSize); 042 Color getCoronaColor(); 043 void setCoronaColor(Color coronaColor); 044 045 /** 046 * Use SettingsAPI.getSpriteName(String category, String id) to get the texture name to pass in here. 047 * The texture needs to already be loaded (which textures from settings.json will be). 048 * Do NOT just pass in a filename for a texture that's not already loaded. 049 * @return 050 */ 051 String getCloudTexture(); 052 void setCloudTexture(String textureName); 053 054 /** 055 * Use SettingsAPI.getSpriteName(String category, String id) to get the texture name to pass in here. 056 * The texture needs to already be loaded (which textures from settings.json will be). 057 * Do NOT just pass in a filename for a texture that's not already loaded. 058 * @return 059 */ 060 void setTexture(String texture); 061 String getTexture(); 062 063 String getCoronaTexture(); 064 065 /** 066 * Use SettingsAPI.getSpriteName(String category, String id) to get the texture name to pass in here. 067 * The texture needs to already be loaded (which textures from settings.json will be). 068 * Do NOT just pass in a filename for a texture that's not already loaded. 069 * @return 070 */ 071 void setCoronaTexture(String coronaTexture); 072 073 /** 074 * Use SettingsAPI.getSpriteName(String category, String id) to get the texture name to pass in here. 075 * The texture needs to already be loaded (which textures from settings.json will be). 076 * Do NOT just pass in a filename for a texture that's not already loaded. 077 * @return 078 */ 079 void setGlowTexture(String glowTexture); 080 081 String getGlowTexture(); 082 Color getGlowColor(); 083 void setGlowColor(Color glowColor); 084 boolean isUseReverseLightForGlow(); 085 void setUseReverseLightForGlow(boolean useReverseLightForGlow); 086 String getIconTexture(); 087 String getAOrAn(); 088 boolean isBlackHole(); 089 void setBlackHole(boolean isBlackHole); 090 boolean isNebulaCenter(); 091 void setNebulaCenter(boolean isNebulaCenter); 092 float getScaleMultMapIcon(); 093 void setScaleMultMapIcon(float scaleMultMapIcon); 094 float getScaleMultStarscapeIcon(); 095 void setScaleMultStarscapeIcon(float scaleMultStarscapeIcon); 096 String getStarscapeIcon(); 097 void setStarscapeIcon(String starscapeIcon); 098 boolean isPulsar(); 099 void setPulsar(boolean isPulsar); 100 101 float getShieldThickness(); 102 void setShieldThickness(float shieldThickness); 103 String getShieldTexture(); 104 void setShieldTexture(String shieldTexture); 105 Color getShieldColor(); 106 void setShieldColor(Color shieldColor); 107 108 String getShieldTexture2(); 109 void setShieldTexture2(String shieldTexture2); 110 float getShieldThickness2(); 111 void setShieldThickness2(float shieldThickness2); 112 Color getShieldColor2(); 113 void setShieldColor2(Color shieldColor2); 114 boolean isDoNotShowInCombat(); 115 void setDoNotShowInCombat(boolean doNotShowInCombat); 116 boolean isGasGiant(); 117 String getDescriptionId(); 118 void setDescriptionId(String descriptionId); 119 Set<String> getTags(); 120 void addTag(String tag); 121 boolean hasTag(String tag); 122 123} 124 125