mirror of
https://github.com/Retera/WarsmashModEngine.git
synced 2022-07-31 17:38:59 +02:00
Some small updates, fix shimmering portal render
This commit is contained in:
parent
d7cad72100
commit
c5b61afa28
@ -135,7 +135,7 @@ public class WarsmashGdxFDFTestRenderScreen implements InputProcessor, Screen, S
|
|||||||
this.uiViewport = new FitViewport(aspect3By4Width, aspect3By4Height, this.uiCamera);
|
this.uiViewport = new FitViewport(aspect3By4Width, aspect3By4Height, this.uiCamera);
|
||||||
this.uiViewport.update(width, height);
|
this.uiViewport.update(width, height);
|
||||||
|
|
||||||
this.uiCamera.position.set(this.getMinWorldWidth() / 2, this.getMinWorldHeight() / 2, 0);
|
this.uiCamera.position.set(getMinWorldWidth() / 2, getMinWorldHeight() / 2, 0);
|
||||||
this.uiCamera.update();
|
this.uiCamera.update();
|
||||||
|
|
||||||
this.batch = new SpriteBatch();
|
this.batch = new SpriteBatch();
|
||||||
@ -166,8 +166,7 @@ public class WarsmashGdxFDFTestRenderScreen implements InputProcessor, Screen, S
|
|||||||
// WarsmashGdxMapGame.this.viewer.setGameUI(rootFrame);
|
// WarsmashGdxMapGame.this.viewer.setGameUI(rootFrame);
|
||||||
|
|
||||||
if (WarsmashConstants.ENABLE_MUSIC) {
|
if (WarsmashConstants.ENABLE_MUSIC) {
|
||||||
final String musicField = rootFrame
|
final String musicField = rootFrame.getSkinField("GlueMusic");
|
||||||
.getSkinField("GlueMusic_V" + WarsmashConstants.GAME_VERSION);
|
|
||||||
final String[] musics = musicField.split(";");
|
final String[] musics = musicField.split(";");
|
||||||
String musicPath = musics[(int) (Math.random() * musics.length)];
|
String musicPath = musics[(int) (Math.random() * musics.length)];
|
||||||
if (musicSLK.get(musicPath) != null) {
|
if (musicSLK.get(musicPath) != null) {
|
||||||
@ -184,11 +183,9 @@ public class WarsmashGdxFDFTestRenderScreen implements InputProcessor, Screen, S
|
|||||||
WarsmashGdxFDFTestRenderScreen.this.currentMusic = music;
|
WarsmashGdxFDFTestRenderScreen.this.currentMusic = music;
|
||||||
}
|
}
|
||||||
|
|
||||||
WarsmashGdxFDFTestRenderScreen.this
|
WarsmashGdxFDFTestRenderScreen.this.singleModelScene(
|
||||||
.singleModelScene(WarsmashGdxFDFTestRenderScreen.this.scene,
|
WarsmashGdxFDFTestRenderScreen.this.scene,
|
||||||
War3MapViewer.mdx(rootFrame.getSkinField(
|
War3MapViewer.mdx(rootFrame.getSkinField("GlueSpriteLayerBackground")), "Stand");
|
||||||
"GlueSpriteLayerBackground_V" + WarsmashConstants.GAME_VERSION)),
|
|
||||||
"Stand");
|
|
||||||
WarsmashGdxFDFTestRenderScreen.this.modelCamera = WarsmashGdxFDFTestRenderScreen.this.mainModel.cameras
|
WarsmashGdxFDFTestRenderScreen.this.modelCamera = WarsmashGdxFDFTestRenderScreen.this.mainModel.cameras
|
||||||
.get(0);
|
.get(0);
|
||||||
}
|
}
|
||||||
@ -200,9 +197,9 @@ public class WarsmashGdxFDFTestRenderScreen implements InputProcessor, Screen, S
|
|||||||
libgdxContentInstance.setScene(this.uiScene);
|
libgdxContentInstance.setScene(this.uiScene);
|
||||||
this.menuUI.main();
|
this.menuUI.main();
|
||||||
|
|
||||||
this.updateUIScene();
|
updateUIScene();
|
||||||
|
|
||||||
this.resize(width, height);
|
resize(width, height);
|
||||||
}
|
}
|
||||||
|
|
||||||
Gdx.input.setInputProcessor(this);
|
Gdx.input.setInputProcessor(this);
|
||||||
@ -234,8 +231,8 @@ public class WarsmashGdxFDFTestRenderScreen implements InputProcessor, Screen, S
|
|||||||
this.uiScene.camera.viewport(this.tempRect);
|
this.uiScene.camera.viewport(this.tempRect);
|
||||||
final float worldWidth = this.uiViewport.getWorldWidth();
|
final float worldWidth = this.uiViewport.getWorldWidth();
|
||||||
final float worldHeight = this.uiViewport.getWorldHeight();
|
final float worldHeight = this.uiViewport.getWorldHeight();
|
||||||
final float xScale = worldWidth / this.getMinWorldWidth();
|
final float xScale = worldWidth / getMinWorldWidth();
|
||||||
final float yScale = worldHeight / this.getMinWorldHeight();
|
final float yScale = worldHeight / getMinWorldHeight();
|
||||||
final float uiSceneWidth = 0.8f * xScale;
|
final float uiSceneWidth = 0.8f * xScale;
|
||||||
final float uiSceneHeight = 0.6f * yScale;
|
final float uiSceneHeight = 0.6f * yScale;
|
||||||
final float uiSceneX = (0.8f - uiSceneWidth) / 2;
|
final float uiSceneX = (0.8f - uiSceneWidth) / 2;
|
||||||
@ -251,7 +248,7 @@ public class WarsmashGdxFDFTestRenderScreen implements InputProcessor, Screen, S
|
|||||||
return new SolvedPath(src, src.substring(src.lastIndexOf('.')), true);
|
return new SolvedPath(src, src.substring(src.lastIndexOf('.')), true);
|
||||||
}
|
}
|
||||||
}, null);
|
}, null);
|
||||||
this.makePerfectSquare(scene, model2, 15);
|
makePerfectSquare(scene, model2, 15);
|
||||||
}
|
}
|
||||||
|
|
||||||
private void singleAcolyteScene(final Scene scene) {
|
private void singleAcolyteScene(final Scene scene) {
|
||||||
@ -314,7 +311,7 @@ public class WarsmashGdxFDFTestRenderScreen implements InputProcessor, Screen, S
|
|||||||
this.mainModel = null;
|
this.mainModel = null;
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
this.singleModelScene(this.scene, War3MapViewer.mdx(path), "birth");
|
singleModelScene(this.scene, War3MapViewer.mdx(path), "birth");
|
||||||
WarsmashGdxFDFTestRenderScreen.this.modelCamera = WarsmashGdxFDFTestRenderScreen.this.mainModel.cameras
|
WarsmashGdxFDFTestRenderScreen.this.modelCamera = WarsmashGdxFDFTestRenderScreen.this.mainModel.cameras
|
||||||
.get(0);
|
.get(0);
|
||||||
// this hack is because we only have the queued animation system in RenderWidget
|
// this hack is because we only have the queued animation system in RenderWidget
|
||||||
@ -569,10 +566,10 @@ public class WarsmashGdxFDFTestRenderScreen implements InputProcessor, Screen, S
|
|||||||
// super.resize(width, height);
|
// super.resize(width, height);
|
||||||
|
|
||||||
this.uiViewport.update(width, height);
|
this.uiViewport.update(width, height);
|
||||||
this.uiCamera.position.set(this.getMinWorldWidth() / 2, this.getMinWorldHeight() / 2, 0);
|
this.uiCamera.position.set(getMinWorldWidth() / 2, getMinWorldHeight() / 2, 0);
|
||||||
|
|
||||||
this.menuUI.resize();
|
this.menuUI.resize();
|
||||||
this.updateUIScene();
|
updateUIScene();
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -615,7 +612,7 @@ public class WarsmashGdxFDFTestRenderScreen implements InputProcessor, Screen, S
|
|||||||
this.quatHeap = new Quaternion();
|
this.quatHeap = new Quaternion();
|
||||||
this.quatHeap2 = new Quaternion();
|
this.quatHeap2 = new Quaternion();
|
||||||
|
|
||||||
this.updateCamera();
|
updateCamera();
|
||||||
|
|
||||||
// cameraUpdate();
|
// cameraUpdate();
|
||||||
}
|
}
|
||||||
@ -793,7 +790,7 @@ public class WarsmashGdxFDFTestRenderScreen implements InputProcessor, Screen, S
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void renderTranslucent() {
|
public void renderTranslucent() {
|
||||||
WarsmashGdxFDFTestRenderScreen.this.renderLibGDXContent();
|
renderLibGDXContent();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
@ -31,7 +31,6 @@ import com.etheller.warsmash.units.DataTable;
|
|||||||
import com.etheller.warsmash.units.Element;
|
import com.etheller.warsmash.units.Element;
|
||||||
import com.etheller.warsmash.util.ImageUtils;
|
import com.etheller.warsmash.util.ImageUtils;
|
||||||
import com.etheller.warsmash.util.StringBundle;
|
import com.etheller.warsmash.util.StringBundle;
|
||||||
import com.etheller.warsmash.util.WarsmashConstants;
|
|
||||||
import com.etheller.warsmash.viewer5.Camera;
|
import com.etheller.warsmash.viewer5.Camera;
|
||||||
import com.etheller.warsmash.viewer5.CanvasProvider;
|
import com.etheller.warsmash.viewer5.CanvasProvider;
|
||||||
import com.etheller.warsmash.viewer5.Model;
|
import com.etheller.warsmash.viewer5.Model;
|
||||||
@ -207,9 +206,8 @@ public class WarsmashGdxMenuScreen implements InputProcessor, Screen, SingleMode
|
|||||||
public void onCreate(final GameUI rootFrame) {
|
public void onCreate(final GameUI rootFrame) {
|
||||||
// WarsmashGdxMapGame.this.viewer.setGameUI(rootFrame);
|
// WarsmashGdxMapGame.this.viewer.setGameUI(rootFrame);
|
||||||
|
|
||||||
singleModelScene(WarsmashGdxMenuScreen.this.scene, War3MapViewer.mdx(rootFrame
|
singleModelScene(WarsmashGdxMenuScreen.this.scene,
|
||||||
.getSkinField("GlueSpriteLayerBackground_V" + WarsmashConstants.GAME_VERSION)),
|
War3MapViewer.mdx(rootFrame.getSkinField("GlueSpriteLayerBackground")), "Stand");
|
||||||
"Stand");
|
|
||||||
if (!WarsmashGdxMenuScreen.this.mainModel.cameras.isEmpty()) {
|
if (!WarsmashGdxMenuScreen.this.mainModel.cameras.isEmpty()) {
|
||||||
WarsmashGdxMenuScreen.this.modelCamera = WarsmashGdxMenuScreen.this.mainModel.cameras
|
WarsmashGdxMenuScreen.this.modelCamera = WarsmashGdxMenuScreen.this.mainModel.cameras
|
||||||
.get(0);
|
.get(0);
|
||||||
|
@ -22,6 +22,9 @@ public class SingleStringFrame extends AbstractRenderableFrame {
|
|||||||
public SingleStringFrame(final String name, final UIFrame parent, final Color color, final TextJustify justifyH,
|
public SingleStringFrame(final String name, final UIFrame parent, final Color color, final TextJustify justifyH,
|
||||||
final TextJustify justifyV, final BitmapFont frameFont) {
|
final TextJustify justifyV, final BitmapFont frameFont) {
|
||||||
super(name, parent);
|
super(name, parent);
|
||||||
|
if (color == null) {
|
||||||
|
throw new IllegalArgumentException();
|
||||||
|
}
|
||||||
this.color = color;
|
this.color = color;
|
||||||
this.justifyH = justifyH;
|
this.justifyH = justifyH;
|
||||||
this.justifyV = justifyV;
|
this.justifyV = justifyV;
|
||||||
@ -37,6 +40,9 @@ public class SingleStringFrame extends AbstractRenderableFrame {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public void setColor(final Color color) {
|
public void setColor(final Color color) {
|
||||||
|
if (color == null) {
|
||||||
|
throw new IllegalArgumentException();
|
||||||
|
}
|
||||||
this.color = color;
|
this.color = color;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -82,6 +82,7 @@ import com.etheller.warsmash.viewer5.handlers.w3x.simulation.CUnitType;
|
|||||||
import com.etheller.warsmash.viewer5.handlers.w3x.simulation.CWidget;
|
import com.etheller.warsmash.viewer5.handlers.w3x.simulation.CWidget;
|
||||||
import com.etheller.warsmash.viewer5.handlers.w3x.simulation.abilities.CAbility;
|
import com.etheller.warsmash.viewer5.handlers.w3x.simulation.abilities.CAbility;
|
||||||
import com.etheller.warsmash.viewer5.handlers.w3x.simulation.abilities.GetAbilityByRawcodeVisitor;
|
import com.etheller.warsmash.viewer5.handlers.w3x.simulation.abilities.GetAbilityByRawcodeVisitor;
|
||||||
|
import com.etheller.warsmash.viewer5.handlers.w3x.simulation.abilities.generic.AbstractGenericAliasedAbility;
|
||||||
import com.etheller.warsmash.viewer5.handlers.w3x.simulation.abilities.generic.CLevelingAbility;
|
import com.etheller.warsmash.viewer5.handlers.w3x.simulation.abilities.generic.CLevelingAbility;
|
||||||
import com.etheller.warsmash.viewer5.handlers.w3x.simulation.abilities.inventory.CAbilityInventory;
|
import com.etheller.warsmash.viewer5.handlers.w3x.simulation.abilities.inventory.CAbilityInventory;
|
||||||
import com.etheller.warsmash.viewer5.handlers.w3x.simulation.abilities.mine.CAbilityBlightedGoldMine;
|
import com.etheller.warsmash.viewer5.handlers.w3x.simulation.abilities.mine.CAbilityBlightedGoldMine;
|
||||||
@ -649,6 +650,53 @@ public class Jass2 {
|
|||||||
return new StringJassValue("");
|
return new StringJassValue("");
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
jassProgramVisitor.getJassNativeManager().createNative("BlzGetUnitAbilityByIndex", new JassFunction() {
|
||||||
|
@Override
|
||||||
|
public JassValue call(final List<JassValue> arguments, final GlobalScope globalScope,
|
||||||
|
final TriggerExecutionScope triggerScope) {
|
||||||
|
final CUnit whichUnit = arguments.get(0).visit(ObjectJassValueVisitor.getInstance());
|
||||||
|
final int whichAbilityIndex = arguments.get(1).visit(IntegerJassValueVisitor.getInstance());
|
||||||
|
|
||||||
|
final List<CAbility> abilities = whichUnit.getAbilities();
|
||||||
|
if (whichAbilityIndex < abilities.size()) {
|
||||||
|
return new HandleJassValue(abilityType, abilities.get(whichAbilityIndex));
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
return new HandleJassValue(abilityType, null);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
jassProgramVisitor.getJassNativeManager().createNative("WarsmashGetAbilityTypeId", new JassFunction() {
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public JassValue call(final List<JassValue> arguments, final GlobalScope globalScope,
|
||||||
|
final TriggerExecutionScope triggerScope) {
|
||||||
|
final CAbility ability = arguments.get(0).visit(ObjectJassValueVisitor.getInstance());
|
||||||
|
if (ability instanceof AbstractGenericAliasedAbility) {
|
||||||
|
final AbstractGenericAliasedAbility aliasedAbility = (AbstractGenericAliasedAbility) ability;
|
||||||
|
return new IntegerJassValue(aliasedAbility.getAlias().getValue());
|
||||||
|
}
|
||||||
|
return IntegerJassValue.ZERO;
|
||||||
|
}
|
||||||
|
});
|
||||||
|
jassProgramVisitor.getJassNativeManager().createNative("WarsmashGetAbilityClassName", new JassFunction() {
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public JassValue call(final List<JassValue> arguments, final GlobalScope globalScope,
|
||||||
|
final TriggerExecutionScope triggerScope) {
|
||||||
|
final CAbility ability = arguments.get(0).visit(ObjectJassValueVisitor.getInstance());
|
||||||
|
return new StringJassValue(ability.getClass().getSimpleName());
|
||||||
|
}
|
||||||
|
});
|
||||||
|
jassProgramVisitor.getJassNativeManager().createNative("WarsmashGetRawcode2String", new JassFunction() {
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public JassValue call(final List<JassValue> arguments, final GlobalScope globalScope,
|
||||||
|
final TriggerExecutionScope triggerScope) {
|
||||||
|
final int rawcode = arguments.get(0).visit(IntegerJassValueVisitor.getInstance());
|
||||||
|
return new StringJassValue(new War3ID(rawcode).toString());
|
||||||
|
}
|
||||||
|
});
|
||||||
jassProgramVisitor.getJassNativeManager().createNative("GetObjectName", new JassFunction() {
|
jassProgramVisitor.getJassNativeManager().createNative("GetObjectName", new JassFunction() {
|
||||||
@Override
|
@Override
|
||||||
public JassValue call(final List<JassValue> arguments, final GlobalScope globalScope,
|
public JassValue call(final List<JassValue> arguments, final GlobalScope globalScope,
|
||||||
@ -1325,6 +1373,9 @@ public class Jass2 {
|
|||||||
.visit(ObjectJassValueVisitor.<List<CPlayerJass>>getInstance());
|
.visit(ObjectJassValueVisitor.<List<CPlayerJass>>getInstance());
|
||||||
final CPlayerJass player = arguments.get(1)
|
final CPlayerJass player = arguments.get(1)
|
||||||
.visit(ObjectJassValueVisitor.<CPlayerJass>getInstance());
|
.visit(ObjectJassValueVisitor.<CPlayerJass>getInstance());
|
||||||
|
if (force == null) {
|
||||||
|
throw new JassException(globalScope, "force is null", new NullPointerException());
|
||||||
|
}
|
||||||
force.add(player);
|
force.add(player);
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
@ -27,7 +27,7 @@ public class WarsmashConstants {
|
|||||||
// find it yet so I used this
|
// find it yet so I used this
|
||||||
public static final String DEFAULT_STRING = "Default string";
|
public static final String DEFAULT_STRING = "Default string";
|
||||||
|
|
||||||
public static final boolean CATCH_CURSOR = false;
|
public static final boolean CATCH_CURSOR = true;
|
||||||
public static final boolean VERBOSE_LOGGING = false;
|
public static final boolean VERBOSE_LOGGING = false;
|
||||||
public static final boolean ENABLE_DEBUG = false;
|
public static final boolean ENABLE_DEBUG = false;
|
||||||
public static final char SPECIAL_ESCAPE_KEYCODE = 0x7E;
|
public static final char SPECIAL_ESCAPE_KEYCODE = 0x7E;
|
||||||
@ -38,7 +38,7 @@ public class WarsmashConstants {
|
|||||||
// workaround to fix it if you need the local files
|
// workaround to fix it if you need the local files
|
||||||
// to take priority over built-ins for tilesets.
|
// to take priority over built-ins for tilesets.
|
||||||
public static final boolean FIX_FLAT_FILES_TILESET_LOADING = false;
|
public static final boolean FIX_FLAT_FILES_TILESET_LOADING = false;
|
||||||
public static final boolean ENABLE_MUSIC = false;
|
public static final boolean ENABLE_MUSIC = true;
|
||||||
public static final boolean LOAD_UNITS_FROM_WORLDEDIT_DATA = false;
|
public static final boolean LOAD_UNITS_FROM_WORLDEDIT_DATA = false;
|
||||||
public static final boolean CRASH_ON_INCOMPATIBLE_132_FEATURES = false;
|
public static final boolean CRASH_ON_INCOMPATIBLE_132_FEATURES = false;
|
||||||
public static final boolean FIRE_DEATH_EVENTS_ON_REMOVEUNIT = false;
|
public static final boolean FIRE_DEATH_EVENTS_ON_REMOVEUNIT = false;
|
||||||
|
@ -119,7 +119,8 @@ public abstract class SkeletalNode extends GenericNode {
|
|||||||
computedRotation.mul(scene.camera.inverseRotation);
|
computedRotation.mul(scene.camera.inverseRotation);
|
||||||
}
|
}
|
||||||
|
|
||||||
this.convertBasis(computedRotation);
|
convertBasis(computedRotation);
|
||||||
|
computedRotation.mul(this.localRotation);
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
computedRotation = rotationHeap.set(this.localRotation);
|
computedRotation = rotationHeap.set(this.localRotation);
|
||||||
|
@ -182,27 +182,27 @@ public class PlayerSlotPane {
|
|||||||
|
|
||||||
public void setTextFromRacePreference(final GameUI rootFrame, final CPlayerJass player) {
|
public void setTextFromRacePreference(final GameUI rootFrame, final CPlayerJass player) {
|
||||||
final MenuFrame menuFrame = (MenuFrame) this.raceMenu.getPopupMenuFrame();
|
final MenuFrame menuFrame = (MenuFrame) this.raceMenu.getPopupMenuFrame();
|
||||||
if (player.isRacePrefSet(CRacePreference.RANDOM)) {
|
if (player.isRacePrefSet(CRacePreference.RANDOM) && (menuFrame.getMenuItemCount() > 0)) {
|
||||||
rootFrame.setText(
|
rootFrame.setText(
|
||||||
((StringFrame) ((GlueTextButtonFrame) this.raceMenu.getPopupTitleFrame()).getButtonText()),
|
((StringFrame) ((GlueTextButtonFrame) this.raceMenu.getPopupTitleFrame()).getButtonText()),
|
||||||
menuFrame.getMenuItem(0).getText());
|
menuFrame.getMenuItem(0).getText());
|
||||||
}
|
}
|
||||||
else if (player.isRacePrefSet(CRacePreference.HUMAN)) {
|
else if (player.isRacePrefSet(CRacePreference.HUMAN) && (menuFrame.getMenuItemCount() > 1)) {
|
||||||
rootFrame.setText(
|
rootFrame.setText(
|
||||||
((StringFrame) ((GlueTextButtonFrame) this.raceMenu.getPopupTitleFrame()).getButtonText()),
|
((StringFrame) ((GlueTextButtonFrame) this.raceMenu.getPopupTitleFrame()).getButtonText()),
|
||||||
menuFrame.getMenuItem(1).getText());
|
menuFrame.getMenuItem(1).getText());
|
||||||
}
|
}
|
||||||
else if (player.isRacePrefSet(CRacePreference.ORC)) {
|
else if (player.isRacePrefSet(CRacePreference.ORC) && (menuFrame.getMenuItemCount() > 2)) {
|
||||||
rootFrame.setText(
|
rootFrame.setText(
|
||||||
((StringFrame) ((GlueTextButtonFrame) this.raceMenu.getPopupTitleFrame()).getButtonText()),
|
((StringFrame) ((GlueTextButtonFrame) this.raceMenu.getPopupTitleFrame()).getButtonText()),
|
||||||
menuFrame.getMenuItem(2).getText());
|
menuFrame.getMenuItem(2).getText());
|
||||||
}
|
}
|
||||||
else if (player.isRacePrefSet(CRacePreference.UNDEAD)) {
|
else if (player.isRacePrefSet(CRacePreference.UNDEAD) && (menuFrame.getMenuItemCount() > 3)) {
|
||||||
rootFrame.setText(
|
rootFrame.setText(
|
||||||
((StringFrame) ((GlueTextButtonFrame) this.raceMenu.getPopupTitleFrame()).getButtonText()),
|
((StringFrame) ((GlueTextButtonFrame) this.raceMenu.getPopupTitleFrame()).getButtonText()),
|
||||||
menuFrame.getMenuItem(3).getText());
|
menuFrame.getMenuItem(3).getText());
|
||||||
}
|
}
|
||||||
else if (player.isRacePrefSet(CRacePreference.NIGHTELF)) {
|
else if (player.isRacePrefSet(CRacePreference.NIGHTELF) && (menuFrame.getMenuItemCount() > 4)) {
|
||||||
rootFrame.setText(
|
rootFrame.setText(
|
||||||
((StringFrame) ((GlueTextButtonFrame) this.raceMenu.getPopupTitleFrame()).getButtonText()),
|
((StringFrame) ((GlueTextButtonFrame) this.raceMenu.getPopupTitleFrame()).getButtonText()),
|
||||||
menuFrame.getMenuItem(4).getText());
|
menuFrame.getMenuItem(4).getText());
|
||||||
|
@ -3,6 +3,7 @@ package com.etheller.warsmash.viewer5.handlers.w3x.ui.mapsetup;
|
|||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
|
import com.badlogic.gdx.graphics.Color;
|
||||||
import com.badlogic.gdx.utils.viewport.Viewport;
|
import com.badlogic.gdx.utils.viewport.Viewport;
|
||||||
import com.etheller.warsmash.datasources.DataSource;
|
import com.etheller.warsmash.datasources.DataSource;
|
||||||
import com.etheller.warsmash.parsers.fdf.GameUI;
|
import com.etheller.warsmash.parsers.fdf.GameUI;
|
||||||
@ -40,8 +41,8 @@ public class TeamSetupPane {
|
|||||||
int forceIndex = 0;
|
int forceIndex = 0;
|
||||||
for (final Force force : mapInfo.getForces()) {
|
for (final Force force : mapInfo.getForces()) {
|
||||||
final StringFrame forceLabelString = rootFrame.createStringFrame(
|
final StringFrame forceLabelString = rootFrame.createStringFrame(
|
||||||
"SmashForce" + forceIndex + "NameLabel", rootFrame, null, TextJustify.LEFT, TextJustify.MIDDLE,
|
"SmashForce" + forceIndex + "NameLabel", rootFrame, Color.WHITE, TextJustify.LEFT,
|
||||||
0.01f);
|
TextJustify.MIDDLE, 0.01f);
|
||||||
rootFrame.setText(forceLabelString, rootFrame.getTrigStr(force.getName()));
|
rootFrame.setText(forceLabelString, rootFrame.getTrigStr(force.getName()));
|
||||||
for (int i = 0; (i < WarsmashConstants.MAX_PLAYERS) && (usedSlots < playerCount); i++) {
|
for (int i = 0; (i < WarsmashConstants.MAX_PLAYERS) && (usedSlots < playerCount); i++) {
|
||||||
final CBasePlayer player = config.getPlayer(i);
|
final CBasePlayer player = config.getPlayer(i);
|
||||||
|
@ -21,6 +21,15 @@ application {
|
|||||||
applicationDefaultJvmArgs = []
|
applicationDefaultJvmArgs = []
|
||||||
}
|
}
|
||||||
|
|
||||||
|
task runGame(dependsOn: classes, type: JavaExec) {
|
||||||
|
main = project.mainClassName
|
||||||
|
classpath = sourceSets.main.runtimeClasspath
|
||||||
|
standardInput = System.in
|
||||||
|
workingDir = project.assetsDir
|
||||||
|
ignoreExitValue = true
|
||||||
|
args cmdargs.split()
|
||||||
|
}
|
||||||
|
|
||||||
task debug(dependsOn: classes, type: JavaExec) {
|
task debug(dependsOn: classes, type: JavaExec) {
|
||||||
main = project.mainClassName
|
main = project.mainClassName
|
||||||
classpath = sourceSets.main.runtimeClasspath
|
classpath = sourceSets.main.runtimeClasspath
|
||||||
|
@ -43,6 +43,7 @@ import com.etheller.warsmash.viewer5.gl.WireframeExtension;
|
|||||||
|
|
||||||
public class DesktopLauncher {
|
public class DesktopLauncher {
|
||||||
public static void main(final String[] arg) {
|
public static void main(final String[] arg) {
|
||||||
|
System.out.println("You ran it.");
|
||||||
final LwjglApplicationConfiguration config = new LwjglApplicationConfiguration();
|
final LwjglApplicationConfiguration config = new LwjglApplicationConfiguration();
|
||||||
config.useGL30 = true;
|
config.useGL30 = true;
|
||||||
config.gles30ContextMajorVersion = 3;
|
config.gles30ContextMajorVersion = 3;
|
||||||
@ -184,8 +185,8 @@ public class DesktopLauncher {
|
|||||||
}
|
}
|
||||||
};
|
};
|
||||||
Extensions.audio = new AudioExtension() {
|
Extensions.audio = new AudioExtension() {
|
||||||
final FloatBuffer orientation = (FloatBuffer)BufferUtils.createFloatBuffer(6).clear();
|
final FloatBuffer orientation = BufferUtils.createFloatBuffer(6).clear();
|
||||||
final FloatBuffer position = (FloatBuffer)BufferUtils.createFloatBuffer(3).clear();
|
final FloatBuffer position = BufferUtils.createFloatBuffer(3).clear();
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public float getDuration(final Sound sound) {
|
public float getDuration(final Sound sound) {
|
||||||
|
@ -267,12 +267,12 @@ EXITWHEN : 'exitwhen';
|
|||||||
DEBUG : 'debug';
|
DEBUG : 'debug';
|
||||||
|
|
||||||
fragment ESCAPED_QUOTE : '\\"';
|
fragment ESCAPED_QUOTE : '\\"';
|
||||||
STRING_LITERAL : '"' ( ESCAPED_QUOTE | ~('\n'|'\r') )*? '"';
|
STRING_LITERAL : '"' ( ESCAPED_QUOTE | . )*? '"';
|
||||||
|
|
||||||
|
|
||||||
INTEGER : [0]|([1-9][0-9]*) ;
|
INTEGER : [0]|([1-9][0-9]*) ;
|
||||||
|
|
||||||
HEX_CONSTANT : '0x'(([0-9]|[a-f])*) ;
|
HEX_CONSTANT : '0x'(([0-9]|[a-f]|[A-F])*) ;
|
||||||
DOLLAR_HEX_CONSTANT : '$'(([0-9]|[A-F])*) ;
|
DOLLAR_HEX_CONSTANT : '$'(([0-9]|[A-F])*) ;
|
||||||
|
|
||||||
RAWCODE : ('\''.*?'\'');
|
RAWCODE : ('\''.*?'\'');
|
||||||
|
Loading…
Reference in New Issue
Block a user