Saludos!!!!
Necesito hacer un juego basico en un programa visual, lo estoy haciendo en builder, ya hice q se moviera una imagen con las teclas 4(izquierda),8(arriba),6(derecha),2(abajo),7(diagonal arriba izquierda),9(diagonal arriba derecha),1(diagonal abajo izquierda),3(diagonal abajo derecha), intento hacer que otra imagen este corriendo continuamente en la ventana pero no se como hacerle,
/////////////////////////////////////////////////////////////////////////////////////////
int x,aux;
Image3->Left=592;
for(aux=592;aux<=0;aux--)
{
Image3->Left=(Image3->Left)-1;
}
/////////////////////////////////////////////////////////////////////////////////////////
Este es el codigo que utilizo para tratar de hacer q la imagen sea de derecha a izquierda pero no c si lo hace,pero es muy rapido y no se ve o no lo hace.
Intente meter un reloj para retrazar la ejecucion pero no supe como me prodrian ayudar????????
Tambien quisiera saber, si me pueden auxiliar, para que la imagen no sepase del margen de la ventana por q al presionar los botones sigue corriendo, pero ya fuera de la ventana, despues de llegar al margen.
de antemano,muchas gracias.
Este es el codigo:
//---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop
#include "Unit1.h"
#include <stdlib.h>
#include <stdio.h>
#include <time.h>
int flag=0;
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma link "PERFGRAP"
#pragma resource "*.dfm"
TForm1 *Form1;
int aux_izquierda=0,aux_arriba=0,aux_derecha=0,aux_abajo=0;
int aux_izq_arriba=0,aux_izq_abajo=0,aux_derecha_arriba=0,aux_derecha_abajo=0;
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
: TForm(Owner)
{
}
//---------------------------------------------------------------------------
void __fastcall TForm1::FormKeyPress(TObject *Sender, char &Key)
{
//mover el objeto a la izquierda
if(Key=='4')
{
if(Key =='4' && (((aux_izquierda%2)==0)))
{ Image2->Visible=false ;
Image1->Visible=true ;
Image1->Left=(Image2->Left)-5 ;
aux_izquierda=aux_izquierda+1;
}
else
{
if(Key =='4'&& (((aux_izquierda%2)!=0)))
Image1->Visible=false ;
Image2->Visible=true ;
Image2->Left=(Image1->Left)-10 ;
aux_izquierda=aux_izquierda+1;
}
}
//mover el objeto a la derecha
if(Key=='6')
{
if(Key =='6' && (((aux_derecha%2)==0)))
{ Image2->Visible=false ;
Image1->Visible=true ;
Image1->Left=(Image2->Left)+5 ;
aux_derecha=aux_derecha+1;
}
else
{
if(Key =='6'&& (((aux_derecha%2)!=0)))
Image1->Visible=false ;
Image2->Visible=true ;
Image2->Left=(Image1->Left)+5 ;
aux_derecha=aux_derecha+1;
}
}
//mover el objeto arriba
if(Key=='8')
{
if(Key =='8' && (((aux_arriba%2)==0)))
{ Image2->Visible=false ;
Image1->Visible=true ;
Image1->Top=(Image2->Top)-5 ;
aux_arriba=aux_arriba+1;
}
else
{
if(Key =='8'&& (((aux_arriba%2)!=0)))
Image1->Visible=false ;
Image2->Visible=true ;
Image2->Top=(Image1->Top)-5 ;
aux_arriba=aux_arriba+1;
}
}
//mover el objeto abajo
if(Key=='2')
{
if(Key =='2' && (((aux_arriba%2)==0)))
{ Image2->Visible=false ;
Image1->Visible=true ;
Image1->Top=(Image2->Top)+5 ;
aux_arriba=aux_arriba+1;
}
else
{
if(Key =='2'&& (((aux_arriba%2)!=0)))
Image1->Visible=false ;
Image2->Visible=true ;
Image2->Top=(Image1->Top)+5 ;
aux_arriba=aux_arriba+1;
}
}
//mover el objeto izquierda arriba
if(Key=='7')
{
if(Key =='7' && (((aux_izq_arriba%2)==0)))
{ Image2->Visible=false ;
Image1->Visible=true ;
Image1->Top=(Image2->Top)-5;
Image1->Left=(Image2->Left)-5;
aux_izq_arriba=aux_izq_arriba+1;
}
else
{
if(Key =='7'&& (((aux_izq_arriba%2)!=0)))
Image1->Visible=false ;
Image2->Visible=true ;
Image2->Top=(Image1->Top)-5 ;
Image2->Left=(Image1->Left)-5 ;
aux_izq_arriba=aux_izq_arriba+1;
}
}
//mover el objeto izquierda abajo
if(Key=='1')
{
if(Key =='1' && (((aux_izq_abajo%2)==0)))
{ Image2->Visible=false ;
Image1->Visible=true ;
Image1->Top=(Image2->Top)+5;
Image1->Left=(Image2->Left)-5;
aux_izq_abajo=aux_izq_abajo+1;
}
else
{
if(Key =='1'&& (((aux_izq_abajo%2)!=0)))
Image1->Visible=false ;
Image2->Visible=true ;
Image2->Top=(Image1->Top)+5 ;
Image2->Left=(Image1->Left)-5 ;
aux_izq_abajo=aux_izq_abajo+1;
}
}
//mover el objeto derecha arriba
if(Key=='9')
{
if(Key =='9' && (((aux_derecha_arriba%2)==0)))
{ Image2->Visible=false ;
Image1->Visible=true ;
Image1->Top=(Image2->Top)-5;
Image1->Left=(Image2->Left)+5;
aux_derecha_arriba=aux_derecha_arriba+1;
}
else
{
if(Key =='9'&& (((aux_derecha_arriba%2)!=0)))
Image1->Visible=false ;
Image2->Visible=true ;
Image2->Top=(Image1->Top)-5 ;
Image2->Left=(Image1->Left)+5 ;
aux_derecha_arriba=aux_derecha_arriba+1;
}
}
//mover el objeto derecha abajo
if(Key=='3')
{
if(Key =='3' && (((aux_derecha_abajo%2)==0)))
{ Image2->Visible=false ;
Image1->Visible=true ;
Image1->Top=(Image2->Top)+5;
Image1->Left=(Image2->Left)+5;
aux_derecha_abajo=aux_derecha_abajo+1;
}
else
{
if(Key =='3'&& (((aux_derecha_abajo%2)!=0)))
Image1->Visible=false ;
Image2->Visible=true ;
Image2->Top=(Image1->Top)+5 ;
Image2->Left=(Image1->Left)+5 ;
aux_derecha_abajo=aux_derecha_abajo+1;
}
}
}
//---------------------------------------------------------------------------
void __fastcall TForm1::FormActivate(TObject *Sender)
{
int x,aux;
if (flag==1)
{
Image3->Left=592;
/*randomize();
x= random (100);*/
for(aux=592;aux<=0;aux--)
{
Image3->Left=(Image3->Left)-1;
}
}
}