メソッドstartActicity(intent)は型GmaMgrで未定義です。というエラーが出てしまいます```lang-package jp.example.game2;
import java.util.ArrayList;
import java.util.LinkedList;
import jp.example.game2.Barricade.eType;
import android.annotation.SuppressLint;
import android.app.AlertDialog;
import android.app.Dialog;
import android.app.DialogFragment;
import android.content.Context;
import android.content.DialogInterface;
import android.content.Intent;
import android.graphics.Canvas;
import android.graphics.Color;
import android.graphics.Paint;
import android.media.MediaPlayer;
import android.util.Log;
@SuppressLint("WrongCall")
public class GmaMgr{
MainActivity main;
private enum eStatus{
NORMAL,
GAMEOVER,
GAMECLEAR
};
private ArrayList<Barricade> _barrList = new ArrayList<Barricade>(); private LinkedList<Task> _taskList = new LinkedList<Task>(); private eStatus _status=eStatus.NORMAL; private Player _player; private MediaPlayer mp1; GmaMgr(Context context){ _barrList.add(new BarricadeSquare( 0, 0,1200, 20, null)); _barrList.add(new BarricadeSquare( 0, 0, 20,1800, null)); _barrList.add(new BarricadeSquare(1180, 0, 20,1800, null)); _barrList.add(new BarricadeSquare( 0,1800,1200, 20, null)); _barrList.add(new BarricadeSquare(550,0,40,1740,null)); //Left _barrList.add(new BarricadeSquare(70, 440, 480, 40, null)); _barrList.add(new BarricadeSquare(0, 535, 500, 40, null)); _barrList.add(new BarricadeSquare(70, 630, 480, 40, null)); _barrList.add(new BarricadeSquare(0, 725, 500, 40, null)); _barrList.add(new BarricadeSquare(70, 820, 480, 40, null)); _barrList.add(new BarricadeSquare(0, 915, 500, 40, null)); _barrList.add(new BarricadeSquare(70, 1010, 480, 40, null)); _barrList.add(new BarricadeSquare(0, 1105, 500, 40, null)); _barrList.add(new BarricadeSquare(70, 1200, 480, 40, null)); _barrList.add(new BarricadeSquare(0, 1295, 500, 40, null)); _barrList.add(new BarricadeSquare(70, 1390, 480, 40, null)); _barrList.add(new BarricadeSquare(0, 1485, 500, 40, null)); _barrList.add(new BarricadeSquare(70, 1580, 480, 40, null)); _barrList.add(new BarricadeSquare(0, 1675, 500, 40, null)); //Right _barrList.add(new BarricadeSquare(590, 50, 540, 40, null)); _barrList.add(new BarricadeSquare(650, 145, 530, 40, null)); _barrList.add(new BarricadeSquare(590, 240, 540, 40, null)); _barrList.add(new BarricadeSquare(650, 335, 530, 40, null)); _barrList.add(new BarricadeSquare(590, 430, 540, 40, null)); _barrList.add(new BarricadeSquare(650, 525, 530, 40, null)); _barrList.add(new BarricadeSquare(590, 620, 540, 40, null)); _barrList.add(new BarricadeSquare(650, 715, 530, 40, null)); _barrList.add(new BarricadeSquare(590, 810, 540, 40, null)); _barrList.add(new BarricadeSquare(650, 905, 530, 40, null)); _barrList.add(new BarricadeSquare(590, 1000, 540, 40, null)); _barrList.add(new BarricadeSquare(650, 1095, 530, 40, null)); _barrList.add(new BarricadeSquare(590, 1190, 540, 40, null)); _barrList.add(new BarricadeSquare(650, 1285, 530, 40, null)); _barrList.add(new BarricadeSquare(590, 1380, 540, 40, null)); _barrList.add(new BarricadeSquare(650, 1475, 530, 40, null)); _barrList.add(new BarricadeSquare(590, 1570, 540, 40, null)); _barrList.add(new BarricadeSquare(650, 1665, 530, 40, null)); //_barrList.add(new BarricadeSquare(0, 900, 1200, 20, new BConf(+PI/180))); //_barrList.add(new BarricadeSquare(0, 900, 1200, 20, new BConf(-PI/180))); //_barrList.add(new BarricadeTriangle(900,1200,200,new BConf(+PI/180))); _barrList.add(new BarricadeSquare(800,20,380,30,new BConf(eType.GOAL))); for (Barricade bar : _barrList) { _taskList.add(bar); } _player=new Player(); _taskList.add(_player); mp1=MediaPlayer.create(context,R.raw.kusai); mp1.start(); } private boolean Collision(){ Vec vec = new Vec(); final Circle cir = _player.getPt(); for(Barricade barr : _barrList){ Def.eHitCode code = barr.isHit(cir, vec); switch(code){ case OUT: _status = eStatus.GAMEOVER; return true; case GOAL: _status=eStatus.GAMECLEAR; return true; case NO: break; default: break; } } return false;
}
public boolean onUpdate(){ if( _status != eStatus.NORMAL ){ return true; } if( Collision() ){ return true; } for(int i=0; i<_taskList.size(); i++){ if(_taskList.get(i).onUpdate()==false){ _taskList.remove(i); i--; } } return true; } public void drawStatus(Canvas c){ switch( _status ){ case GAMEOVER: { mp1.stop(); Paint paint = new Paint(); paint.setTextSize(80); paint.setColor(Color.BLACK); c.drawText("GameOver", 40, 100, paint); Intent intent = new Intent(main,jp.example.game2.NewAct.class); startActivity(intent); break; } case GAMECLEAR: { mp1.stop(); Paint paint=new Paint(); paint.setTextSize(80); paint.setColor(Color.BLACK); c.drawText("GameClear",40,100, paint); } break; case NORMAL: break; default: break; }
}
public void onDraw(Canvas c){
c.drawColor(Color.WHITE);
for(Task task:_taskList){
task.onDraw(c);
}
drawStatus(c);
}
}
コード
startActivityのところで、エラーが出てしまいます。 イライラ棒ゲームを作成しており、ゲームオーバーになったら、別のクラスにIntentで画面遷移したいのですが、上記のエラーが出てしまいます。 どのようにして対処すればいいのでしょうか?
回答3件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2015/02/20 16:21
2015/02/20 16:37