Add: global - Login

This commit is contained in:
2018-05-06 12:01:18 +09:00
parent 6cd48f238d
commit 0acec6ee1a
11 changed files with 2004 additions and 0 deletions
+191
View File
@@ -0,0 +1,191 @@
/////////////////////////////
// Menu
var Menu = {
create: function() {
this.stageButtonArray = [];
var bar = game.add.graphics();
bar.beginFill(0x000000, 0.2);
bar.drawRect(0, 0, 1000, 80);
var newTextStyle = $.extend( {}, textStyleBasic);
newTextStyle.font = "bold 64px Arial";
var textPlayerName = game.add.text(0, 2, "연습 내용", newTextStyle)
.setTextBounds(0, 0, 1000, 80)
.setShadow(3, 3, 'rgba(0, 0, 0, 0.5)', 2);
var phaser = game.add.image(game.world.centerX, game.world.centerY + 70, 'phaser');
phaser.anchor.set(0.5);
phaser.alpha = 0.1;
game.stage.backgroundColor = '#4d4d4d';
// korean
var buttonPosX = 280;
var buttonKoreanPosY = 140; // 380;
game.add.text(0, 2, "한글", newTextStyle)
.setTextBounds(0, buttonKoreanPosY + 20, 200, 80)
.setShadow(3, 3, 'rgba(0, 0, 0, 0.5)', 2);
for(var i = 0; i < 4; i++) {
var button = new TextButton(buttonPosX + i * 200, buttonKoreanPosY,
koreanLessonTitle[i], this.startStage);
button.name = "k" + (i + 1);
button.scaleTo(0.9);
this.stageButtonArray.push(button);
}
for(var i = 0; i < 4; i++) {
var button = new TextButton(buttonPosX + i * 200, buttonKoreanPosY + 100,
koreanLessonTitle[i + 4], this.startStage);
button.name = "k" + (i + 5);
button.scaleTo(0.9);
this.stageButtonArray.push(button);
}
var button = new TextButton(buttonPosX, buttonKoreanPosY + 200,
koreanLessonTitle[8], this.startStage);
button.name = "k9";
button.scaleTo(0.9);
this.stageButtonArray.push(button);
var button = new TextButton(buttonPosX + 200, buttonKoreanPosY + 200,
koreanLessonTitle[9], this.startStage);
button.name = "k10";
button.scaleTo(0.9);
this.stageButtonArray.push(button);
// english
var buttonEnglishPosY = 480;
game.add.text(0, 2, "영문", newTextStyle)
.setTextBounds(0, buttonEnglishPosY + 20, 200, 80)
.setShadow(3, 3, 'rgba(0, 0, 0, 0.5)', 2);
for(var i = 0; i < 3; i++) {
var button = new TextButton(buttonPosX + i * 200, buttonEnglishPosY,
englishLessonTitle[i], this.startStage);
button.name = "e" + (i + 1);
button.scaleTo(0.9);
this.stageButtonArray.push(button);
}
for(var i = 0; i < 3; i++) {
var button = new TextButton(buttonPosX + i * 200, buttonEnglishPosY + 100,
englishLessonTitle[i + 3], this.startStage);
button.name = "e" + (i + 4);
button.scaleTo(0.9);
this.stageButtonArray.push(button);
}
var button = new TextButton(buttonPosX, buttonEnglishPosY + 200,
englishLessonTitle[8], this.startStage);
button.name = "e9";
button.scaleTo(0.9);
this.stageButtonArray.push(button);
var button = new TextButton(buttonPosX + 200, buttonEnglishPosY + 200,
englishLessonTitle[9], this.startStage);
button.name = "e10";
button.scaleTo(0.9);
this.stageButtonArray.push(button);
// for(var i = 0; i < this.stageButtonArray.length; i++) {
// console.log("button name : " + this.stageButtonArray[i].name);
// }
// bottom
var bottomAreaPositionY = 750;
var bar = game.add.graphics();
bar.beginFill(0xffffff, 0.1);
bar.drawRect(0, bottomAreaPositionY, 1000, 50);
var textStyleInfo = $.extend( {}, textStyleBasic);
textStyleInfo.font = "32px Arial";
textStyleInfo.align = "right";
textStyleInfo.boundsAlignH = "right";
var textPlayerName = game.add.text(800 - OFFSET_RIGHT_ALIGN, bottomAreaPositionY - 12, playerName, textStyleInfo)
.setTextBounds(0, 0, 200, 80)
.addColor('#ffffff', 0);
// .setShadow(3, 3, 'rgba(0, 0, 0, 0.5)', 2);
this.loadTypingStageData();
},
loadTypingStageData: function() {
var self = this;
xhr = new XMLHttpRequest();
xhr.onreadystatechange = function() {
// console.log("onreadystatechange : " + xhr);
// console.log("xhr.readyState : " + xhr.readyState);
// console.log("xhr.status : " + xhr.status);
if(xhr.readyState == 4 && xhr.status == 200) {
// console.log(xhr.responseText);
var jsonData = JSON.parse(xhr.responseText);
self.updateStageButton(jsonData);
}
}
xhr.open('GET', 'activated_stage_list.php', true);
xhr.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
xhr.send();
},
updateStageButton: function(jsonData) {
// console.log(JSON.stringify(jsonData));
for(var i = 0; i < jsonData.length; i++) {
// console.log(jsonData[i]["StageName"] + " : " + jsonData[i]["Activated"]);
this.activateStageButton(
// jsonData[i]["Language"],
jsonData[i]["StageName"],
jsonData[i]["Activated"]
);
}
},
activateStageButton: function(stageName, isActivated) {
for(var i = 0; i < this.stageButtonArray.length; i++) {
var buttonName = this.stageButtonArray[i].name;
var buttonLanguage = buttonName.charAt(0) == "k" ? "korean" : "english";
var buttonStageName = getStageCodeByStageNo(buttonName.substring(1));
var buttonNewName = buttonLanguage + "_" + buttonStageName;
// console.log("buttonNewName : " + buttonNewName);
if(buttonNewName == stageName) {
if(isActivated == true) {
// console.log("stageName : " + stageName);
this.stageButtonArray[i].startButton.alpha = 1;
this.stageButtonArray[i].startButton.inputEnabled = true;
return;
} else {
// console.log("this.stageButtonArray[" + i + "].name : " + this.stageButtonArray[i].name);
// console.log("buttonNewName : " + buttonNewName);
this.stageButtonArray[i].startButton.alpha = 0.3;
this.stageButtonArray[i].startButton.inputEnabled = false;
return;
}
}
}
},
startStage: function() {
var language = this.name.substring(0, 1) == "k" ? LANGUAGE_KOREAN : LANGUAGE_ENGLISH;
var level = this.name.substring(1);
playingStageData = new StageData(language, level);
// console.log(playingStageData);
this.startState('TypingTestStage');
}
}