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<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(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(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<Vector2f> |
getEncounterPoints() |
float |
getFaderBrightness(float distAlong) |
float |
getIntensity(float yOff) |
float[] |
getLengthAndWidthFractionWithinStream(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(Vector2f loc,
float extraRangeForCheck,
boolean allowOutsideStream,
float extraWidthForSegments) |
java.lang.String |
getNameForTooltip() |
Vector2f |
getNormalAt(float lengthAlongStream) |
Vector2f |
getNoWobblePointAt(float lengthAlongStream,
float offset) |
SlipstreamTerrainPlugin2.SlipstreamParams2 |
getParams() |
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(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,
Vector2f radarCenter) |
void |
renderOnRadar(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 Vector2f |
rotateAroundOrigin(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, setTerrainName, shouldPlayLoopFour, shouldPlayLoopThree, stacksWithSelf
public 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<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 static Vector2f rotateAroundOrigin(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(Vector2f loc, float width)
public void init(java.lang.String terrainId, SectorEntityToken entity, java.lang.Object pluginParams)
init
in interface CampaignTerrainPlugin
init
in class BaseTerrain
public float getRenderRange()
CampaignTerrainPlugin
getRenderRange
in interface CampaignTerrainPlugin
getRenderRange
in class BaseTerrain
public void advance(float amount)
advance
in interface CampaignTerrainPlugin
advance
in class BaseTerrain
public 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 CampaignTerrainPlugin
render
in class BaseTerrain
public 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(Vector2f loc)
loc
- public float[] getLengthAndWidthFractionWithinStream(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 BaseTerrain
public void applyEffectToGhost(SectorEntityToken other, float days)
public void applyEffectToWreck(SectorEntityToken other, float days)
public Vector2f getPointAt(float lengthAlongStream, float offset)
public Vector2f getNoWobblePointAt(float lengthAlongStream, float offset)
public Vector2f getNormalAt(float lengthAlongStream)
public java.util.List<SlipstreamTerrainPlugin2.SlipstreamSegment> getSegmentsNear(Vector2f loc, float range)
protected boolean shouldCheckFleetsToApplyEffect()
shouldCheckFleetsToApplyEffect
in class BaseTerrain
public boolean hasAIFlag(java.lang.Object flag)
hasAIFlag
in interface CampaignTerrainPlugin
hasAIFlag
in class BaseTerrain
public boolean containsEntity(SectorEntityToken other)
containsEntity
in interface CampaignTerrainPlugin
containsEntity
in class BaseTerrain
public boolean containsPoint(Vector2f point, float radius)
containsPoint
in interface CampaignTerrainPlugin
containsPoint
in class BaseTerrain
public java.util.List<BoundingBox> getBounds()
public java.util.EnumSet<CampaignEngineLayers> getActiveLayers()
CampaignTerrainPlugin
getActiveLayers
in interface CampaignTerrainPlugin
getActiveLayers
in class BaseTerrain
public void createTooltip(TooltipMakerAPI tooltip, boolean expanded)
createTooltip
in interface CampaignTerrainPlugin
createTooltip
in class BaseTerrain
public boolean hasTooltip()
hasTooltip
in interface CampaignTerrainPlugin
hasTooltip
in class BaseTerrain
public boolean isTooltipExpandable()
isTooltipExpandable
in interface CampaignTerrainPlugin
isTooltipExpandable
in class BaseTerrain
public float getTooltipWidth()
getTooltipWidth
in interface CampaignTerrainPlugin
getTooltipWidth
in class BaseTerrain
public java.lang.String getTerrainName()
getTerrainName
in interface CampaignTerrainPlugin
getTerrainName
in class BaseTerrain
public java.lang.String getNameForTooltip()
getNameForTooltip
in interface CampaignTerrainPlugin
getNameForTooltip
in class BaseTerrain
public java.lang.String getEffectCategory()
getEffectCategory
in class BaseTerrain
public void renderOnRadar(Vector2f radarCenter, float factor, float alphaMult)
renderOnRadar
in interface CampaignTerrainPlugin
renderOnRadar
in class BaseTerrain
public java.util.List<SlipstreamTerrainPlugin2.SlipstreamSegment> getSegments()
public void renderOnMap(float factor, float alphaMult)
CampaignTerrainPlugin
renderOnMap
in interface CampaignTerrainPlugin
renderOnMap
in class BaseTerrain
factor
- conversion factor from world coordinates to map screen coordinates, including current zoom level.public void renderOnMap(float factor, float alphaMult, boolean forRadar, 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 BaseTerrain
protected boolean shouldPlayLoopTwo()
shouldPlayLoopTwo
in class BaseTerrain
public java.util.List<Vector2f> getEncounterPoints()
public void recomputeEncounterPoints()
Copyright © 2013 Fractal Softworks, LLC. All Rights Reserved.