Fix: revise calculateTypingRecord
This commit is contained in:
@@ -467,25 +467,31 @@ TypingExamination.prototype.checkTypingContents = function(event) {
|
|||||||
if(this.isGameOver)
|
if(this.isGameOver)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
|
//not trimmed contents
|
||||||
|
var notTrimmedInputContent = this.inputTextContent.canvasInput.value();
|
||||||
|
var notTrimmedTypingContent = this.typingExaminationContents[this.typingIndex];
|
||||||
|
this.showTypingContentHighlight(notTrimmedInputContent, notTrimmedTypingContent);
|
||||||
|
|
||||||
|
// trimmed contents
|
||||||
// var inputContent = inputText.replace(/ /g, TypingExamination.SPACE_INDICATOR);
|
// var inputContent = inputText.replace(/ /g, TypingExamination.SPACE_INDICATOR);
|
||||||
var inputContent = this.inputTextContent.canvasInput.value();
|
var inputContent = this.inputTextContent.canvasInput.value();
|
||||||
var trimmedInputContent = inputContent.trim();
|
var trimmedInputContent = inputContent.trim();
|
||||||
var typingContent = this.typingExaminationContents[this.typingIndex].trim();
|
var trimmedTypingContent = this.typingExaminationContents[this.typingIndex].trim();
|
||||||
typingContent = typingContent.replace(TypingExamination.ENTER_INDICATOR, "");
|
trimmedTypingContent = trimmedTypingContent.replace(TypingExamination.ENTER_INDICATOR, "");
|
||||||
|
|
||||||
if(event.keyCode == Phaser.Keyboard.ENTER ||
|
if(event.keyCode == Phaser.Keyboard.ENTER ||
|
||||||
event.keyCode == Phaser.Keyboard.SPACEBAR) {
|
event.keyCode == Phaser.Keyboard.SPACEBAR) {
|
||||||
// console.log("### enter ###");
|
// console.log("### enter ###");
|
||||||
// console.log("this.typingIndex : " + this.typingIndex);
|
// console.log("this.typingIndex : " + this.typingIndex);
|
||||||
// console.log("trimmedInputContent : [" + trimmedInputContent + "], length : " + trimmedInputContent.length);
|
// console.log("trimmedInputContent : [" + trimmedInputContent + "], length : " + trimmedInputContent.length);
|
||||||
// console.log("typingContent : [" + typingContent + "], length : " + typingContent.length);
|
// console.log("trimmedTypingContent : [" + trimmedTypingContent + "], length : " + trimmedTypingContent.length);
|
||||||
|
|
||||||
if(trimmedInputContent === typingContent) {
|
if(trimmedInputContent === trimmedTypingContent) {
|
||||||
// console.log("input completed");
|
// console.log("input completed");
|
||||||
this.calculateTypingRecord(typingContent);
|
this.calculateTypingRecord(notTrimmedTypingContent);
|
||||||
|
|
||||||
// console.log("this.typingIndex : " + this.typingIndex);
|
// console.log("this.typingIndex : " + this.typingIndex);
|
||||||
// console.log("this.typingContentLength : " + this.typingContentLength);
|
// console.log("this.trimmedTypingContentLength : " + this.trimmedTypingContentLength);
|
||||||
if(this.typingIndex == this.typingContentLength - 1) {
|
if(this.typingIndex == this.typingContentLength - 1) {
|
||||||
this.isGameOver = true;
|
this.isGameOver = true;
|
||||||
this.gameOver();
|
this.gameOver();
|
||||||
@@ -502,9 +508,6 @@ TypingExamination.prototype.checkTypingContents = function(event) {
|
|||||||
this.setTimeTypingStart();
|
this.setTimeTypingStart();
|
||||||
}
|
}
|
||||||
|
|
||||||
var notTrimmedInputContent = this.inputTextContent.canvasInput.value();
|
|
||||||
var notTrimmedTypingContent = this.typingExaminationContents[this.typingIndex];
|
|
||||||
this.showTypingContentHighlight(notTrimmedInputContent, notTrimmedTypingContent);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
TypingExamination.prototype.showTypingContentHighlight = function(inputContent, typingContent) {
|
TypingExamination.prototype.showTypingContentHighlight = function(inputContent, typingContent) {
|
||||||
@@ -541,6 +544,7 @@ TypingExamination.prototype.showTypingContentHighlight = function(inputContent,
|
|||||||
|
|
||||||
TypingExamination.prototype.calculateTypingRecord = function(typingContent) {
|
TypingExamination.prototype.calculateTypingRecord = function(typingContent) {
|
||||||
// console.log('입력 단어 : ' + this.typingExaminationContents[this.typingIndex]);
|
// console.log('입력 단어 : ' + this.typingExaminationContents[this.typingIndex]);
|
||||||
|
var ONE_MINUTE_MS = Phaser.Timer.SECOND * 60;
|
||||||
|
|
||||||
this.isTyping = false;
|
this.isTyping = false;
|
||||||
this.timeTypingEnd = game.time.elapsedSince(0);
|
this.timeTypingEnd = game.time.elapsedSince(0);
|
||||||
@@ -551,12 +555,10 @@ TypingExamination.prototype.calculateTypingRecord = function(typingContent) {
|
|||||||
|
|
||||||
var typingContentLength = StringUtil.getUnicodeAlphabetCount(typingContent);
|
var typingContentLength = StringUtil.getUnicodeAlphabetCount(typingContent);
|
||||||
// console.log('typingContentLength : ' + typingContentLength);
|
// console.log('typingContentLength : ' + typingContentLength);
|
||||||
var typingContentPlusEnterCount = typingContentLength + TypingExamination.TYPING_COUNT_PLUS_ENTER;
|
var typingRecord = typingContentLength * (ONE_MINUTE_MS / elapsedTimeMS);
|
||||||
|
|
||||||
var typingRecord = (typingContentPlusEnterCount + TypingExamination.TYPING_COUNT_PLUS_ENTER) * 60000 / elapsedTimeMS;
|
|
||||||
|
|
||||||
this.typingElapsedTime[this.typingIndex] = elapsedTimeMS;
|
this.typingElapsedTime[this.typingIndex] = elapsedTimeMS;
|
||||||
this.typingLetterCountTotal += typingContentPlusEnterCount;
|
this.typingLetterCountTotal += typingContentLength;
|
||||||
this.typingRecordForLines[this.typingIndex] = typingRecord;
|
this.typingRecordForLines[this.typingIndex] = typingRecord;
|
||||||
// console.log(this.typingRecordForLines[this.typingIndex]);
|
// console.log(this.typingRecordForLines[this.typingIndex]);
|
||||||
|
|
||||||
@@ -565,7 +567,8 @@ TypingExamination.prototype.calculateTypingRecord = function(typingContent) {
|
|||||||
// console.log('i : ' + i + ' - time : ' + this.typingElapsedTime[i]);
|
// console.log('i : ' + i + ' - time : ' + this.typingElapsedTime[i]);
|
||||||
typingElapsedTimeTotal += this.typingElapsedTime[i];
|
typingElapsedTimeTotal += this.typingElapsedTime[i];
|
||||||
}
|
}
|
||||||
this.typingRecordTotal = this.typingLetterCountTotal * 60000 / typingElapsedTimeTotal;
|
// this.typingRecordTotal = this.typingLetterCountTotal * 60000 / typingElapsedTimeTotal;
|
||||||
|
this.typingRecordTotal = this.typingLetterCountTotal * (ONE_MINUTE_MS / typingElapsedTimeTotal);
|
||||||
// console.log(this.typingElapsedTime);
|
// console.log(this.typingElapsedTime);
|
||||||
// console.log(this.typingLetterCountTotal);
|
// console.log(this.typingLetterCountTotal);
|
||||||
// console.log(typingElapsedTimeTotal);
|
// console.log(typingElapsedTimeTotal);
|
||||||
|
|||||||
Reference in New Issue
Block a user