Commit 7d728b9e authored by 18손재민's avatar 18손재민

중량단어 구현함

parent a6e7dd53
......@@ -154,7 +154,7 @@ socket.on('attacked', function(msg) // object attackData
let attackedEvent = new Cycle(function()
{
if(!WordSpace.isInvincible)
for (let i = 0; i < msg.multiple; i++) WordSpace.generateWord.Attack(ScenesData.gameScene, msg.text, msg.grade, msg.attacker, msg.isStrong, msg.isCountable);
for (let i = 0; i < msg.multiple; i++) WordSpace.generateWord.Attack(ScenesData.gameScene, msg.text, msg.grade, msg.attacker, msg.isStrong, msg.isCountable, msg.isHeavy);
attackedEvent.currentCycle.destroy();
WordSpace.attackedEvents.splice(WordSpace.attackedEvents.findIndex(function(element) {
return element.cert === (msg.text + msg.attacker);
......
......@@ -154,13 +154,16 @@ var gameScene = new Phaser.Class(
WordSpace.generateWord.Item(ScenesData.gameScene, Enums.item.nameList);
WordSpace.generateWord.Item(ScenesData.gameScene, Enums.item.invincible);
WordSpace.generateWord.Item(ScenesData.gameScene, Enums.item.invincible);
WordSpace.generateWord.Item(ScenesData.gameScene, Enums.item.invincible);
WordSpace.generateWord.Item(ScenesData.gameScene, Enums.item.invincible);
WordSpace.generateWord.Item(ScenesData.gameScene, Enums.item.invincible);
WordSpace.generateWord.Item(ScenesData.gameScene, Enums.item.invincible);
WordSpace.generateWord.Item(ScenesData.gameScene, Enums.item.charge);
WordSpace.generateWord.Item(ScenesData.gameScene, Enums.item.charge);
WordSpace.generateWord.Item(ScenesData.gameScene, Enums.item.clean);
WordSpace.generateWord.Item(ScenesData.gameScene, Enums.item.clean);
WordSpace.generateWord.Item(ScenesData.gameScene, Enums.item.heavy);
WordSpace.generateWord.Item(ScenesData.gameScene, Enums.item.heavy);
// for test
WordSpace.attackGauge.add(11);
/*WordSpace.generateWord.Name(ScenesData.gameScene, false, null);
WordSpace.generateWord.Name(ScenesData.gameScene, false, null);
WordSpace.generateWord.Name(ScenesData.gameScene, false, null);
WordSpace.generateWord.Name(ScenesData.gameScene, false, null);
......@@ -170,8 +173,7 @@ var gameScene = new Phaser.Class(
WordSpace.generateWord.Name(ScenesData.gameScene, false, null);
WordSpace.generateWord.Name(ScenesData.gameScene, false, null);
WordSpace.generateWord.Name(ScenesData.gameScene, false, null);
WordSpace.generateWord.Name(ScenesData.gameScene, false, null);
WordSpace.generateWord.Name(ScenesData.gameScene, false, null);
WordSpace.generateWord.Name(ScenesData.gameScene, false, null);*/
},
update: function()
......
......@@ -137,13 +137,14 @@ class NormalWord extends WordObject
class AttackWord extends WordObject
{
constructor(text, _wordGrade, _playerData, _isStrong, _isCountable = true, lenRate)
constructor(text, _wordGrade, _playerData, _isStrong, _isCountable = true, _isHeavy = false, lenRate)
{
super(text);
this.wordGrade = _wordGrade;
this.wordWeight = _isStrong ? WordReader.strongAttackWeight[3 - this.wordGrade] : WordReader.attackWeight[3 - this.wordGrade];
if(WordReader.getWordTyping(_playerData.nickname) > 9)
this.wordWeight += this.wordWeight * 0.2 * (WordReader.getWordTyping(_playerData.nickname) - 9);
if(_isHeavy) this.wordWeight *= 2;
this.attacker = _playerData;
if(!_isCountable) this.counterTime = 0;
else this.counterTime = WordSpace.gameTimer.now + 1000 * (this.wordTyping <= (5 - _wordGrade) * 2.5 ? this.wordTyping / (Math.max(200, WordSpace.playerTyping) / 60) * 1.5 :
......@@ -295,6 +296,7 @@ class ItemWord extends WordObject
destroy()
{
WordSpace.attackGauge.add(0.5);
super.destroy();
switch(this.itemType)
{
case Enums.item.invincible:
......@@ -322,8 +324,11 @@ class ItemWord extends WordObject
WordSpace.attackGauge.add(11);
break;
case Enums.item.clean:
let tempLenth = WordSpace.wordGroup.length * 0.3;
for(let i = 0; i < tempLenth; i++) WordSpace.wordGroup[i].destroy();
break;
case Enums.item.heavy:
WordSpace.isHeavy = true;
break;
case Enums.item.dark:
break;
......@@ -331,6 +336,5 @@ class ItemWord extends WordObject
console.log("Item type is inappropriate. Item type : " + this.itemType);
break;
}
super.destroy();
}
}
\ No newline at end of file
......@@ -13,6 +13,7 @@ WordSpace.brainCapacity = 200; //수용 가능한 단어 무게 최대치
WordSpace.gameTimer = null; //현재 게임 플레이 시간 타이머
WordSpace.isTimerOn = false;
WordSpace.isInvincible = false;
WordSpace.isHeavy = false;
WordSpace.pyeongminAnims = [];
WordSpace.wordGroup = [];
......@@ -235,9 +236,9 @@ WordSpace.generateWord =
WordSpace.pushWord(scene, word, lenRate);
return word;
},
Attack: function(scene, wordText, grade, attacker, isStrong, isCountable, lenRate)
Attack: function(scene, wordText, grade, attacker, isStrong, isCountable, isHeavy, lenRate)
{
word = new AttackWord(wordText, grade, attacker, isStrong, isCountable);
word = new AttackWord(wordText, grade, attacker, isStrong, isCountable, isHeavy);
WordSpace.pushWord(scene, word, lenRate);
return word;
},
......@@ -421,6 +422,7 @@ WordSpace.attack = function(wordText, grade)
text: wordText,
grade: grade,
isStrong: element.isStrong,
isHeavy: WordSpace.isHeavy,
multiple: 1
}
WordSpace.makeAttackPaper(ScenesData.gameScene, RoomData.myself.position, target.position);
......@@ -441,6 +443,7 @@ WordSpace.attack = function(wordText, grade)
WordSpace.attackGauge.resetValue();
WordSpace.setPlayerTyping.add(wordText);
RoomData.myself.playerImage.play(WordSpace.pyeongminAnims[Enums.characterAnim.throw]);
WordSpace.isHeavy = false;
}
else WordSpace.attackGauge.cutValue(0.3);
Input.maxInput = 6;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment