1package com.fs.starfarer.api.impl.campaign.entities;
5import org.lwjgl.util.vector.Vector2f;
7import com.fs.starfarer.api.Global;
8import com.fs.starfarer.api.campaign.CampaignEngineLayers;
9import com.fs.starfarer.api.campaign.SectorEntityToken;
10import com.fs.starfarer.api.combat.ViewportAPI;
11import com.fs.starfarer.api.impl.campaign.BaseCustomEntityPlugin;
12import com.fs.starfarer.api.util.CampaignEngineGlowIndividualEngine;
13import com.fs.starfarer.api.util.CampaignEngineGlowUtil;
14import com.fs.starfarer.api.util.CampaignEntityMovementUtil;
15import com.fs.starfarer.api.util.Misc;
28 super.init(
entity, pluginParams);
32 Object readResolve() {
34 Color fringe =
new Color(255, 0, 0, 255);
35 Color flame =
new Color(255, 100, 100, 255);
36 Color core =
new Color(255, 255, 255, 255);
40 90f, 300f, 50f, 400f,
new Vector2f(-115f, 0f),
engineGlow);
79 if (soundVolume > 0.5f) soundVolume = 0.5f;
84 float f = remaining/1f;
98 speedInDesiredDir *= -1f;
102 if (speedInDesiredDir > 10f && speedInDesiredDir > speed * 0.7f) {
103 float speedForMaxEngineLength = 100f;
104 float f = speedInDesiredDir / speedForMaxEngineLength;
108 soundVolume = Math.min(soundVolume + f * 0.5f, 1f);
112 float flickerZone = 0.5f;
113 if (f < flickerZone) {
127 if (soundVolume > 0) {
145 if (alphaMult <= 0f)
return;
static SoundPlayerAPI getSoundPlayer()
void render(CampaignEngineLayers layer, ViewportAPI viewport)
CampaignEngineGlowUtil engineGlow
void setLongBurn(boolean longBurn)
CampaignEntityMovementUtil getMovement()
float getRemainingActivationDays()
void init(SectorEntityToken entity, Object pluginParams)
CampaignEngineGlowUtil getEngineGlow()
void advance(float amount)
static float ACCELERATION
CampaignEntityMovementUtil movement
void setFlameTexSpanMult(float flameTexSpanMult)
void addEngine(CampaignEngineGlowIndividualEngine engine)
ValueShifterUtil getFlickerMult()
void advance(float amount)
void render(float alphaMult)
ValueShifterUtil getLengthMult()
ValueShifterUtil getWidthMult()
ValueShifterUtil getFlickerRateMult()
ValueShifterUtil getGlowMult()
void advance(float amount)
boolean isFaceInOppositeDirection()
void setEngineGlow(EngineGlowControls engineGlow)
boolean isDesiredFacingSet()
static Vector2f getUnitVectorAtDegreeAngle(float degrees)
static float getAngleDiff(float from, float to)
void shift(Object source, float to, float durIn, float durOut, float shift)
void playLoop(String id, Object playingEntity, float pitch, float volume, Vector2f loc, Vector2f vel)
float getSensorContactFaderBrightness()
boolean isInCurrentLocation()
boolean isVisibleToPlayerFleet()
float getSensorFaderBrightness()
MemoryAPI getMemoryWithoutUpdate()
float getExpire(String key)
boolean getBoolean(String key)