New tentative edge style / Zone tweaks

This commit is contained in:
Anuken 2019-03-26 20:10:01 -04:00
parent 545a64f7dc
commit 7ce571e59c
17 changed files with 296 additions and 297 deletions

Binary file not shown.

Before

Width:  |  Height:  |  Size: 354 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 390 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.4 KiB

After

Width:  |  Height:  |  Size: 11 KiB

View File

@ -56,7 +56,6 @@ void main() {
if(color.r > 0.01){
color = texture2D(u_texture, c + vec2(sin(stime/3.0 + coords.y/0.75) * v.x, 0.0)) * vec4(0.9, 0.9, 1, 1.0);
color.a = 1.0;
float n1 = snoise(coords / 22.0 + vec2(-time) / 540.0);
float n2 = snoise((coords + vec2(632.0)) / 8.0 + vec2(0.0, time) / 510.0);
@ -65,7 +64,6 @@ void main() {
if(r < -0.3 && r > -0.6){
color *= 1.4;
color.a = 1.0;
}
}

View File

@ -9804,28 +9804,28 @@ char2
index: -1
char3
rotate: false
xy: 1483, 669
xy: 1193, 571
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
cliffs1
rotate: false
xy: 1599, 785
xy: 1309, 687
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
coal1
rotate: false
xy: 1019, 491
xy: 1599, 785
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
coal2
rotate: false
xy: 1309, 589
xy: 1019, 491
size: 32, 32
orig: 32, 32
offset: 0, 0
@ -9860,28 +9860,28 @@ copper3
index: -1
craters1
rotate: false
xy: 1483, 635
xy: 1193, 537
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
craters2
rotate: false
xy: 1633, 785
xy: 1343, 687
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
craters3
rotate: false
xy: 1053, 491
xy: 1633, 785
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
craters4
rotate: false
xy: 1343, 589
xy: 1053, 491
size: 32, 32
orig: 32, 32
offset: 0, 0
@ -9923,7 +9923,7 @@ darksand-edge
index: -1
darksand-tainted-water
rotate: false
xy: 1377, 589
xy: 1087, 491
size: 32, 32
orig: 32, 32
offset: 0, 0
@ -9958,14 +9958,14 @@ darksand1
index: -1
darksand2
rotate: false
xy: 1667, 785
xy: 1377, 687
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
darksand3
rotate: false
xy: 1087, 491
xy: 1667, 785
size: 32, 32
orig: 32, 32
offset: 0, 0
@ -10000,7 +10000,7 @@ dunerocks1
index: -1
dunerocks2
rotate: false
xy: 1701, 785
xy: 1411, 687
size: 32, 32
orig: 32, 32
offset: 0, 0
@ -10014,28 +10014,28 @@ edge-stencil-blocky
index: -1
edge-stencil-smooth
rotate: false
xy: 323, 721
xy: 1, 175
size: 288, 96
orig: 288, 96
offset: 0, 0
index: -1
grass-edge
rotate: false
xy: 613, 819
xy: 323, 721
size: 288, 96
orig: 288, 96
offset: 0, 0
index: -1
grass1
rotate: false
xy: 1121, 491
xy: 1701, 785
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
grass2
rotate: false
xy: 1411, 589
xy: 1121, 491
size: 32, 32
orig: 32, 32
offset: 0, 0
@ -10049,28 +10049,28 @@ grass3
index: -1
holostone-edge
rotate: false
xy: 903, 917
xy: 613, 819
size: 288, 96
orig: 288, 96
offset: 0, 0
index: -1
holostone1
rotate: false
xy: 1735, 785
xy: 1445, 687
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
holostone2
rotate: false
xy: 1155, 491
xy: 1735, 785
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
holostone3
rotate: false
xy: 1445, 589
xy: 1155, 491
size: 32, 32
orig: 32, 32
offset: 0, 0
@ -10098,14 +10098,14 @@ hotrock3
index: -1
ice-edge
rotate: false
xy: 1, 77
xy: 903, 917
size: 288, 96
orig: 288, 96
offset: 0, 0
index: -1
ice-snow-edge
rotate: false
xy: 323, 623
xy: 1, 77
size: 288, 96
orig: 288, 96
offset: 0, 0
@ -10224,42 +10224,42 @@ magmarock1
index: -1
magmarock2
rotate: false
xy: 903, 425
xy: 1483, 719
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
magmarock3
rotate: false
xy: 1193, 523
xy: 903, 425
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
metal-floor
rotate: false
xy: 937, 425
xy: 1517, 719
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
metal-floor-damaged5
rotate: false
xy: 937, 425
xy: 1517, 719
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
metal-floor-2
rotate: false
xy: 1227, 523
xy: 937, 425
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
metal-floor-2-edge
rotate: false
xy: 613, 721
xy: 323, 623
size: 288, 96
orig: 288, 96
offset: 0, 0
@ -10273,7 +10273,7 @@ metal-floor-3
index: -1
metal-floor-3-edge
rotate: false
xy: 903, 819
xy: 613, 721
size: 288, 96
orig: 288, 96
offset: 0, 0
@ -10287,14 +10287,14 @@ metal-floor-5
index: -1
metal-floor-5-edge
rotate: false
xy: 1193, 917
xy: 903, 819
size: 288, 96
orig: 288, 96
offset: 0, 0
index: -1
metal-floor-damaged-edge
rotate: false
xy: 323, 525
xy: 1193, 917
size: 288, 96
orig: 288, 96
offset: 0, 0
@ -10336,14 +10336,14 @@ metal-floor-damaged6
index: -1
metal-floor-edge
rotate: false
xy: 613, 623
xy: 323, 525
size: 288, 96
orig: 288, 96
offset: 0, 0
index: -1
moss-edge
rotate: false
xy: 903, 721
xy: 613, 623
size: 288, 96
orig: 288, 96
offset: 0, 0
@ -10357,14 +10357,14 @@ moss1
index: -1
moss2
rotate: false
xy: 1189, 489
xy: 1479, 685
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
moss3
rotate: false
xy: 1223, 489
xy: 1513, 685
size: 32, 32
orig: 32, 32
offset: 0, 0
@ -10420,14 +10420,14 @@ ore-lead1
index: -1
ore-lead2
rotate: false
xy: 971, 441
xy: 1551, 735
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
ore-lead3
rotate: false
xy: 1261, 539
xy: 971, 441
size: 32, 32
orig: 32, 32
offset: 0, 0
@ -10441,7 +10441,7 @@ ore-scrap1
index: -1
ore-scrap2
rotate: false
xy: 1533, 719
xy: 1243, 621
size: 32, 32
orig: 32, 32
offset: 0, 0
@ -10511,14 +10511,14 @@ rock1
index: -1
rock2
rotate: false
xy: 1483, 703
xy: 1193, 605
size: 48, 48
orig: 48, 48
offset: 0, 0
index: -1
rocks-large
rotate: false
xy: 1483, 753
xy: 1193, 655
size: 64, 64
orig: 64, 64
offset: 0, 0
@ -10546,28 +10546,28 @@ salt
index: -1
salt-edge
rotate: false
xy: 1193, 819
xy: 903, 721
size: 288, 96
orig: 288, 96
offset: 0, 0
index: -1
sand-edge
rotate: false
xy: 1483, 917
xy: 1193, 819
size: 288, 96
orig: 288, 96
offset: 0, 0
index: -1
sand-water
rotate: false
xy: 1517, 669
xy: 1227, 571
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
sand-water-edge
rotate: false
xy: 323, 427
xy: 1483, 917
size: 288, 96
orig: 288, 96
offset: 0, 0
@ -10595,147 +10595,147 @@ sand3
index: -1
sandrocks-large
rotate: false
xy: 903, 459
xy: 1483, 753
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
sandrocks1
rotate: false
xy: 1517, 635
xy: 1227, 537
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
sandrocks2
rotate: false
xy: 1309, 555
xy: 1019, 457
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
scrap1
rotate: false
xy: 1343, 555
xy: 1053, 457
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
scrap2
rotate: false
xy: 1377, 555
xy: 1087, 457
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
scrap3
rotate: false
xy: 1411, 555
xy: 1121, 457
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
shale-boulder1
rotate: false
xy: 1087, 457
xy: 1377, 653
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
shale-boulder2
rotate: false
xy: 1121, 457
xy: 1411, 653
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
shale-edge
rotate: false
xy: 613, 525
xy: 323, 427
size: 288, 96
orig: 288, 96
offset: 0, 0
index: -1
shale1
rotate: false
xy: 1445, 555
xy: 1155, 457
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
shale2
rotate: false
xy: 1019, 457
xy: 1309, 653
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
shale3
rotate: false
xy: 1053, 457
xy: 1343, 653
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
shalerocks-large
rotate: false
xy: 1193, 557
xy: 903, 459
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
shalerocks1
rotate: false
xy: 1155, 457
xy: 1445, 653
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
shalerocks2
rotate: false
xy: 1189, 455
xy: 1479, 651
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
snow-edge
rotate: false
xy: 903, 623
xy: 613, 525
size: 288, 96
orig: 288, 96
offset: 0, 0
index: -1
snow1
rotate: false
xy: 1223, 455
xy: 1513, 651
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
snow2
rotate: false
xy: 971, 407
xy: 1551, 701
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
snow3
rotate: false
xy: 1005, 423
xy: 1547, 667
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
snowrock1
rotate: false
xy: 1549, 769
xy: 1259, 671
size: 48, 48
orig: 48, 48
offset: 0, 0
index: -1
snowrock2
rotate: false
xy: 969, 475
xy: 1549, 769
size: 48, 48
orig: 48, 48
offset: 0, 0
@ -10749,14 +10749,14 @@ snowrocks-large
index: -1
snowrocks1
rotate: false
xy: 1039, 423
xy: 971, 407
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
snowrocks2
rotate: false
xy: 1073, 423
xy: 1005, 423
size: 32, 32
orig: 32, 32
offset: 0, 0
@ -10784,35 +10784,35 @@ spore-cluster3
index: -1
spore-moss-edge
rotate: false
xy: 1193, 721
xy: 903, 623
size: 288, 96
orig: 288, 96
offset: 0, 0
index: -1
spore-moss1
rotate: false
xy: 1107, 423
xy: 1039, 423
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
spore-moss2
rotate: false
xy: 1141, 423
xy: 1073, 423
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
spore-moss3
rotate: false
xy: 1175, 421
xy: 1107, 423
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
spore-pine
rotate: false
xy: 1259, 573
xy: 969, 475
size: 48, 48
orig: 48, 48
offset: 0, 0
@ -10826,112 +10826,112 @@ sporerocks-large
index: -1
sporerocks1
rotate: false
xy: 1209, 421
xy: 1141, 423
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
sporerocks2
rotate: false
xy: 1261, 505
xy: 1599, 751
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
stone-edge
rotate: false
xy: 1483, 819
xy: 1193, 721
size: 288, 96
orig: 288, 96
offset: 0, 0
index: -1
stone3
rotate: false
xy: 1257, 471
xy: 1633, 751
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
tainted-water
rotate: false
xy: 1295, 521
xy: 1667, 751
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
tainted-water-edge
rotate: false
xy: 613, 427
xy: 1483, 819
size: 288, 96
orig: 288, 96
offset: 0, 0
index: -1
tar
rotate: false
xy: 1329, 521
xy: 1701, 751
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
tar-edge
rotate: false
xy: 903, 525
xy: 613, 427
size: 288, 96
orig: 288, 96
offset: 0, 0
index: -1
thorium1
rotate: false
xy: 1363, 521
xy: 1735, 751
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
thorium2
rotate: false
xy: 1397, 521
xy: 1769, 739
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
thorium3
rotate: false
xy: 1431, 521
xy: 1585, 717
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
titanium1
rotate: false
xy: 1599, 751
xy: 1619, 717
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
titanium2
rotate: false
xy: 1633, 751
xy: 1653, 717
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
titanium3
rotate: false
xy: 1667, 751
xy: 1687, 717
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
water
rotate: false
xy: 1701, 751
xy: 1721, 717
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
water-edge
rotate: false
xy: 1193, 623
xy: 903, 525
size: 288, 96
orig: 288, 96
offset: 0, 0

Binary file not shown.

Before

Width:  |  Height:  |  Size: 218 KiB

After

Width:  |  Height:  |  Size: 950 KiB

File diff suppressed because it is too large Load Diff

Binary file not shown.

Before

Width:  |  Height:  |  Size: 111 KiB

After

Width:  |  Height:  |  Size: 750 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 63 KiB

After

Width:  |  Height:  |  Size: 100 KiB

View File

@ -230,6 +230,7 @@ public class Blocks implements ContentList{
dragMultiplier = 1f;
speedMultiplier = 1f;
attributes.set(Attribute.water, 0.4f);
edgeStyle = "blocky";
}};
iceSnow = new Floor("ice-snow"){{
@ -702,16 +703,20 @@ public class Blocks implements ContentList{
reload = 200f;
range = 40f;
healPercent = 5f;
consumes.item(Items.phasefabric).optional(true);
phaseBoost = 4f;
phaseRangeBoost = 20f;
health = 80;
consumes.item(Items.silicon).optional(true);
}};
mendProjector = new MendProjector("mend-projector"){{
requirements(Category.effect, ItemStack.with(Items.lead, 200, Items.titanium, 40, Items.silicon, 80));
requirements(Category.effect, ItemStack.with(Items.lead, 200, Items.titanium, 50, Items.silicon, 80));
consumes.power(1.8f);
size = 2;
reload = 250f;
range = 70f;
healPercent = 13f;
range = 85f;
healPercent = 14f;
health = 80 * size * size;
consumes.item(Items.phasefabric).optional(true);
}};
@ -1131,7 +1136,7 @@ public class Blocks implements ContentList{
Items.scrap, Bullets.flakScrap,
Items.lead, Bullets.flakLead
);
reload = 25f;
reload = 20f;
range = 180f;
size = 2;
burstSpacing = 5f;
@ -1317,8 +1322,8 @@ public class Blocks implements ContentList{
Items.surgealloy, Bullets.flakSurge
);
xRand = 4f;
reload = 8f;
range = 160f;
reload = 7f;
range = 170f;
size = 3;
recoil = 3f;
rotatespeed = 10f;

View File

@ -178,7 +178,7 @@ public class UnitTypes implements ContentList{
drag = 0.01f;
mass = 1.5f;
isFlying = true;
health = 70;
health = 75;
engineOffset = 5.5f;
weapon = new Weapon("chain-blaster"){{
length = 1.5f;
@ -190,7 +190,7 @@ public class UnitTypes implements ContentList{
}};
ghoul = new UnitType("ghoul", Ghoul.class, Ghoul::new){{
health = 250;
health = 220;
speed = 0.2f;
maxVelocity = 1.4f;
mass = 3f;

View File

@ -211,7 +211,7 @@ public class FloorRenderer{
int chunksx = Mathf.ceil((float) (world.width()) / chunksize),
chunksy = Mathf.ceil((float) (world.height()) / chunksize) ;
cache = new Chunk[chunksx][chunksy];
SpriteCache sprites = new SpriteCache(world.width() * world.height() * 5, (world.width() / chunksize) * (world.height() / chunksize) * 2, false);
SpriteCache sprites = new SpriteCache(world.width() * world.height() * 6, (world.width() / chunksize) * (world.height() / chunksize) * 2, false);
cbatch = new CacheBatch(sprites);
Time.mark();

View File

@ -8,11 +8,9 @@ import io.anuke.arc.function.Supplier;
import io.anuke.arc.graphics.g2d.TextureRegion;
import io.anuke.arc.scene.ui.layout.Table;
import io.anuke.mindustry.content.Loadouts;
import io.anuke.mindustry.content.StatusEffects;
import io.anuke.mindustry.game.EventType.ZoneCompleteEvent;
import io.anuke.mindustry.game.EventType.ZoneConfigureCompleteEvent;
import io.anuke.mindustry.game.Rules;
import io.anuke.mindustry.game.SpawnGroup;
import io.anuke.mindustry.game.UnlockableContent;
import io.anuke.mindustry.maps.generators.Generator;
import io.anuke.mindustry.maps.generators.MapGenerator;
@ -32,7 +30,7 @@ public class Zone extends UnlockableContent{
public Supplier<Rules> rules = Rules::new;
public boolean alwaysUnlocked;
public int conditionWave = Integer.MAX_VALUE;
public int configureWave = 40;
public int configureWave = 10;
public int launchPeriod = 10;
public Loadout loadout = Loadouts.basicShard;
@ -45,15 +43,6 @@ public class Zone extends UnlockableContent{
this.generator = generator;
}
protected SpawnGroup bossGroup(UnitType type){
return new SpawnGroup(type){{
begin = configureWave-1;
effect = StatusEffects.boss;
unitScaling = 1;
spacing = configureWave;
}};
}
public boolean isBossWave(int wave){
return wave % configureWave == 0 && wave > 0;
}

View File

@ -124,10 +124,17 @@ public class ZoneInfoDialog extends FloatingDialog{
rebuildLoadout[0] = () -> {
load.clear();
float bsize = 40f;
int step = 100;
int step = 50;
load.left();
for(ItemStack stack : zone.getStartingItems()){
load.addButton("x", () -> {
zone.getStartingItems().remove(stack);
zone.updateLaunchCost();
rebuildItems.run();
rebuildLoadout[0].run();
}).size(bsize).pad(2);
load.addButton("-", () -> {
stack.amount = Math.max(stack.amount - step, 0);
zone.updateLaunchCost();

View File

@ -1,6 +1,8 @@
package io.anuke.mindustry.world.blocks;
import io.anuke.arc.Core;
import io.anuke.arc.collection.Array;
import io.anuke.arc.collection.IntSet;
import io.anuke.arc.graphics.g2d.Draw;
import io.anuke.arc.graphics.g2d.TextureRegion;
import io.anuke.arc.math.Mathf;
@ -58,6 +60,8 @@ public class Floor extends Block{
protected TextureRegion[][] edges;
protected byte eq = 0;
protected Array<Block> blenders = new Array<>();
protected IntSet blended = new IntSet();
public Floor(String name){
super(name);
@ -121,27 +125,36 @@ public class Floor extends Block{
}
protected void drawEdges(Tile tile, boolean sameLayer){
blenders.clear();
blended.clear();
eq = 0;
for(int i = 0; i < 8; i++){
Point2 point = Geometry.d8[i];
Tile other = tile.getNearby(point);
if(other != null && doEdge(other.floor(), sameLayer) && other.floor().edges() != null){
if(blended.add(other.floor().id)){
blenders.add(other.floor());
}
eq |= (1 << i);
}
}
blenders.sort((a, b) -> Integer.compare(a.id, b.id));
for(Block block : blenders){
for(int i = 0; i < 8; i++){
if(eq(i)){
Point2 point = Geometry.d8[i];
Tile other = tile.getNearby(point);
TextureRegion region = edge(other.floor(), type(i), 2-(point.x + 1), 2-(point.y + 1));
if(other != null && other.floor() == block){
TextureRegion region = edge((Floor)block, type(i), 2-(point.x + 1), 2-(point.y + 1));
Draw.rect(region, tile.worldx(), tile.worldy());
}
}
}
}
protected TextureRegion[][] edges(){
return ((Floor)blendGroup).edges;
}

View File

@ -34,20 +34,7 @@ public abstract class Consume{
return update;
}
public abstract void build(Tile tile, Table table);/*{
Table t = new Table("flat");
t.margin(4);
buildTooltip(t);
int scale = mobile ? 4 : 3;
table.table(out -> {
out.addImage(getIcon()).size(10 * scale).color(Color.DARK_GRAY).padRight(-10 * scale).padBottom(-scale * 2);
out.addImage(getIcon()).size(10 * scale).color(Pal.accent);
out.addImage("icon-missing").size(10 * scale).color(Pal.remove).padLeft(-10 * scale);
}).size(10 * scale).get().addListener(new Tooltip<>(t));
}*/
public abstract void build(Tile tile, Table table);
/**Called when a consumption is triggered manually.*/
public void trigger(Block block, TileEntity entity){