xna로 c#으로 하는건데요 음.. 기억력 테스트 게임? 같은거 만드는건데요 10개의 구멍에서요 순서에 따라 나오는 동물을 잘 기억했다가 해당 순서에 따라 동물이 나왔던 구멍을 찾는거에요 ㅠㅠ( 그대신 절대 중복된 동물이 나오면 안되구요)
대충 이 밑에처럼 해봤는데 이정도밖에 못하겠네요 여기서 어떻게 고치면 될까요? ㅠㅠ 좀 알려주세요 ㅠㅠ
if (bPlay)
{
background1.Update(gameTime);
player.UpdateInput(keyState);
player.Update();
player.SetSID(SID.PL_MC);
if (keyState.IsKeyDown(Keys.Space))
{
player.SetSID(SID.PL_MCD);
}
player.vy = 20;
if (player.x < 0) player.x = 0;
else if (player.x + player.w > 698) player.x = 698 - player.w;
if (player.x < 0) player.x = 0;
else if (player.x + player.w < 85) player.x = 85 - player.w;
if (player.y < 0) player.y = 0;
else if (player.y + player.h > 462) player.y = 462 - player.h;
if (player.y < 0) player.y = 0;
else if (player.y + player.h < 180) player.y = 180 - player.h;
timeEnemy1 += gameTime.ElapsedGameTime.Milliseconds;
timeEnemy2 += gameTime.ElapsedGameTime.Milliseconds;
timeEnemy3 += gameTime.ElapsedGameTime.Milliseconds;
timeEnemy4 += gameTime.ElapsedGameTime.Milliseconds;
timeEnemy5 += gameTime.ElapsedGameTime.Milliseconds;
timeEnemy6 += gameTime.ElapsedGameTime.Milliseconds;
timeEnemy7 += gameTime.ElapsedGameTime.Milliseconds;
timeEnemy8 += gameTime.ElapsedGameTime.Milliseconds;
timeEnemy9 += gameTime.ElapsedGameTime.Milliseconds;
timeEnemy10 += gameTime.ElapsedGameTime.Milliseconds;
Rectangle re1 = new Rectangle(73, 170, 157, 97);
Rectangle re2 = new Rectangle(230, 170, 157, 97);
Rectangle re3 = new Rectangle(385, 170, 157, 97);
Rectangle re4 = new Rectangle(540, 170, 157, 97);
Rectangle re5 = new Rectangle(73, 269, 157, 97);
Rectangle re6 = new Rectangle(540, 269, 157, 97);
Rectangle re7 = new Rectangle(73, 370, 157, 97);
Rectangle re8 = new Rectangle(230, 370, 157, 97);
Rectangle re9 = new Rectangle(385, 370, 157, 97);
Rectangle re10 = new Rectangle(540, 370, 157, 97);
if (timeEnemy1 > 3500)
{
timeEnemy1 = 0;
listEnenmy1.Add(new Enemy1(gameTime));
}
if (timeEnemy2 > 5500)
{
timeEnemy2 = 0;
listEnenmy2.Add(new Enemy2(gameTime));
}
if (timeEnemy3 > 6000)
{
timeEnemy3 = 0;
listEnenmy3.Add(new Enemy3(gameTime));
}
if (timeEnemy4 > 5000)
{
timeEnemy4 = 0;
listEnenmy4.Add(new Enemy4(gameTime));
}
if (timeEnemy5 > 3300)
{
timeEnemy5 = 0;
listEnenmy5.Add(new Enemy5(gameTime));
}
if (timeEnemy6 > 6500)
{
timeEnemy6 = 0;
listEnenmy6.Add(new Enemy6(gameTime));
}
if (timeEnemy7 > 2500)
{
timeEnemy7 = 0;
listEnenmy7.Add(new Enemy7(gameTime));
}
if (timeEnemy8 > 3000)
{
timeEnemy8 = 0;
listEnenmy8.Add(new Enemy8(gameTime));
}
if (timeEnemy9 > 5500)
{
timeEnemy9 = 0;
listEnenmy9.Add(new Enemy9(gameTime));
}
if (timeEnemy10 > 2000)
{
timeEnemy10 = 0;
listEnenmy10.Add(new Enemy10(gameTime));
}
for (int i = 0; i < listEnenmy1.Count; i++)
{
listEnenmy1[i].Update();
if (keyState.IsKeyDown(Keys.Space) && !prevKeyState.IsKeyDown(Keys.Space) && re1.Intersects(player.Rect()))
{
listEnenmy1.RemoveAt(i--);
score += 1;
}
}
for (int i = 0; i < listEnenmy2.Count; i++)
{
listEnenmy2[i].Update();
if (keyState.IsKeyDown(Keys.Space) && !prevKeyState.IsKeyDown(Keys.Space) && re2.Intersects(player.Rect()))
{
listEnenmy2.RemoveAt(i--);
score += 1;
}
}
for (int i = 0; i < listEnenmy3.Count; i++)
{
listEnenmy3[i].Update();
if (keyState.IsKeyDown(Keys.Space) && !prevKeyState.IsKeyDown(Keys.Space) && re3.Intersects(player.Rect()))
{
listEnenmy3.RemoveAt(i--);
score += 1;
}
}
for (int i = 0; i < listEnenmy4.Count; i++)
{
listEnenmy4[i].Update();
if (keyState.IsKeyDown(Keys.Space) && !prevKeyState.IsKeyDown(Keys.Space) && re4.Intersects(player.Rect()))
{
listEnenmy4.RemoveAt(i--);
score += 1;
}
}
for (int i = 0; i < listEnenmy5.Count; i++)
{
listEnenmy5[i].Update();
if (keyState.IsKeyDown(Keys.Space) && !prevKeyState.IsKeyDown(Keys.Space) && re5.Intersects(player.Rect()))
{
listEnenmy5.RemoveAt(i--);
score += 1;
}
}
for (int i = 0; i < listEnenmy6.Count; i++)
{
listEnenmy6[i].Update();
if (keyState.IsKeyDown(Keys.Space) && !prevKeyState.IsKeyDown(Keys.Space) && re6.Intersects(player.Rect()))
{
listEnenmy6.RemoveAt(i--);
score += 1;
}
}
for (int i = 0; i < listEnenmy7.Count; i++)
{
listEnenmy7[i].Update();
if (keyState.IsKeyDown(Keys.Space) && !prevKeyState.IsKeyDown(Keys.Space) && re7.Intersects(player.Rect()))
{
listEnenmy7.RemoveAt(i--);
score += 1;
}
}
for (int i = 0; i < listEnenmy8.Count; i++)
{
listEnenmy8[i].Update();
if (keyState.IsKeyDown(Keys.Space) && !prevKeyState.IsKeyDown(Keys.Space) && re8.Intersects(player.Rect()))
{
listEnenmy8.RemoveAt(i--);
score += 1;
}
}
for (int i = 0; i < listEnenmy9.Count; i++)
{
listEnenmy9[i].Update();
if (keyState.IsKeyDown(Keys.Space) && !prevKeyState.IsKeyDown(Keys.Space) && re9.Intersects(player.Rect()))
{
listEnenmy9.RemoveAt(i--);
score += 1;
}
}
for (int i = 0; i < listEnenmy10.Count; i++)
{
listEnenmy10[i].Update();
if (keyState.IsKeyDown(Keys.Space) && !prevKeyState.IsKeyDown(Keys.Space) && re10.Intersects(player.Rect()))
{
listEnenmy10.RemoveAt(i--);
score += 1;
}
}
if (keyState.IsKeyDown(Keys.Escape) && !prevKeyState.IsKeyDown(Keys.Escape))
fader.Set(SID.BLACK, GST.MENU, gameTime);
if (score >= 50)
{
fader.Set(SID.BLACK, GST.MENU, gameTime);
if (bPlay) text.Set(SID.TXT_MISSION, gameTime);
}
}
이게 뭥미;
아 xna 종니 해보고싶었는데 ㅜㅜ
아따. 모듈화좀 하랑께.
모듈화가 뭐에요? ㅠㅠ
모듈화란 억지로 하는 것이 아니고 자연스럽게 나오는 발현이다. 머리가 좋다면 모듈화를 강요하지 않으나 모듈화를 하지 않으면 아무리 뇌가 좋아도 뇌의 열량소비가 늘어나는 건 사실이다. 그러니 자연스러운 수준에서 모듈화를 하거라. 디미터의 법칙은 자연계에도 나타나는 자연스러운 현상이다.