package org.Game;

import java.util.ArrayList;
import java.util.Random;

import org.Framework.AppManager;
import org.Framework.Collision;
import org.Framework.CollisionManager;
import org.Framework.GraphicObject;
import org.Framework.IState;
import org.Framework.R;

import android.graphics.Canvas;
import android.graphics.Color;
import android.graphics.Paint;
import android.graphics.Rect;
import android.view.KeyEvent;
import android.view.MotionEvent;

public class GameState implements IState {
private Player m_player;
private BackGround m_background;

ArrayList<Enemy> m_enemlist = new ArrayList<Enemy>();

long m_LastRegenEnemy = System.currentTimeMillis();

// Random randEnem = new Random(); //책
Random m_randEnem = new Random(); // 코딩

@Override
public void Init() {
m_player = new Player(AppManager.getInstance().getBitmap(
R.drawable.player));
m_background = new BackGround(0);
}

public void MakeEnemy() {
if (System.currentTimeMillis() - m_LastRegenEnemy >= 310){
 m_LastRegenEnemy = System.currentTimeMillis();
 
 Enemy enem = new Enemy_3();
 enem.SetPosition(m_randEnem.nextInt(368),  -60);

 m_enemlist.add(enem);
 }
else if (System.currentTimeMillis() - m_LastRegenEnemy >= 305){
 m_LastRegenEnemy = System.currentTimeMillis();
 
 Enemy enem = new Enemy_2();
 enem.SetPosition(m_randEnem.nextInt(423),  -60);

 m_enemlist.add(enem);
 }
else if (System.currentTimeMillis() - m_LastRegenEnemy >= 300){
 m_LastRegenEnemy = System.currentTimeMillis();
 
 Enemy enem = new Enemy_1();
 enem.SetPosition(m_randEnem.nextInt(423),  -60);

 m_enemlist.add(enem);
 }

 
}
 /*if  {(System.currentTimeMillis() - m_LastRegenEnemy >= 500)
 m_LastRegenEnemy = System.currentTimeMillis();
 
 int enemtype = m_randEnem.nextInt(3); 
 Enemy enem = null; 
 if(enemtype== 0){
 enem = new Enemy_1(); 
 } 
 
 else if(enemtype ==1){ 
 enem = new Enemy_2(); 
 } 
 
 else if(enemtype ==2){ 
 enem = new Enemy_3(); 
 }
 
 enem.SetPosition(m_randEnem.nextInt(280), -10); 
 //enem.movetype = randEnem.nextInt(3);
 m_randEnem.nextInt(3);

 m_enemlist.add(enem);
 }*/
@Override
public void Render(Canvas canvas) {
m_background.Draw(canvas);
for (Enemy enem : m_enemlist) {
enem.Draw(canvas);
}
m_player.Draw(canvas);
}

@Override
public void Update() {
long GameTime = System.currentTimeMillis();
m_player.Update(GameTime);
m_background.Update(GameTime);

for (Enemy enem : m_enemlist) {
enem.Update(GameTime);
}
MakeEnemy();
}

@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {

/*
* int x = m_player.GetX(); int y = m_player.GetY();
* if (keyCode == KeyEvent.KEYCODE_DPAD_LEFT) m_player.SetPosition(x -
* 3, y); if (keyCode == KeyEvent.KEYCODE_DPAD_RIGHT)
* m_player.SetPosition(x + 3, y); if (keyCode ==
* KeyEvent.KEYCODE_DPAD_UP) m_player.SetPosition(x, y - 3); if (keyCode
* == KeyEvent.KEYCODE_DPAD_DOWN) m_player.SetPosition(x, y + 3);
*/

return true;
}

@Override
public boolean onTouchEvent(MotionEvent event) {

return true;
}

@Override
public void Destroy() {
// TODO Auto-generated method stub

}

}


이부분에서 터치이벤트를 이용하여 물방울을 터뜨리려면 어떻게 해야되죠?