Add: ResultFail
This commit is contained in:
@@ -0,0 +1,12 @@
|
||||
/////////////////////////////
|
||||
// Main game
|
||||
|
||||
var CONTENT_ID = "ResultFail";
|
||||
|
||||
var game = new Phaser.Game(
|
||||
GAME_SCREEN_SIZE.x, GAME_SCREEN_SIZE.y,
|
||||
Phaser.CANVAS, CONTENT_ID
|
||||
);
|
||||
|
||||
game.state.add('ResultFail', Result);
|
||||
game.state.start('ResultFail');
|
||||
@@ -0,0 +1,205 @@
|
||||
var ResultFail = {
|
||||
|
||||
preload: function() {
|
||||
game.load.image('icon_fullscreen', '../../../resources/image/icon/fullscreen_white.png');
|
||||
|
||||
if(isTypingPracticeApp() || isTypingTestApp() || isTypingExamApp())
|
||||
Animal.loadResources();
|
||||
|
||||
RankingBoard.loadResources();
|
||||
game.load.image('star', '../../../resources/image/ui/star_particle.png');
|
||||
},
|
||||
|
||||
create: function() {
|
||||
this.dbConnectManager = new DBConnectManager();
|
||||
|
||||
this.game.stage.backgroundColor = '#4d4d4d';
|
||||
this.chartGraphics = game.add.graphics(100, game.world.height - 120);
|
||||
|
||||
// keyboard shortcut
|
||||
this.keyboardShortcut = new KeyboardShortcut();
|
||||
this.keyboardShortcut.addCallback(
|
||||
Phaser.KeyCode.ESC, // keyCode
|
||||
null, // keyDownHandler
|
||||
(function() { this.back(); }).bind(this), // keyUpHandler
|
||||
"result" // callerClassName
|
||||
);
|
||||
this.keyboardShortcut.addCallback(
|
||||
Phaser.KeyCode.ENTER, // keyCode
|
||||
null, // keyDownHandler
|
||||
(function() { this.restartStage(); }).bind(this), // keyUpHandler
|
||||
"result" // callerClassName
|
||||
);
|
||||
|
||||
// top ui
|
||||
var screenTopUI = new ScreenTopUI();
|
||||
screenTopUI.makeBackButton( (function() { this.back(); }).bind(this) );
|
||||
screenTopUI.makeFullScreenButton();
|
||||
|
||||
|
||||
// contents
|
||||
// this.printRecord();
|
||||
this.printFailedMessage();
|
||||
|
||||
this.makeRestartButton();
|
||||
|
||||
|
||||
if(sessionStorageManager.getMaestroAccountType() >= 100) { // experience account
|
||||
var recordBoard = new RecordBoard(RecordBoard.TYPE_SAMPLE);
|
||||
this.announceBox = new AnnounceBox(50, 648);
|
||||
this.announceBox.drawBox("체험 계정에서는 기록이 저장되지 않습니다.");
|
||||
} else {
|
||||
// this.printTodayBestRecord();
|
||||
var recordBoard = new RecordBoard(RecordBoard.TYPE_DB);
|
||||
}
|
||||
|
||||
|
||||
// bottom ui
|
||||
var screenBottomUI = new ScreenBottomUI();
|
||||
screenBottomUI.printLeftTextWithAppHighestRecord(sessionStorageManager.getAppHighestRecord());
|
||||
screenBottomUI.printCenterText(sessionStorageManager.getPlayingAppKoreanName());
|
||||
screenBottomUI.printRightText(sessionStorageManager.getPlayerName());
|
||||
},
|
||||
|
||||
|
||||
back: function() {
|
||||
location.href = '../../web/client/main_menu.html';
|
||||
|
||||
/*
|
||||
if(isTypingExamApp())
|
||||
location.href = '../../web/client/menu_typing_exam.html';
|
||||
else if(isTypingPracticeApp())
|
||||
location.href = '../../web/client/menu_typing_practice.html';
|
||||
else if(isTypingTestApp())
|
||||
location.href = '../../web/client/menu_typing_test.html';
|
||||
else
|
||||
location.href = '../../web/client/menu_app.html';
|
||||
|
||||
sessionStorageManager.resetPlayingAppData();
|
||||
*/
|
||||
},
|
||||
|
||||
printFailedMessage: function() {
|
||||
var style = { font: "bold 38px Arial", fill: "#fff", align: "left", boundsAlignH: "center", boundsAlignV: "middle" };
|
||||
var titleText = game.add.text(game.world.width / 2, 35, "결과", style);
|
||||
titleText.setShadow(3, 3, 'rgba(0, 0, 0, 0.5)', 2);
|
||||
titleText.anchor.set(0.5);
|
||||
|
||||
|
||||
var x = game.world.width / 2;
|
||||
var y = 150;
|
||||
if(sessionStorageManager.getRecord() === null)
|
||||
sessionStorageManager.setRecord(0);
|
||||
|
||||
var record = sessionStorageManager.getRecord();
|
||||
style.font = "80px Arial";
|
||||
var scoreText = game.add.text(
|
||||
x, y,
|
||||
"도전 실패",
|
||||
style
|
||||
);
|
||||
scoreText.setShadow(3, 3, 'rgba(0, 0, 0, 0.5)', 2);
|
||||
scoreText.anchor.set(0.5);
|
||||
},
|
||||
|
||||
/*
|
||||
printRecord: function() {
|
||||
var style = { font: "bold 38px Arial", fill: "#fff", align: "left", boundsAlignH: "center", boundsAlignV: "middle" };
|
||||
var titleText = game.add.text(game.world.width / 2, 35, "결과", style);
|
||||
titleText.setShadow(3, 3, 'rgba(0, 0, 0, 0.5)', 2);
|
||||
titleText.anchor.set(0.5);
|
||||
|
||||
|
||||
var x = game.world.width / 2;
|
||||
var y = 150;
|
||||
if(sessionStorageManager.getRecord() === null)
|
||||
sessionStorageManager.setRecord(0);
|
||||
|
||||
if(isTypingPracticeApp() || isTypingTestApp() || isTypingExamApp()) {
|
||||
var animalLevelID = 0;
|
||||
if(isTypingPracticeApp())
|
||||
animalLevelID = Animal.animalLevelIDByRecord(sessionStorageManager.getRecord(), Animal.TYPE_PRACTICE);
|
||||
else // Typing Test App
|
||||
animalLevelID = Animal.animalLevelIDByRecord(sessionStorageManager.getRecord(), Animal.TYPE_TEST);
|
||||
|
||||
var leftAnimal = new Animal(Animal.TYPE_ANIMATION, animalLevelID, game.world.centerX - 200, 150);
|
||||
leftAnimal.startAnimation(Animal.SPECIES_DATA[animalLevelID]);
|
||||
|
||||
var rightAnimal = new Animal(Animal.TYPE_ANIMATION, animalLevelID, game.world.centerX + 200, 150);
|
||||
rightAnimal.startAnimation(Animal.SPECIES_DATA[animalLevelID]);
|
||||
}
|
||||
|
||||
var record = sessionStorageManager.getRecord();
|
||||
style.font = "80px Arial";
|
||||
var scoreText = game.add.text(
|
||||
x, y,
|
||||
RecordUtil.getRecordValueWithUnit(record, sessionStorageManager.getPlayingAppID()),
|
||||
style
|
||||
);
|
||||
scoreText.setShadow(3, 3, 'rgba(0, 0, 0, 0.5)', 2);
|
||||
scoreText.anchor.set(0.5);
|
||||
},
|
||||
*/
|
||||
|
||||
printTodayBestRecord: function() {
|
||||
// console.log(sessionStorageManager.getAppHighestRecord());
|
||||
// console.log(sessionStorageManager.getRecord());
|
||||
|
||||
/*
|
||||
var appHighestRecord = sessionStorageManager.getAppHighestRecord();
|
||||
var prevRecord = sessionStorageManager.getRecord();
|
||||
if(appHighestRecord == 'undefined' || appHighestRecord == null) {
|
||||
this.showHighestRecordEffect(prevRecord);
|
||||
return;
|
||||
}
|
||||
|
||||
if(this.isHighestRecordPreferApp()) {
|
||||
if(prevRecord > appHighestRecord)
|
||||
this.showHighestRecordEffect(prevRecord);
|
||||
} else {
|
||||
if(appHighestRecord == 0)
|
||||
this.showHighestRecordEffect(prevRecord);
|
||||
else if(prevRecord < appHighestRecord)
|
||||
this.showHighestRecordEffect(prevRecord);
|
||||
}
|
||||
*/
|
||||
},
|
||||
|
||||
showHighestRecordEffect: function(record) {
|
||||
sessionStorageManager.setAppHighestRecord(record);
|
||||
|
||||
var newRecordEmitter = game.add.emitter(game.world.centerX, 140, 300);
|
||||
newRecordEmitter.makeParticles('star');
|
||||
newRecordEmitter.gravity = 300;
|
||||
|
||||
var style = { font: "32px Arial", fill: "#ff0", align: "left", boundsAlignH: "center", boundsAlignV: "middle" };
|
||||
var bestRecordText = game.add.text(game.world.centerX, 220, "", style);
|
||||
bestRecordText.anchor.set(0.5);
|
||||
bestRecordText.stroke = "#333";
|
||||
bestRecordText.strokeThickness = 5;
|
||||
|
||||
bestRecordText.text = "! : . 최고 기록 경신 . : !";
|
||||
newRecordEmitter.start(true, 2000, null, 20);
|
||||
},
|
||||
|
||||
isHighestRecordPreferApp: function() {
|
||||
if(sessionStorageManager.getPlayingAppID() == 105)
|
||||
return false;
|
||||
|
||||
return true;
|
||||
},
|
||||
|
||||
makeRestartButton: function() {
|
||||
var setting = new RoundRectButtonSetting(game.world.centerX, game.world.height / 2 - 70, 200, 100);
|
||||
setting.fontStyle.fontWeight = "bold";
|
||||
|
||||
var startButton = new RoundRectButton(setting, RoundRectButton.NONE_ICON, "다시 시작", this.restartStage);
|
||||
startButton.addShortcutText("Enter");
|
||||
},
|
||||
|
||||
|
||||
restartStage: function() {
|
||||
location.href = "../../web/client/" + getGameAppName() + ".html";
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,76 @@
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=Edge" />
|
||||
<meta charset="UTF-8">
|
||||
<title>결과</title>
|
||||
|
||||
<link rel="icon" href="/favicon.ico" type="image/x-icon" />
|
||||
<link rel="shortcut icon" href="/favicon.ico" type="image/x-icon" />
|
||||
|
||||
<link href="../../../resources/font/open-iconic-master/font/css/open-iconic-bootstrap.css" rel="stylesheet">
|
||||
<link href="../../../resources/bootstrap/css/bootstrap.min.css" rel="stylesheet">
|
||||
|
||||
<script type="text/javascript" src="./../../../resources/jquery/jquery-3.3.1.min.js"></script>
|
||||
<script src="../../../resources/js/phaser.min.js"></script>
|
||||
|
||||
<!-- global source files -->
|
||||
<script src="../../game/lib/session_storage_manager.js"></script>
|
||||
<script src="../../game/lib/global/global_variables.js?update_date=190719"></script>
|
||||
|
||||
<!-- library source files -->
|
||||
<script src="../../game/lib/util/number_util.js"></script>
|
||||
<script src="../../game/lib/util/string_util.js?update_date=190608"></script>
|
||||
<script src="../../game/lib/util/record_util.js"></script>
|
||||
<script src="../../game/lib/util/date_util.js?update_date=190608"></script>
|
||||
|
||||
<script src="../../game/lib/text/input_type_text.js?update_date=191224"></script>
|
||||
<script src="../../game/lib/text/announce_box.js?update_date=191224"></script>
|
||||
<script src="../../game/lib/text/history_text.js"></script>
|
||||
<script src="../../game/lib/text/ranking_text.js"></script>
|
||||
<script src="../../game/lib/text/screen_top_ui.js?update_date=191224"></script>
|
||||
<script src="../../game/lib/text/screen_bottom_ui.js?update_date=191224"></script>
|
||||
|
||||
<script src="../../game/lib/keyboard_shortcut.js"></script>
|
||||
<script src="../../game/lib/history_record_manager.js"></script>
|
||||
<script src="../../game/lib/ranking_record_manager.js"></script>
|
||||
<script src="../../game/lib/db_connect_manager.js"></script>
|
||||
<script src="../../game/lib/db_service.js"></script>
|
||||
<script src="../../game/lib/button/round_rect_button.js"></script>
|
||||
<script src="../../game/lib/button/back_button.js"></script>
|
||||
<script src="../../game/lib/button/fullscreen_button.js"></script>
|
||||
<script src="../../game/typing/lib/animal.js?update_date=191224"></script>
|
||||
|
||||
<!-- source files -->
|
||||
<script src="../../game/result/history_board.js?"></script>
|
||||
<script src="../../game/result/ranking_board.js?"></script>
|
||||
<script src="../../game/result/record_board.js?"></script>
|
||||
<script src="../../game/result/result_fail.js?"></script>
|
||||
<script src="../../game/result/main_fail.js"></script>
|
||||
|
||||
|
||||
<style>
|
||||
body{
|
||||
padding: 0;
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
canvas{
|
||||
margin: 0 auto;
|
||||
}
|
||||
</style>
|
||||
|
||||
|
||||
<script>
|
||||
$(document).ready(function() {
|
||||
$('#client_refresh').load("./../module/client_refresh.html");
|
||||
});
|
||||
</script>
|
||||
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<div id="ResultFail" style="text-align:center;"></div>
|
||||
<div id="client_refresh"></div>
|
||||
</body>
|
||||
</html>
|
||||
Reference in New Issue
Block a user