Update Shining Death Info

This commit is contained in:
bigJIU 2023-03-03 15:52:11 +08:00
parent 85fde930f8
commit 3b69e5d6f1
4 changed files with 28 additions and 8 deletions

8
.idea/workspace.xml generated
View File

@ -3,10 +3,8 @@
<component name="ChangeListManager">
<list default="true" id="c32bfd4e-6189-47f3-9d6c-c1825d3d7e5f" name="Changes" comment="">
<change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Mario-AI-Interface/reps/f_l_sav.rep" beforeDir="false" afterPath="$PROJECT_DIR$/Mario-AI-Interface/reps/f_l_sav.rep" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Mario-AI-Interface/src/Play.java" beforeDir="false" afterPath="$PROJECT_DIR$/Mario-AI-Interface/src/Play.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Mario-AI-Interface/src/engine/helper/Replay.java" beforeDir="false" afterPath="$PROJECT_DIR$/Mario-AI-Interface/src/engine/helper/Replay.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/main.py" beforeDir="false" afterPath="$PROJECT_DIR$/main.py" afterDir="false" />
<change beforePath="$PROJECT_DIR$/templates/GameTutorial.html" beforeDir="false" afterPath="$PROJECT_DIR$/templates/GameTutorial.html" afterDir="false" />
</list>
<option name="SHOW_DIALOG" value="false" />
<option name="HIGHLIGHT_CONFLICTS" value="true" />
@ -213,7 +211,7 @@
<workItem from="1677563906178" duration="5318000" />
<workItem from="1677572224495" duration="2432000" />
<workItem from="1677595224096" duration="799000" />
<workItem from="1677674512203" duration="3759000" />
<workItem from="1677674512203" duration="4789000" />
</task>
<servers />
</component>
@ -235,6 +233,6 @@
<SUITE FILE_PATH="coverage/MarioWeb$MarioWeb.coverage" NAME="MarioWeb Coverage Results" MODIFIED="1669305478201" SOURCE_PROVIDER="com.intellij.coverage.DefaultCoverageFileProvider" RUNNER="coverage.py" COVERAGE_BY_TEST_ENABLED="true" COVERAGE_TRACING_ENABLED="false" WORKING_DIRECTORY="" />
<SUITE FILE_PATH="coverage/MarioWeb$test.coverage" NAME="test Coverage Results" MODIFIED="1668079935841" SOURCE_PROVIDER="com.intellij.coverage.DefaultCoverageFileProvider" RUNNER="coverage.py" COVERAGE_BY_TEST_ENABLED="true" COVERAGE_TRACING_ENABLED="false" WORKING_DIRECTORY="$PROJECT_DIR$" />
<SUITE FILE_PATH="coverage/MarioWeb$Flask__main_py_.coverage" NAME="Flask (main.py) Coverage Results" MODIFIED="1677224605926" SOURCE_PROVIDER="com.intellij.coverage.DefaultCoverageFileProvider" RUNNER="coverage.py" COVERAGE_BY_TEST_ENABLED="true" COVERAGE_TRACING_ENABLED="false" WORKING_DIRECTORY="$PROJECT_DIR$" />
<SUITE FILE_PATH="coverage/MarioWeb$Flask__main_py___1_.coverage" NAME="Flask (main.py) (1) Coverage Results" MODIFIED="1677679335503" SOURCE_PROVIDER="com.intellij.coverage.DefaultCoverageFileProvider" RUNNER="coverage.py" COVERAGE_BY_TEST_ENABLED="true" COVERAGE_TRACING_ENABLED="false" WORKING_DIRECTORY="" />
<SUITE FILE_PATH="coverage/MarioWeb$Flask__main_py___1_.coverage" NAME="Flask (main.py) (1) Coverage Results" MODIFIED="1677818556977" SOURCE_PROVIDER="com.intellij.coverage.DefaultCoverageFileProvider" RUNNER="coverage.py" COVERAGE_BY_TEST_ENABLED="true" COVERAGE_TRACING_ENABLED="false" WORKING_DIRECTORY="" />
</component>
</project>

Binary file not shown.

View File

@ -41,12 +41,12 @@ public class Play {
public static byte[] playJavaGame(){
MarioGame game = new MarioGame();
game.setLives(20);
game.setLives(3);
String levelPath = "./levels/group0/lvl1.lvl"; // For local
String repPath = "./reps/f_l_sav.rep"; // For local
//MarioGame.verbose = true;
//Play Game
MarioResult tmpResult = game.playGame(new HumanAgent(false),getLevel(levelPath), 100, repPath,30);
MarioResult tmpResult = game.playGame(new HumanAgent(false),getLevel(levelPath), 10, repPath,30);
//Replay
//MarioResult tmpResult = game.playGame(Replay.getRepAgentFromFile(repPath),getLevel(levelPath), 30, repPath,30);
return Replay.serializeAgentEvents(tmpResult.getAgentEvents());

View File

@ -16,6 +16,7 @@ public class MarioRender extends JComponent implements FocusListener {
public static final int TICKS_PER_SECOND = 24;
private float scale;
private int renderBuffer;
private GraphicsConfiguration graphicsConfiguration;
int frame;
@ -57,23 +58,44 @@ public class MarioRender extends JComponent implements FocusListener {
drawStringDropShadow(og, "Buttons: " + pressedButtons, 0, 2, 1);
}
//Render Status Info
boolean renderOcuppied = false;
switch (world.gameStatus){
case LOSE:
drawString(og,"Game Over! ",64,40,1,1.5f);
drawString(og,"YOU LOSE! ",66,56,1,1.5f);
renderOcuppied = true;
break;
case TIME_OUT:
drawString(og,"Game Over! ",64,40,1,1.5f);
drawString(og,"Time OUT ",66,56,1,1.5f);
renderOcuppied = true;
break;
case WIN:
drawString(og,"CONGRATULATION!",32,40,1,1.5f);
drawString(og,"YOU WIN!!",64,56,1,1.5f);
renderOcuppied = true;
break;
}
if (!renderOcuppied){
System.out.println(renderBuffer);
if(world.deathBuffer > 999){
renderBuffer = 150;
}
if(renderBuffer>0){
if((renderBuffer/10)%2 == 1){
drawString(og,"YOU LOSE ONE LIFE!!",56,56,1,1f);
}else{
drawString(og,"YOU LOSE ONE LIFE!!",56,56,0,1f);
}
renderBuffer--;
}
}
if (scale > 1) {
g.drawImage(image, 0, 0, (int) (256 * scale), (int) (240 * scale), null);
} else {