public class StarSystemGenerator
extends java.lang.Object
Modifier and Type | Class and Description |
---|---|
static class |
StarSystemGenerator.CustomConstellationParams |
static class |
StarSystemGenerator.GenContext |
static class |
StarSystemGenerator.GeneratedPlanet |
static class |
StarSystemGenerator.GenResult |
static class |
StarSystemGenerator.LagrangePoint |
static class |
StarSystemGenerator.LagrangePointType |
static class |
StarSystemGenerator.StarSystemType |
Modifier and Type | Field and Description |
---|---|
protected java.util.Map<SectorEntityToken,java.util.List<SectorEntityToken>> |
allNameableEntitiesAdded |
protected java.lang.String |
backgroundName |
static java.util.Map<java.lang.String,WeightedRandomPicker<java.lang.String>> |
backgroundsByNebulaType |
static float |
BASE_INCR |
static float |
BASE_INCR_MOON |
static java.lang.String |
CAT_GIANT |
static java.lang.String |
CAT_HAB1 |
static java.lang.String |
CAT_HAB2 |
static java.lang.String |
CAT_HAB3 |
static java.lang.String |
CAT_HAB4 |
static java.lang.String |
CAT_HAB5 |
static java.lang.String |
CAT_NOTHING |
protected float |
centerRadius |
static java.lang.String |
COL_BINARY |
static java.lang.String |
COL_IN_ASTEROIDS |
static java.lang.String |
COL_IS_MOON |
static java.lang.String |
COL_LAGRANGE |
static java.lang.String |
COL_TRINARY |
protected StarAge |
constellationAge |
protected AgeGenDataSpec |
constellationAgeData |
static boolean |
DEBUG |
static float |
FAR_MAX_ORBIT_RADIUS |
protected LocationAPI |
hyper |
static float |
LAGRANGE_OFFSET |
protected java.util.Map<SectorEntityToken,PlanetAPI> |
lagrangeParentMap |
static float |
MAX_ORBIT_RADIUS |
static float |
MAX_STAR_DIST |
static float |
MIN_MOON_RADIUS |
static float |
MIN_STAR_DIST |
static float |
MOON_RADIUS_MAX_FRACTION_OF_NORMAL |
static float |
MOON_RADIUS_MAX_FRACTION_OF_PARENT |
static float |
MOON_RADIUS_MIN_FRACTION_OF_NORMAL |
static java.lang.String |
NEBULA_AMBER |
static java.lang.String |
NEBULA_BLUE |
static java.lang.String |
NEBULA_DEFAULT |
static java.lang.String |
NEBULA_NONE |
protected java.lang.String |
nebulaType |
static java.util.Map<StarAge,java.lang.String> |
nebulaTypes |
protected StarSystemGenerator.CustomConstellationParams |
params |
static float |
PITCH_MAX |
static float |
PITCH_MIN |
static java.util.Random |
random |
protected PlanetAPI |
secondary |
protected SectorAPI |
sector |
protected PlanetAPI |
star |
protected StarAge |
starAge |
protected AgeGenDataSpec |
starAgeData |
protected StarGenDataSpec |
starData |
static float |
STARTING_RADIUS_MOON_BASE |
static float |
STARTING_RADIUS_MOON_RANGE |
static float |
STARTING_RADIUS_STAR_BASE |
static float |
STARTING_RADIUS_STAR_RANGE |
protected StarSystemAPI |
system |
protected SectorEntityToken |
systemCenter |
protected StarSystemGenerator.StarSystemType |
systemType |
static java.lang.String |
TAG_FIRST_ORBIT_ONLY |
static java.lang.String |
TAG_GIANT_MOON |
static java.lang.String |
TAG_LAGRANGE_ONLY |
static java.lang.String |
TAG_NOT_IN_NEBULA |
static java.lang.String |
TAG_NOT_NEBULA_UNLESS_MOON |
static java.lang.String |
TAG_REQUIRES_NEBULA |
static java.util.List<TerrainGenPlugin> |
terrainPlugins |
protected PlanetAPI |
tertiary |
static float |
TILT_MAX |
static float |
TILT_MIN |
Constructor and Description |
---|
StarSystemGenerator(StarSystemGenerator.CustomConstellationParams params) |
Modifier and Type | Method and Description |
---|---|
protected void |
addFarStar(PlanetAPI farStar,
float orbitAngle,
float baseOrbitRadius,
float orbitPeriod) |
protected void |
addJumpPoint(StarSystemGenerator.LagrangePoint p,
java.lang.String name) |
protected void |
addJumpPoints(StarSystemGenerator.GenResult result,
boolean farStarMode) |
static float |
addOrbitingEntities(StarSystemAPI system,
SectorEntityToken parentStar,
StarAge age,
int min,
int max,
float startingRadius,
int nameOffset,
boolean withSpecialNames) |
static float |
addOrbitingEntities(StarSystemAPI system,
SectorEntityToken parentStar,
StarAge age,
int min,
int max,
float startingRadius,
int nameOffset,
boolean withSpecialNames,
boolean allowHabitable) |
protected StarSystemGenerator.GenResult |
addOrbitingEntities(StarSystemGenerator.GenContext context,
int numOrbits,
boolean addingMoons,
boolean addMoons,
boolean parentIsMoon,
boolean nothingOk) |
StarSystemGenerator.GenResult |
addPlanet(StarSystemGenerator.GenContext context,
PlanetGenDataSpec planetData,
boolean isMoon,
boolean addMoons) |
protected StarSystemGenerator.GenResult |
addPlanetsAndTerrain(float maxOrbitRadius) |
protected PlanetAPI |
addRandomStar(java.lang.String id,
java.lang.String name) |
protected void |
addStableLocations() |
static void |
addStableLocations(StarSystemAPI system,
int num) |
protected boolean |
addStars(java.lang.String id) |
protected void |
addStuffAtLagrangePoints(StarSystemGenerator.GenContext context,
StarSystemGenerator.GeneratedPlanet planet) |
protected void |
addSystemwideNebula() |
static void |
addSystemwideNebula(StarSystemAPI system,
StarAge age) |
protected StarSystemGenerator.GenResult |
addTerrain(StarSystemGenerator.GenContext context,
TerrainGenDataSpec terrainData) |
static void |
addTerrainGenPlugin(TerrainGenPlugin plugin) |
protected void |
cleanup() |
Constellation |
generate() |
void |
generateSystem(Vector2f loc) |
java.util.Map<SectorEntityToken,java.util.List<SectorEntityToken>> |
getAllEntitiesAdded() |
static java.awt.Color |
getColor(java.awt.Color min,
java.awt.Color max) |
StarAge |
getConstellationAge() |
protected float |
getHabOffset(EntityGenDataSpec data) |
java.util.Map<SectorEntityToken,PlanetAPI> |
getLagrangeParentMap() |
java.lang.String |
getNebulaType() |
static float |
getNormalRandom(float min,
float max) |
static float |
getNormalRandom(java.util.Random random,
float min,
float max) |
protected WeightedRandomPicker<EntityGenDataSpec> |
getPickerForCategory(CategoryGenDataSpec categoryData,
StarSystemGenerator.GenContext context,
java.lang.String extraMult) |
protected WeightedRandomPicker<EntityGenDataSpec> |
getPickerForCategory(CategoryGenDataSpec categoryData,
StarSystemGenerator.GenContext context,
java.lang.String extraMult,
boolean nothingOk) |
static float |
getRadius(float min,
float max) |
static float |
getRandom(float min,
float max) |
StarAge |
getStarAge() |
void |
init(StarSystemAPI system,
StarAge age) |
protected boolean |
initSystem(java.lang.String name,
Vector2f loc) |
boolean |
isCategoryEmpty(CategoryGenDataSpec categoryData,
StarSystemGenerator.GenContext context,
java.lang.String extraMult,
boolean nothingOk) |
CategoryGenDataSpec |
pickCategory(StarSystemGenerator.GenContext context,
java.lang.String extraMult,
boolean nothingOk) |
static FullName.Gender |
pickGender() |
protected java.awt.Color |
pickLightColorForStar(PlanetAPI star) |
void |
pickNebulaAndBackground() |
PlanetSpecAPI |
pickStar(StarAge age) |
protected StarSystemGenerator.StarSystemType |
pickSystemType(StarAge constellationAge) |
static TerrainGenPlugin |
pickTerrainGenPlugin(TerrainGenDataSpec terrainData,
StarSystemGenerator.GenContext context) |
static void |
removeTerrainGenPlugin(TerrainGenPlugin plugin) |
protected void |
setBlackHoleIfBlackHole(PlanetAPI star) |
protected void |
setDefaultLightColorBasedOnStars() |
protected void |
setPulsarIfNeutron(PlanetAPI star) |
protected void |
switchPrimaryAndSecondaryIfNeeded(boolean sizeDownSmaller) |
protected void |
switchPrimaryAndTertiaryIfNeeded(boolean sizeDownSmaller) |
protected void |
updateAgeAfterPickingStar() |
static void |
updateBackgroundPickers() |
public static final float MIN_STAR_DIST
public static final float MAX_STAR_DIST
public static final float TILT_MIN
public static final float TILT_MAX
public static final float PITCH_MIN
public static final float PITCH_MAX
public static final float MAX_ORBIT_RADIUS
public static final float FAR_MAX_ORBIT_RADIUS
public static final float LAGRANGE_OFFSET
public static final float BASE_INCR
public static final float BASE_INCR_MOON
public static final float STARTING_RADIUS_STAR_BASE
public static final float STARTING_RADIUS_STAR_RANGE
public static final float STARTING_RADIUS_MOON_BASE
public static final float STARTING_RADIUS_MOON_RANGE
public static final float MOON_RADIUS_MAX_FRACTION_OF_PARENT
public static final float MOON_RADIUS_MIN_FRACTION_OF_NORMAL
public static final float MOON_RADIUS_MAX_FRACTION_OF_NORMAL
public static final float MIN_MOON_RADIUS
public static final java.lang.String TAG_FIRST_ORBIT_ONLY
public static final java.lang.String TAG_GIANT_MOON
public static final java.lang.String TAG_LAGRANGE_ONLY
public static final java.lang.String TAG_NOT_IN_NEBULA
public static final java.lang.String TAG_REQUIRES_NEBULA
public static final java.lang.String TAG_NOT_NEBULA_UNLESS_MOON
public static final java.lang.String CAT_HAB5
public static final java.lang.String CAT_HAB4
public static final java.lang.String CAT_HAB3
public static final java.lang.String CAT_HAB2
public static final java.lang.String CAT_HAB1
public static final java.lang.String CAT_NOTHING
public static final java.lang.String CAT_GIANT
public static final java.lang.String COL_LAGRANGE
public static final java.lang.String COL_IN_ASTEROIDS
public static final java.lang.String COL_IS_MOON
public static final java.lang.String COL_BINARY
public static final java.lang.String COL_TRINARY
public static final java.lang.String NEBULA_DEFAULT
public static final java.lang.String NEBULA_AMBER
public static final java.lang.String NEBULA_BLUE
public static final java.lang.String NEBULA_NONE
public static java.util.Map<StarAge,java.lang.String> nebulaTypes
public static java.util.Map<java.lang.String,WeightedRandomPicker<java.lang.String>> backgroundsByNebulaType
public static java.util.List<TerrainGenPlugin> terrainPlugins
public static java.util.Random random
public static boolean DEBUG
protected StarAge constellationAge
protected StarSystemGenerator.StarSystemType systemType
protected StarAge starAge
protected SectorAPI sector
protected StarSystemAPI system
protected LocationAPI hyper
protected PlanetAPI star
protected PlanetAPI secondary
protected PlanetAPI tertiary
protected SectorEntityToken systemCenter
protected float centerRadius
protected AgeGenDataSpec constellationAgeData
protected AgeGenDataSpec starAgeData
protected StarGenDataSpec starData
protected java.lang.String nebulaType
protected java.lang.String backgroundName
protected java.util.Map<SectorEntityToken,PlanetAPI> lagrangeParentMap
protected java.util.Map<SectorEntityToken,java.util.List<SectorEntityToken>> allNameableEntitiesAdded
protected StarSystemGenerator.CustomConstellationParams params
public StarSystemGenerator(StarSystemGenerator.CustomConstellationParams params)
public static void addTerrainGenPlugin(TerrainGenPlugin plugin)
public static void removeTerrainGenPlugin(TerrainGenPlugin plugin)
public static void updateBackgroundPickers()
public static TerrainGenPlugin pickTerrainGenPlugin(TerrainGenDataSpec terrainData, StarSystemGenerator.GenContext context)
public void pickNebulaAndBackground()
public Constellation generate()
public void generateSystem(Vector2f loc)
protected void addFarStar(PlanetAPI farStar, float orbitAngle, float baseOrbitRadius, float orbitPeriod)
protected StarSystemGenerator.StarSystemType pickSystemType(StarAge constellationAge)
protected boolean addStars(java.lang.String id)
protected void setBlackHoleIfBlackHole(PlanetAPI star)
protected void setPulsarIfNeutron(PlanetAPI star)
protected void switchPrimaryAndSecondaryIfNeeded(boolean sizeDownSmaller)
protected void switchPrimaryAndTertiaryIfNeeded(boolean sizeDownSmaller)
protected void addStableLocations()
public static void addStableLocations(StarSystemAPI system, int num)
protected void addJumpPoints(StarSystemGenerator.GenResult result, boolean farStarMode)
protected void addJumpPoint(StarSystemGenerator.LagrangePoint p, java.lang.String name)
public static float addOrbitingEntities(StarSystemAPI system, SectorEntityToken parentStar, StarAge age, int min, int max, float startingRadius, int nameOffset, boolean withSpecialNames)
public static float addOrbitingEntities(StarSystemAPI system, SectorEntityToken parentStar, StarAge age, int min, int max, float startingRadius, int nameOffset, boolean withSpecialNames, boolean allowHabitable)
public static void addSystemwideNebula(StarSystemAPI system, StarAge age)
protected void addSystemwideNebula()
protected StarSystemGenerator.GenResult addPlanetsAndTerrain(float maxOrbitRadius)
protected StarSystemGenerator.GenResult addOrbitingEntities(StarSystemGenerator.GenContext context, int numOrbits, boolean addingMoons, boolean addMoons, boolean parentIsMoon, boolean nothingOk)
protected StarSystemGenerator.GenResult addTerrain(StarSystemGenerator.GenContext context, TerrainGenDataSpec terrainData)
public StarSystemGenerator.GenResult addPlanet(StarSystemGenerator.GenContext context, PlanetGenDataSpec planetData, boolean isMoon, boolean addMoons)
protected void addStuffAtLagrangePoints(StarSystemGenerator.GenContext context, StarSystemGenerator.GeneratedPlanet planet)
public CategoryGenDataSpec pickCategory(StarSystemGenerator.GenContext context, java.lang.String extraMult, boolean nothingOk)
public boolean isCategoryEmpty(CategoryGenDataSpec categoryData, StarSystemGenerator.GenContext context, java.lang.String extraMult, boolean nothingOk)
protected float getHabOffset(EntityGenDataSpec data)
protected WeightedRandomPicker<EntityGenDataSpec> getPickerForCategory(CategoryGenDataSpec categoryData, StarSystemGenerator.GenContext context, java.lang.String extraMult)
protected WeightedRandomPicker<EntityGenDataSpec> getPickerForCategory(CategoryGenDataSpec categoryData, StarSystemGenerator.GenContext context, java.lang.String extraMult, boolean nothingOk)
protected void setDefaultLightColorBasedOnStars()
protected java.awt.Color pickLightColorForStar(PlanetAPI star)
protected PlanetAPI addRandomStar(java.lang.String id, java.lang.String name)
public void init(StarSystemAPI system, StarAge age)
protected boolean initSystem(java.lang.String name, Vector2f loc)
protected void updateAgeAfterPickingStar()
protected void cleanup()
public java.lang.String getNebulaType()
public StarAge getConstellationAge()
public StarAge getStarAge()
public PlanetSpecAPI pickStar(StarAge age)
public static java.awt.Color getColor(java.awt.Color min, java.awt.Color max)
public static float getNormalRandom(float min, float max)
public static float getNormalRandom(java.util.Random random, float min, float max)
public static float getRadius(float min, float max)
public static float getRandom(float min, float max)
public java.util.Map<SectorEntityToken,PlanetAPI> getLagrangeParentMap()
public java.util.Map<SectorEntityToken,java.util.List<SectorEntityToken>> getAllEntitiesAdded()
public static FullName.Gender pickGender()
Copyright © 2013 Fractal Softworks, LLC. All Rights Reserved.