public class SlipstreamTerrainPlugin2 extends BaseTerrain
| Modifier and Type | Class and Description |
|---|---|
static class |
SlipstreamTerrainPlugin2.SlipstreamParams2 |
static class |
SlipstreamTerrainPlugin2.SlipstreamParticle |
static class |
SlipstreamTerrainPlugin2.SlipstreamSegment |
| Modifier and Type | Field and Description |
|---|---|
protected java.util.List<BoundingBox> |
bounds |
protected SlipstreamBuilder |
builder |
protected float |
despawnDays |
protected float |
despawnDelay |
protected float |
despawnElapsed |
protected float[] |
despawnNoise |
protected boolean |
dynamic |
protected java.util.List<org.lwjgl.util.vector.Vector2f> |
encounterPoints |
static java.lang.String |
FUEL_USE_MODIFIER_DESC |
static float |
FUEL_USE_MULT |
protected int |
lengthDivisor |
protected int[] |
lengthToIndexMap |
static int |
MAX_PARTICLES_ADD_PER_FRAME |
protected boolean |
needsRecompute |
protected SlipstreamTerrainPlugin2.SlipstreamParams2 |
params |
protected java.util.List<SlipstreamTerrainPlugin2.SlipstreamParticle> |
particles |
protected float |
playerDesiredYOffset |
protected int |
playerWasInSlipstreamFramesAgo |
static float |
RAD_PER_DEG |
protected java.util.List<SlipstreamTerrainPlugin2.SlipstreamSegment> |
segments |
protected int |
segmentsPerBox |
protected float |
spawnDays |
protected float |
spawnElapsed |
protected float[] |
spawnNoise |
protected float |
texProgress0 |
protected float |
texProgress1 |
protected float |
texProgress2 |
protected float |
totalLength |
entity, EXTRA_SOUND_RADIUS, name, TERRAIN_LOCK_KEY, terrainId| Constructor and Description |
|---|
SlipstreamTerrainPlugin2() |
| Modifier and Type | Method and Description |
|---|---|
void |
addParticles() |
void |
addSegment(org.lwjgl.util.vector.Vector2f loc,
float width) |
void |
advance(float amount) |
protected void |
advanceDespawn(float amount) |
protected void |
advanceNearbySegments(float amount) |
void |
advanceParticles(float amount) |
protected void |
advanceSpawn(float amount) |
void |
applyEffect(SectorEntityToken other,
float days) |
void |
applyEffectToEntities(float amount) |
void |
applyEffectToGhost(SectorEntityToken other,
float days) |
void |
applyEffectToWreck(SectorEntityToken other,
float days) |
boolean |
containsEntity(SectorEntityToken other) |
boolean |
containsPoint(org.lwjgl.util.vector.Vector2f point,
float radius) |
void |
createTooltip(TooltipMakerAPI tooltip,
boolean expanded) |
void |
despawn(float despawnDelay,
float despawnDays,
java.util.Random random) |
protected void |
doSoundPlayback(float amount) |
float |
getAbyssalBMult(boolean forMap) |
java.util.EnumSet<CampaignEngineLayers> |
getActiveLayers()
Set of layers can not change.
|
java.util.List<BoundingBox> |
getBounds() |
SlipstreamBuilder |
getBuilder() |
java.lang.String |
getEffectCategory() |
java.util.List<org.lwjgl.util.vector.Vector2f> |
getEncounterPoints() |
float |
getFaderBrightness(float distAlong) |
float |
getIntensity(float yOff) |
float[] |
getLengthAndWidthFractionWithinStream(org.lwjgl.util.vector.Vector2f loc)
result[0] = actual distance along the length of the slipstream
result[1] = offset along the width of the slipstream,
0 = on center, 1 = on edge along normal, -1 = on edge along negative of normal
null if outside stream
Assumes rectangular, non-tapered stream
|
float[] |
getLengthAndWidthFractionWithinStream(org.lwjgl.util.vector.Vector2f loc,
float extraRangeForCheck,
boolean allowOutsideStream,
float extraWidthForSegments) |
java.lang.String |
getNameForTooltip() |
org.lwjgl.util.vector.Vector2f |
getNormalAt(float lengthAlongStream) |
org.lwjgl.util.vector.Vector2f |
getNoWobblePointAt(float lengthAlongStream,
float offset) |
SlipstreamTerrainPlugin2.SlipstreamParams2 |
getParams() |
org.lwjgl.util.vector.Vector2f |
getPointAt(float lengthAlongStream,
float offset) |
java.awt.Color |
getRandomColor() |
float |
getRenderRange()
How far away from the viewport the center of this entity can be before it stops being rendered.
|
SlipstreamTerrainPlugin2.SlipstreamSegment |
getSegmentForDist(float distAlongStream) |
java.util.List<SlipstreamTerrainPlugin2.SlipstreamSegment> |
getSegments() |
java.util.List<SlipstreamTerrainPlugin2.SlipstreamSegment> |
getSegmentsNear(org.lwjgl.util.vector.Vector2f loc,
float range) |
java.lang.String |
getTerrainName() |
float |
getTooltipWidth() |
float |
getTotalLength() |
float |
getWidth(float distAlong) |
float |
getWidthBasedSpeedMult(float distAlong) |
float |
getWobbledWidth(float distAlong) |
boolean |
hasAIFlag(java.lang.Object flag) |
boolean |
hasTooltip() |
void |
init(java.lang.String terrainId,
SectorEntityToken entity,
java.lang.Object pluginParams) |
boolean |
isDespawning() |
boolean |
isDynamic() |
boolean |
isTooltipExpandable() |
protected void |
playerNoLongerinSlipstream() |
void |
recompute() |
void |
recomputeEncounterPoints() |
void |
recomputeIfNeeded() |
void |
render(CampaignEngineLayers layer,
ViewportAPI viewport) |
void |
renderOnMap(float factor,
float alphaMult)
First pass.
|
void |
renderOnMap(float factor,
float alphaMult,
boolean forRadar,
org.lwjgl.util.vector.Vector2f radarCenter) |
void |
renderOnRadar(org.lwjgl.util.vector.Vector2f radarCenter,
float factor,
float alphaMult) |
void |
renderSegments(SpriteAPI sprite0,
SpriteAPI sprite1,
SpriteAPI sprite2,
SpriteAPI edge,
float alpha,
java.util.List<SlipstreamTerrainPlugin2.SlipstreamSegment> segments,
float extraTX,
boolean forMap) |
protected void |
renderSegmentsForMap(java.util.List<SlipstreamTerrainPlugin2.SlipstreamSegment> segments,
float factor,
float alphaMult,
boolean forRadar,
float phase) |
static org.lwjgl.util.vector.Vector2f |
rotateAroundOrigin(org.lwjgl.util.vector.Vector2f v,
float cos,
float sin) |
void |
setBuilder(SlipstreamBuilder builder) |
void |
setDynamic(boolean dynamic) |
void |
setNeedsRecompute() |
protected boolean |
shouldCheckFleetsToApplyEffect() |
protected boolean |
shouldPlayLoopOne() |
protected boolean |
shouldPlayLoopTwo() |
void |
spawn(float spawnDays,
java.util.Random random) |
protected void |
updateBoundingBoxes() |
void |
updateLengthToIndexMap() |
canPlayerHoldStationIn, createCombatSection, createFirstSection, createTravelSection, getEntity, getExtraSoundRadius, getIconSpriteName, getLoopFourPitch, getLoopFourVolume, getLoopOnePitch, getLoopOneVolume, getLoopThreePitch, getLoopThreeVolume, getLoopTwoPitch, getLoopTwoVolume, getMaxEffectRadius, getMinEffectRadius, getModId, getNameAOrAn, getNameColor, getOptimalEffectRadius, getProximitySoundFactor, getRelatedEntity, getSpec, getTerrainId, hasAIFlag, hasMapIcon, isPreventedFromAffecting, preventOtherTerrainFromAffecting, preventOtherTerrainFromAffecting, renderOnMapAbove, setEntity, setTerrainId, setTerrainName, shouldPlayLoopFour, shouldPlayLoopThree, stacksWithSelfpublic static float FUEL_USE_MULT
public static java.lang.String FUEL_USE_MODIFIER_DESC
public static int MAX_PARTICLES_ADD_PER_FRAME
public static float RAD_PER_DEG
protected SlipstreamTerrainPlugin2.SlipstreamParams2 params
protected java.util.List<SlipstreamTerrainPlugin2.SlipstreamSegment> segments
protected float totalLength
protected transient java.util.List<org.lwjgl.util.vector.Vector2f> encounterPoints
protected transient java.util.List<SlipstreamTerrainPlugin2.SlipstreamParticle> particles
protected transient int[] lengthToIndexMap
protected transient int lengthDivisor
protected boolean needsRecompute
protected transient java.util.List<BoundingBox> bounds
protected int segmentsPerBox
protected float texProgress0
protected float texProgress1
protected float texProgress2
protected float[] despawnNoise
protected float despawnDelay
protected float despawnDays
protected float despawnElapsed
protected float[] spawnNoise
protected float spawnDays
protected float spawnElapsed
protected boolean dynamic
protected transient SlipstreamBuilder builder
protected int playerWasInSlipstreamFramesAgo
protected float playerDesiredYOffset
public SlipstreamTerrainPlugin2()
public static org.lwjgl.util.vector.Vector2f rotateAroundOrigin(org.lwjgl.util.vector.Vector2f v, float cos, float sin)
public boolean isDespawning()
public void spawn(float spawnDays, java.util.Random random)
protected void advanceSpawn(float amount)
public void despawn(float despawnDelay, float despawnDays, java.util.Random random)
protected void advanceDespawn(float amount)
public void setNeedsRecompute()
public void updateLengthToIndexMap()
public SlipstreamTerrainPlugin2.SlipstreamSegment getSegmentForDist(float distAlongStream)
public void addSegment(org.lwjgl.util.vector.Vector2f loc, float width)
public void init(java.lang.String terrainId, SectorEntityToken entity, java.lang.Object pluginParams)
init in interface CampaignTerrainPlugininit in class BaseTerrainpublic float getRenderRange()
CampaignTerrainPlugingetRenderRange in interface CampaignTerrainPlugingetRenderRange in class BaseTerrainpublic void advance(float amount)
advance in interface CampaignTerrainPluginadvance in class BaseTerrainpublic boolean isDynamic()
public void setDynamic(boolean dynamic)
public void recomputeIfNeeded()
public void recompute()
protected void updateBoundingBoxes()
protected void advanceNearbySegments(float amount)
public void addParticles()
public void advanceParticles(float amount)
public float getWidthBasedSpeedMult(float distAlong)
public float getWidth(float distAlong)
public float getWobbledWidth(float distAlong)
public float getIntensity(float yOff)
public float getFaderBrightness(float distAlong)
public SlipstreamBuilder getBuilder()
public void setBuilder(SlipstreamBuilder builder)
public SlipstreamTerrainPlugin2.SlipstreamParams2 getParams()
public void render(CampaignEngineLayers layer, ViewportAPI viewport)
render in interface CampaignTerrainPluginrender in class BaseTerrainpublic float getAbyssalBMult(boolean forMap)
public void renderSegments(SpriteAPI sprite0, SpriteAPI sprite1, SpriteAPI sprite2, SpriteAPI edge, float alpha, java.util.List<SlipstreamTerrainPlugin2.SlipstreamSegment> segments, float extraTX, boolean forMap)
public java.awt.Color getRandomColor()
public float getTotalLength()
public float[] getLengthAndWidthFractionWithinStream(org.lwjgl.util.vector.Vector2f loc)
loc - public float[] getLengthAndWidthFractionWithinStream(org.lwjgl.util.vector.Vector2f loc, float extraRangeForCheck, boolean allowOutsideStream, float extraWidthForSegments)
public void applyEffectToEntities(float amount)
protected void playerNoLongerinSlipstream()
public void applyEffect(SectorEntityToken other, float days)
applyEffect in class BaseTerrainpublic void applyEffectToGhost(SectorEntityToken other, float days)
public void applyEffectToWreck(SectorEntityToken other, float days)
public org.lwjgl.util.vector.Vector2f getPointAt(float lengthAlongStream, float offset)
public org.lwjgl.util.vector.Vector2f getNoWobblePointAt(float lengthAlongStream, float offset)
public org.lwjgl.util.vector.Vector2f getNormalAt(float lengthAlongStream)
public java.util.List<SlipstreamTerrainPlugin2.SlipstreamSegment> getSegmentsNear(org.lwjgl.util.vector.Vector2f loc, float range)
protected boolean shouldCheckFleetsToApplyEffect()
shouldCheckFleetsToApplyEffect in class BaseTerrainpublic boolean hasAIFlag(java.lang.Object flag)
hasAIFlag in interface CampaignTerrainPluginhasAIFlag in class BaseTerrainpublic boolean containsEntity(SectorEntityToken other)
containsEntity in interface CampaignTerrainPlugincontainsEntity in class BaseTerrainpublic boolean containsPoint(org.lwjgl.util.vector.Vector2f point, float radius)
containsPoint in interface CampaignTerrainPlugincontainsPoint in class BaseTerrainpublic java.util.List<BoundingBox> getBounds()
public java.util.EnumSet<CampaignEngineLayers> getActiveLayers()
CampaignTerrainPlugingetActiveLayers in interface CampaignTerrainPlugingetActiveLayers in class BaseTerrainpublic void createTooltip(TooltipMakerAPI tooltip, boolean expanded)
createTooltip in interface CampaignTerrainPlugincreateTooltip in class BaseTerrainpublic boolean hasTooltip()
hasTooltip in interface CampaignTerrainPluginhasTooltip in class BaseTerrainpublic boolean isTooltipExpandable()
isTooltipExpandable in interface CampaignTerrainPluginisTooltipExpandable in class BaseTerrainpublic float getTooltipWidth()
getTooltipWidth in interface CampaignTerrainPlugingetTooltipWidth in class BaseTerrainpublic java.lang.String getTerrainName()
getTerrainName in interface CampaignTerrainPlugingetTerrainName in class BaseTerrainpublic java.lang.String getNameForTooltip()
getNameForTooltip in interface CampaignTerrainPlugingetNameForTooltip in class BaseTerrainpublic java.lang.String getEffectCategory()
getEffectCategory in class BaseTerrainpublic void renderOnRadar(org.lwjgl.util.vector.Vector2f radarCenter, float factor, float alphaMult)
renderOnRadar in interface CampaignTerrainPluginrenderOnRadar in class BaseTerrainpublic java.util.List<SlipstreamTerrainPlugin2.SlipstreamSegment> getSegments()
public void renderOnMap(float factor, float alphaMult)
CampaignTerrainPluginrenderOnMap in interface CampaignTerrainPluginrenderOnMap in class BaseTerrainfactor - conversion factor from world coordinates to map screen coordinates, including current zoom level.public void renderOnMap(float factor, float alphaMult, boolean forRadar, org.lwjgl.util.vector.Vector2f radarCenter)
protected void renderSegmentsForMap(java.util.List<SlipstreamTerrainPlugin2.SlipstreamSegment> segments, float factor, float alphaMult, boolean forRadar, float phase)
protected void doSoundPlayback(float amount)
protected boolean shouldPlayLoopOne()
shouldPlayLoopOne in class BaseTerrainprotected boolean shouldPlayLoopTwo()
shouldPlayLoopTwo in class BaseTerrainpublic java.util.List<org.lwjgl.util.vector.Vector2f> getEncounterPoints()
public void recomputeEncounterPoints()