Add StartButton to other screens

Add references to core projects
This commit is contained in:
drdev
2014-02-23 22:27:18 +00:00
parent 2b8ec09fca
commit fa65bb10a6
9 changed files with 76 additions and 5 deletions

1
.gitattributes vendored
View File

@@ -15996,6 +15996,7 @@ forge-m-base/src/forge/screens/constructed/ConstructedScreen.java -text
forge-m-base/src/forge/screens/draft/DraftScreen.java -text
forge-m-base/src/forge/screens/guantlet/GuantletScreen.java -text
forge-m-base/src/forge/screens/home/HomeScreen.java -text
forge-m-base/src/forge/screens/match/MatchScreen.java -text
forge-m-base/src/forge/screens/quest/QuestScreen.java -text
forge-m-base/src/forge/screens/sealed/SealedScreen.java -text
forge-m-base/src/forge/screens/settings/SettingsScreen.java -text

View File

@@ -4,5 +4,9 @@
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.7"/>
<classpathentry exported="true" kind="lib" path="libs/gdx.jar" sourcepath="libs/gdx-sources.jar"/>
<classpathentry kind="lib" path="libs/gdx-freetype.jar"/>
<classpathentry combineaccessrules="false" kind="src" path="/forge-ai"/>
<classpathentry combineaccessrules="false" kind="src" path="/forge-core"/>
<classpathentry combineaccessrules="false" kind="src" path="/forge-game"/>
<classpathentry combineaccessrules="false" kind="src" path="/forge-net"/>
<classpathentry kind="output" path="bin"/>
</classpath>

View File

@@ -1,6 +1,7 @@
package forge.screens.constructed;
import forge.FScreen;
import forge.game.Match;
import forge.toolbox.StartButton;
public class ConstructedScreen extends FScreen {
@@ -10,8 +11,8 @@ public class ConstructedScreen extends FScreen {
super(true, "Constructed", true);
btnStart = add(new StartButton() {
@Override
public void start() {
//TODO: Start match
public Match createMatch() {
return null; //TODO: Start match
}
});
}

View File

@@ -1,14 +1,24 @@
package forge.screens.draft;
import forge.FScreen;
import forge.game.Match;
import forge.toolbox.StartButton;
public class DraftScreen extends FScreen {
private final StartButton btnStart;
public DraftScreen() {
super(true, "Draft", true);
btnStart = add(new StartButton() {
@Override
public Match createMatch() {
return null; //TODO: Start match
}
});
}
@Override
protected void doLayout(float startY, float width, float height) {
height = btnStart.updateLayout(width, height); //update height to exclude area taken up by StartButton
}
}

View File

@@ -1,14 +1,24 @@
package forge.screens.guantlet;
import forge.FScreen;
import forge.game.Match;
import forge.toolbox.StartButton;
public class GuantletScreen extends FScreen {
private final StartButton btnStart;
public GuantletScreen() {
super(true, "Guantlet", true);
btnStart = add(new StartButton() {
@Override
public Match createMatch() {
return null; //TODO: Start match
}
});
}
@Override
protected void doLayout(float startY, float width, float height) {
height = btnStart.updateLayout(width, height); //update height to exclude area taken up by StartButton
}
}

View File

@@ -0,0 +1,17 @@
package forge.screens.match;
import forge.FScreen;
import forge.game.Match;
public class MatchScreen extends FScreen {
private final Match match;
public MatchScreen(Match match0) {
super(false, null, true);
this.match = match0;
}
@Override
protected void doLayout(float startY, float width, float height) {
}
}

View File

@@ -1,14 +1,24 @@
package forge.screens.quest;
import forge.FScreen;
import forge.game.Match;
import forge.toolbox.StartButton;
public class QuestScreen extends FScreen {
private final StartButton btnStart;
public QuestScreen() {
super(true, "Quest", true);
btnStart = add(new StartButton() {
@Override
public Match createMatch() {
return null; //TODO: Start match
}
});
}
@Override
protected void doLayout(float startY, float width, float height) {
height = btnStart.updateLayout(width, height); //update height to exclude area taken up by StartButton
}
}

View File

@@ -1,14 +1,24 @@
package forge.screens.sealed;
import forge.FScreen;
import forge.game.Match;
import forge.toolbox.StartButton;
public class SealedScreen extends FScreen {
private final StartButton btnStart;
public SealedScreen() {
super(true, "Sealed", true);
btnStart = add(new StartButton() {
@Override
public Match createMatch() {
return null; //TODO: Start match
}
});
}
@Override
protected void doLayout(float startY, float width, float height) {
height = btnStart.updateLayout(width, height); //update height to exclude area taken up by StartButton
}
}

View File

@@ -1,10 +1,14 @@
package forge.toolbox;
import forge.Forge;
import forge.Forge.Graphics;
import forge.assets.FSkinImage;
import forge.game.Match;
import forge.screens.match.MatchScreen;
public abstract class StartButton extends FDisplayObject {
private boolean pressed;
private boolean creatingMatch;
/**
* Instantiates a new FButton.
@@ -12,7 +16,7 @@ public abstract class StartButton extends FDisplayObject {
public StartButton() {
}
public abstract void start();
public abstract Match createMatch();
@Override
public final boolean touchDown(float x, float y) {
@@ -28,8 +32,12 @@ public abstract class StartButton extends FDisplayObject {
@Override
public final boolean tap(float x, float y, int count) {
if (count == 1) {
start();
if (count == 1 && !creatingMatch) {
creatingMatch = true; //ensure user doesn't create multiple matches by tapping multiple times
Match match = createMatch();
if (match != null) {
Forge.openScreen(new MatchScreen(match));
}
}
return true;
}