1package com.fs.starfarer.api.impl.campaign;
3import com.fs.starfarer.api.campaign.AsteroidAPI;
4import com.fs.starfarer.api.campaign.CampaignEngineLayers;
5import com.fs.starfarer.api.campaign.SectorEntityToken;
6import com.fs.starfarer.api.combat.ViewportAPI;
7import com.fs.starfarer.api.util.Misc;
11 private AsteroidAPI asteroid;
13 public void init(SectorEntityToken
entity, Object pluginParams) {
14 super.init(
entity, pluginParams);
18 Object readResolve() {
23 if (asteroid !=
null)
return;
24 if (
entity.getContainingLocation() ==
null)
return;
26 asteroid =
entity.getContainingLocation().addAsteroid(16f);
27 asteroid.setLocation(
entity.getLocation().x,
entity.getLocation().y);
28 asteroid.setFacing(Misc.random.nextFloat() * 360f);
29 entity.getContainingLocation().removeEntity(asteroid);
37 if (
entity.isInCurrentLocation()) {
39 if (asteroid !=
null) {
40 asteroid.advance(amount);
46 return entity.getRadius() + 100f;
49 public void render(CampaignEngineLayers layer, ViewportAPI viewport) {
50 if (asteroid !=
null) {
51 asteroid.setLocation(
entity.getLocation().x,
entity.getLocation().y);
52 asteroid.setLightSource(
entity.getLightSource(),
entity.getLightColor());
53 asteroid.forceRender();
void render(CampaignEngineLayers layer, ViewportAPI viewport)
void init(SectorEntityToken entity, Object pluginParams)
void advance(float amount)
void createAsteroidIfNeeded()