Je suis un débutant en développement de jeu et j'ai actuellement des problèmes avec mon jeu .... Je voudrais que le jeu mette à jour la toile chaque fois que je boucle afin de montrer ma déplacer le caractère d'une simple pression sur une image ... Invalidate() ne fonctionne pas pour moi ici car il affiche seulement la position de fin de mon caractère Voici le code correspondant:Android Invalidate() chaque fois qu'une boucle se produit
@Override
public boolean onTouchEvent(MotionEvent event) {
final int x = (int)event.getX();
final int y = (int)event.getY();
int action = event.getAction();
switch (action) {
case MotionEvent.ACTION_DOWN:
if (rollbounds.contains((int)x, (int)y))
{
//dice roll
Random rand = new Random();
move = rand.nextInt(6) + 1;
//end of dice roll
//move counting
for (int loop=move;loop>0;loop--)
{
if ((charypos >= 220)&&(charxpos == 9))
{
Toast toast = Toast.makeText(getContext(), "You Win", Toast.LENGTH_SHORT);
toast.show();
loop=1;
}
if (charxpos != 205&&charLeftMove==false)
{
for (int loop2 = 28;loop2>0;loop2--)
{
charxpos+=1;
//update or invalidate here
}
Ce ici est un jeu de plateau où quand je touche le bouton de roulis, j'obtiendrais le personnage pour déplacer le nombre d'espaces sans à-coup, puisque invalider le fait passer à la position finale instantanément. L'aide est grandement appréciée
essayer d'utiliser postInvalidate, et je voudrais essayer d'obtenir le mouvement lisse à l'extérieur du onTouchEvent, peut-être sur le onDraw, les tests si je dois bouger et re-invalidate (comme l'effet de défilement: si (mScroller.computeScrollOffset()) { int deltaX = actualX - mPrevX; postInvalidate(); } –
donné mon code ci-dessus, diriez-vous s'il vous plaît me donner un exemple de code I suis un débutant donc j'ai sérieusement besoin de trucs pour continuer avant que je puisse l'essayer –