Force projector implementation

This commit is contained in:
Anuken
2018-09-07 23:24:55 -04:00
parent d046591512
commit 7dd487ccc5
20 changed files with 968 additions and 797 deletions

View File

@@ -77,13 +77,13 @@ public class DefenseBlocks extends BlockList implements ContentList{
}};
overdriveProjector = new OverdriveProjector("overdrive-projector"){{
consumes.power(0.25f);
consumes.power(0.35f);
size = 2;
consumes.item(Items.phasematter).optional(true);
}};
forceProjector = new ForceProjector("force-projector"){{
consumes.power(0.25f);
consumes.power(0.2f);
size = 3;
consumes.item(Items.phasematter).optional(true);
}};

View File

@@ -19,7 +19,8 @@ public class BlockFx extends FxList implements ContentList{
public static Effect reactorsmoke, nuclearsmoke, nuclearcloud, redgeneratespark, generatespark, fuelburn, plasticburn,
pulverize, pulverizeRed, pulverizeRedder, pulverizeSmall, pulverizeMedium, producesmoke, smeltsmoke, formsmoke, blastsmoke,
lava, dooropen, doorclose, dooropenlarge, doorcloselarge, purify, purifyoil, purifystone, generate, mine, mineBig, mineHuge,
smelt, teleportActivate, teleport, teleportOut, ripple, bubble, commandSend, healBlock, healBlockFull, healWaveMend, overdriveWave, overdriveBlockFull;
smelt, teleportActivate, teleport, teleportOut, ripple, bubble, commandSend, healBlock, healBlockFull, healWaveMend, overdriveWave,
overdriveBlockFull, shieldBreak;
@Override
public void load(){
@@ -315,9 +316,16 @@ public class BlockFx extends FxList implements ContentList{
overdriveBlockFull = new Effect(60, e -> {
Draw.color(e.color);
Draw.alpha(e.fslope() * 0.5f);
Draw.alpha(e.fslope() * 0.4f);
Fill.square(e.x, e.y, e.rotation * tilesize);
Draw.color();
});
shieldBreak = new Effect(40, e -> {
Draw.color(Color.WHITE);
Lines.stroke(3f * e.fout());
Lines.poly(e.x, e.y, 6, e.rotation, 90);
Draw.reset();
});
}
}