Commit 3fe6b8da authored by 18손재민's avatar 18손재민

이제 테트리미노의 조작에는 골드가 필요함

parent 890fb3b1
...@@ -9,6 +9,7 @@ public class MapManager : MonoBehaviour { ...@@ -9,6 +9,7 @@ public class MapManager : MonoBehaviour {
* variables * variables
* */ * */
TetriminoSpawner tetriminoSpawner; TetriminoSpawner tetriminoSpawner;
LifeStoneManager lifeStoneManager;
public GameObject player; public GameObject player;
/// <summary> /// <summary>
/// Grid showing tiles. /// Grid showing tiles.
...@@ -126,6 +127,10 @@ public class MapManager : MonoBehaviour { ...@@ -126,6 +127,10 @@ public class MapManager : MonoBehaviour {
/// </summary> /// </summary>
public static int currentStage; public static int currentStage;
/// <summary> /// <summary>
/// Gold need to control tetrimino.
/// </summary>
public int tetriminoCost = 1;
/// <summary>
/// Fog of the rooms. /// Fog of the rooms.
/// </summary> /// </summary>
public GameObject fog; public GameObject fog;
...@@ -699,8 +704,7 @@ public class MapManager : MonoBehaviour { ...@@ -699,8 +704,7 @@ public class MapManager : MonoBehaviour {
/// <param name="te">Tetrimino you want to move.</param> /// <param name="te">Tetrimino you want to move.</param>
public void TetriminoControl(Tetrimino te) public void TetriminoControl(Tetrimino te)
{ {
if (tetriminoWaitedTime > timeToFallTetrimino)
if ((Input.GetKeyDown(KeyCode.Space) && GameManager.gameState == GameState.Tetris) || tetriminoWaitedTime > timeToFallTetrimino)
{ {
isTetriminoFalling = true; isTetriminoFalling = true;
TetriminoMapCoordDown(currentTetrimino); TetriminoMapCoordDown(currentTetrimino);
...@@ -708,9 +712,21 @@ public class MapManager : MonoBehaviour { ...@@ -708,9 +712,21 @@ public class MapManager : MonoBehaviour {
if(GameManager.gameState == GameState.Tetris) if(GameManager.gameState == GameState.Tetris)
{ {
if (Input.GetButtonDown("Vertical")) if (Input.GetButtonDown("Vertical"))
{
TetriminoRotate(currentTetrimino, (int)Input.GetAxisRaw("Vertical")); TetriminoRotate(currentTetrimino, (int)Input.GetAxisRaw("Vertical"));
else if (Input.GetButtonDown("Horizontal"))
}
else if (Input.GetButtonDown("Horizontal") && lifeStoneManager.CountType(LifeStoneType.Gold) > 0)
{
MoveTetriminoHorizontal(currentTetrimino, new Vector3((int)Input.GetAxisRaw("Horizontal"), 0, 0)); MoveTetriminoHorizontal(currentTetrimino, new Vector3((int)Input.GetAxisRaw("Horizontal"), 0, 0));
lifeStoneManager.ChangeToNormal(LifeStoneType.Gold, tetriminoCost);
}
else if (Input.GetKeyDown(KeyCode.Space) && lifeStoneManager.CountType(LifeStoneType.Gold) > 0)
{
isTetriminoFalling = true;
TetriminoMapCoordDown(currentTetrimino);
lifeStoneManager.ChangeToNormal(LifeStoneType.Gold, tetriminoCost);
}
} }
} }
/// <summary> /// <summary>
...@@ -1044,6 +1060,7 @@ public class MapManager : MonoBehaviour { ...@@ -1044,6 +1060,7 @@ public class MapManager : MonoBehaviour {
roomsSpritesDistributed[4].Add(roomsSprite5[(int)spriteType]);*/ roomsSpritesDistributed[4].Add(roomsSprite5[(int)spriteType]);*/
} }
tetriminoSpawner = GameObject.Find("TetriminoSpawner").GetComponent<TetriminoSpawner>(); tetriminoSpawner = GameObject.Find("TetriminoSpawner").GetComponent<TetriminoSpawner>();
lifeStoneManager = GameObject.Find("LifeStoneUI").GetComponent<LifeStoneManager>();
currentStage = 0; currentStage = 0;
} }
......
...@@ -325,8 +325,8 @@ public class LifeStoneManager : MonoBehaviour { ...@@ -325,8 +325,8 @@ public class LifeStoneManager : MonoBehaviour {
public int CountType(LifeStoneType type) public int CountType(LifeStoneType type)
{ {
int count = 0; int count = 0;
for (int j = 0; j < 3; j++) for (int i = 0; i < 3; i++)
for (int i = 0; i < lifeStoneRowNum; i++) for (int j = 0; j < lifeStoneRowNum; j++)
if (lifeStoneArray[j, i] == (int)type) if (lifeStoneArray[j, i] == (int)type)
count++; count++;
return count; return count;
......
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