Nuke cutscene

This commit is contained in:
Anuken
2022-04-28 22:05:46 -04:00
parent 6e04c70b16
commit a46cc17d38
7 changed files with 22 additions and 9 deletions

View File

@@ -1123,6 +1123,7 @@ rules.title.planet = Planet
rules.lighting = Lighting rules.lighting = Lighting
rules.fog = Fog of War rules.fog = Fog of War
rules.fire = Fire rules.fire = Fire
rules.anyenv = <Any>
rules.explosions = Block/Unit Explosion Damage rules.explosions = Block/Unit Explosion Damage
rules.ambientlight = Ambient Light rules.ambientlight = Ambient Light
rules.weather = Weather rules.weather = Weather

Binary file not shown.

View File

@@ -28,6 +28,7 @@ import mindustry.net.*;
import mindustry.service.*; import mindustry.service.*;
import mindustry.ui.dialogs.*; import mindustry.ui.dialogs.*;
import mindustry.world.*; import mindustry.world.*;
import mindustry.world.meta.*;
import java.io.*; import java.io.*;
import java.nio.charset.*; import java.nio.charset.*;
@@ -49,6 +50,8 @@ public class Vars implements Loadable{
public static String steamPlayerName = ""; public static String steamPlayerName = "";
/** Default accessible content types used for player-selectable icons. */ /** Default accessible content types used for player-selectable icons. */
public static final ContentType[] defaultContentIcons = {ContentType.item, ContentType.liquid, ContentType.block, ContentType.unit}; public static final ContentType[] defaultContentIcons = {ContentType.item, ContentType.liquid, ContentType.block, ContentType.unit};
/** Default rule environment. */
public static final int defaultEnv = Env.terrestrial | Env.spores | Env.groundOil | Env.groundWater | Env.oxygen;
/** Wall darkness radius. */ /** Wall darkness radius. */
public static final int darkRadius = 4; public static final int darkRadius = 4;
/** Maximum extra padding around deployment schematics. TODO 4, or 5?*/ /** Maximum extra padding around deployment schematics. TODO 4, or 5?*/

View File

@@ -126,8 +126,7 @@ public class Planets{
allowLaunchSchematics = true; allowLaunchSchematics = true;
allowLaunchLoadout = true; allowLaunchLoadout = true;
ruleSetter = r -> { ruleSetter = r -> {
//TODO this planet is crux, need to update all maps. r.waveTeam = Team.crux;
//r.waveTeam = Team.crux;
r.placeRangeCheck = false; r.placeRangeCheck = false;
r.attributes.clear(); r.attributes.clear();
r.showSpawns = false; r.showSpawns = false;

View File

@@ -2500,7 +2500,7 @@ public class UnitTypes{
treadPullOffset = 5; treadPullOffset = 5;
speed = 0.7f; speed = 0.7f;
rotateSpeed = 2.6f; rotateSpeed = 2.6f;
health = 2000; health = 2100;
armor = 8f; armor = 8f;
itemCapacity = 0; itemCapacity = 0;
treadRects = new Rect[]{new Rect(17, 10, 19, 76)}; treadRects = new Rect[]{new Rect(17, 10, 19, 76)};
@@ -2527,7 +2527,7 @@ public class UnitTypes{
//TODO make this look nicer //TODO make this look nicer
bullet = new RailBulletType(){{ bullet = new RailBulletType(){{
length = 160f; length = 160f;
damage = 45f; damage = 48f;
hitColor = Color.valueOf("feb380"); hitColor = Color.valueOf("feb380");
hitEffect = endEffect = Fx.hitBulletColor; hitEffect = endEffect = Fx.hitBulletColor;
pierceDamageFactor = 0.8f; pierceDamageFactor = 0.8f;
@@ -2878,7 +2878,7 @@ public class UnitTypes{
smoothReloadSpeed = 0.15f; smoothReloadSpeed = 0.15f;
recoil = 2f; recoil = 2f;
bullet = new BasicBulletType(3.5f, 40){{ bullet = new BasicBulletType(3.5f, 27){{
backColor = trailColor = hitColor = Pal.techBlue; backColor = trailColor = hitColor = Pal.techBlue;
frontColor = Color.white; frontColor = Color.white;
width = 7.5f; width = 7.5f;
@@ -2894,7 +2894,7 @@ public class UnitTypes{
trailInterval = 6f; trailInterval = 6f;
splashDamageRadius = 23f; splashDamageRadius = 23f;
splashDamage = 36f; splashDamage = 40f;
hitEffect = despawnEffect = new MultiEffect(Fx.hitBulletColor, new WaveEffect(){{ hitEffect = despawnEffect = new MultiEffect(Fx.hitBulletColor, new WaveEffect(){{
colorFrom = colorTo = Pal.techBlue; colorFrom = colorTo = Pal.techBlue;

View File

@@ -5,6 +5,7 @@ import arc.struct.*;
import arc.util.*; import arc.util.*;
import arc.util.serialization.*; import arc.util.serialization.*;
import arc.util.serialization.Json.*; import arc.util.serialization.Json.*;
import mindustry.*;
import mindustry.content.*; import mindustry.content.*;
import mindustry.game.MapObjectives.*; import mindustry.game.MapObjectives.*;
import mindustry.graphics.g3d.*; import mindustry.graphics.g3d.*;
@@ -13,7 +14,6 @@ import mindustry.type.*;
import mindustry.type.Weather.*; import mindustry.type.Weather.*;
import mindustry.world.*; import mindustry.world.*;
import mindustry.world.blocks.*; import mindustry.world.blocks.*;
import mindustry.world.meta.*;
/** /**
* Defines current rules on how the game should function. * Defines current rules on how the game should function.
@@ -95,7 +95,7 @@ public class Rules{
/** Environment drag multiplier. */ /** Environment drag multiplier. */
public float dragMultiplier = 1f; public float dragMultiplier = 1f;
/** Environmental flags that dictate visuals & how blocks function. */ /** Environmental flags that dictate visuals & how blocks function. */
public int env = Env.terrestrial | Env.spores | Env.groundOil | Env.groundWater | Env.oxygen; public int env = Vars.defaultEnv;
/** Attributes of the environment. */ /** Attributes of the environment. */
public Attributes attributes = new Attributes(); public Attributes attributes = new Attributes();
/** Sector for saves that have them. */ /** Sector for saves that have them. */

View File

@@ -9,6 +9,7 @@ import arc.scene.ui.ImageButton.*;
import arc.scene.ui.layout.*; import arc.scene.ui.layout.*;
import arc.struct.*; import arc.struct.*;
import arc.util.*; import arc.util.*;
import mindustry.*;
import mindustry.content.*; import mindustry.content.*;
import mindustry.ctype.*; import mindustry.ctype.*;
import mindustry.game.*; import mindustry.game.*;
@@ -228,8 +229,17 @@ public class CustomRulesDialog extends BaseDialog{
//TODO dynamic selection of planets //TODO dynamic selection of planets
for(Planet planet : new Planet[]{Planets.serpulo, Planets.erekir}){ for(Planet planet : new Planet[]{Planets.serpulo, Planets.erekir}){
t.button(planet.localizedName, style, () -> planet.applyRules(rules)).group(group).checked(rules.env == planet.defaultEnv); t.button(planet.localizedName, style, () -> {
rules.env = planet.defaultEnv;
rules.hiddenBuildItems.clear();
rules.hiddenBuildItems.addAll(planet.hiddenItems);
}).group(group).checked(rules.env == planet.defaultEnv);
} }
t.button("@rules.anyenv", style, () -> {
rules.env = Vars.defaultEnv;
rules.hiddenBuildItems.clear();
}).group(group).checked(rules.hiddenBuildItems.size == 0);
}).left().fill(false).expand(false, false).row(); }).left().fill(false).expand(false, false).row();
title("@rules.title.teams"); title("@rules.title.teams");