Ping pon en Fox

20/07/2005 - 17:18 por Donovan Casanova Ferrer | Informe spam
Hola estoy haciendo un como tipo juego en este lenguaje no se mucho de fox
apenas soy estudiante pero le hecho todas las ganas porque me gusta mucho
bueno lo que pasa es que tengo un container un shape circular y dos shapes
en forma de barra uno en cada lado bueno lo que quiero hacer es que la
bola al momento de chocar contra estas barras rebote osea me explico si la
bola se mueve para la izquierda que se valla para la derecha pero si no
choca que se valla hasta donde iria si no estuviera la barra este es mi
codigo ya hice que se moviera pero quisiera que me ayudaran para saber
como hacerla rebotar con las barras este es mi codigo en el timer

<><><><><><><><><>

If VDIRV = "ABAJO" Then
vtop = vtop + 5
If vtop >= (THISFORM.cancha.Height - THISFORM.BOLA.Height) Then
VDIRV = "ARRIBA"
EndIF
ENDIF

IF VDIRV = "ARRIBA" THEN
VTOP = VTOP - 5
IF VTOP <= 0 THEN
VDIRV = "ABAJO"
ENDIF
ENDIF

IF VDIRH = "DERECHA" THEN
VLEFT = VLEFT + 5
IF VLEFT >= (THISFORm.cancha.WIDTH - THISFORM.BOLA.WIDTH) THEN
VDIRH = "IZQUIERDA"
ENDIF
ENDIF

IF VDIRH = "IZQUIERDA" THEN
VLEFT = VLEFT - 5
IF VLEFT <= 0 THEN
VDIRH = "DERECHA"
ENDIF
ENDIF
THISFORM.BOLA.TOP = VTOP
THISFORM.BOLA.LEFT = VLEFT

<><><><><><><><><>

mis variables son estas:

PUBLIC VTOP,VLEFT,VDIRV,VDIRH
VTOP = 0
VLEFT = 0
VDIRV = "ABAJO"
VDIRH = "DERECHA"

espero que me puedan ayudar saludos gracias



-
PortalFox :: Nada corre como un zorr
http://www.portalfox.co

PortalFox - NNTP Forum Gatewa

Preguntas similare

Leer las respuestas

#1 Luis María Guayán
20/07/2005 - 17:37 | Informe spam
Quizás no es lo que buscas, pero mira si este juego de Tetris te ayuda:

http://www.portalfox.com/article.php?sidc7

Luis María Guayán
Tucumán, Argentina
________________________________
SysOp de www.PortalFox.com
Microsoft Visual FoxPro MVP
________________________________
La palabra imposible solo figura
en el diccionario de los tontos


"Donovan Casanova Ferrer" escribió en el mensaje
news:
Hola estoy haciendo un como tipo juego en este lenguaje no se mucho de fox
apenas soy estudiante pero le hecho todas las ganas porque me gusta mucho
bueno lo que pasa es que tengo un container un shape circular y dos shapes
en forma de barra uno en cada lado bueno lo que quiero hacer es que la
bola al momento de chocar contra estas barras rebote osea me explico si la
bola se mueve para la izquierda que se valla para la derecha pero si no
choca que se valla hasta donde iria si no estuviera la barra este es mi
codigo ya hice que se moviera pero quisiera que me ayudaran para saber
como hacerla rebotar con las barras este es mi codigo en el timer

<><><><><><><><><>

If VDIRV = "ABAJO" Then
vtop = vtop + 5
If vtop >= (THISFORM.cancha.Height - THISFORM.BOLA.Height) Then
VDIRV = "ARRIBA"
EndIF
ENDIF

IF VDIRV = "ARRIBA" THEN
VTOP = VTOP - 5
IF VTOP <= 0 THEN
VDIRV = "ABAJO"
ENDIF
ENDIF

IF VDIRH = "DERECHA" THEN
VLEFT = VLEFT + 5
IF VLEFT >= (THISFORm.cancha.WIDTH - THISFORM.BOLA.WIDTH) THEN
VDIRH = "IZQUIERDA"
ENDIF
ENDIF

IF VDIRH = "IZQUIERDA" THEN
VLEFT = VLEFT - 5
IF VLEFT <= 0 THEN
VDIRH = "DERECHA"
ENDIF
ENDIF
THISFORM.BOLA.TOP = VTOP
THISFORM.BOLA.LEFT = VLEFT

<><><><><><><><><>

mis variables son estas:

PUBLIC VTOP,VLEFT,VDIRV,VDIRH
VTOP = 0
VLEFT = 0
VDIRV = "ABAJO"
VDIRH = "DERECHA"

espero que me puedan ayudar saludos gracias




PortalFox :: Nada corre como un zorro
http://www.portalfox.com

PortalFox - NNTP Forum Gateway
Respuesta Responder a este mensaje
#2 CesarZ
20/07/2005 - 17:54 | Informe spam
Hola Tio
Yo tengo un form que simula el juego de ping pong, no recuerdo de donde lo
baje pero te interesa enviame tu mail.
Salu2
Respuesta Responder a este mensaje
#3 Otto Pérez
22/07/2005 - 20:27 | Informe spam
Prueba esto, estoy seguro que te dará una luz para finalizar tu juego
disculpa que te lo mande de esta manera pero no puedo hacerlo de otra forma

PUBLIC oform1

oform1=NEWOBJECT("form1")
oform1.Show
RETURN


**************************************************
*-- Form: form1 (c:\documents and settings\tecnológico\mis
documentos\proyectos de visual foxpro\pinpon.scx)
*-- ParentClass: form
*-- BaseClass: form
*-- Time Stamp: 07/21/10 12:27:09 PM
*
DEFINE CLASS form1 AS form


DoCreate = .T.
AutoCenter = .T.
Caption = "PINPON para Donovan Casanova"
BackColor = RGB(0,128,255)
Name = "Form1"


ADD OBJECT bola AS shape WITH ;
Top = 12, ;
Left = 24, ;
Height = 23, ;
Width = 26, ;
Curvature = 75, ;
Name = "bola"


ADD OBJECT timer1 AS timer WITH ;
Top = 12, ;
Left = 336, ;
Height = 23, ;
Width = 23, ;
Name = "Timer1"


ADD OBJECT barra AS commandbutton WITH ;
Top = 192, ;
Left = 144, ;
Height = 13, ;
Width = 73, ;
Caption = "", ;
Name = "barra"


PROCEDURE MouseMove
LPARAMETERS nButton, nShift, nXCoord, nYCoord
thisform.barra.Left=nxcoord
ENDPROC


PROCEDURE Init
thisform.timer1.Interval
PUBLIC x,y
STORE 1 TO x,y
ENDPROC


PROCEDURE timer1.Timer
thisform.bola.Left=thisform.bola.Left+x
thisform.bola.Top=thisform.bola.Top+y

IF thisform.bola.Left+thisform.bola.Width=>thisform.Width
x=-1
ELSE
IF thisform.bola.Left=0
x=1
ENDIF
ENDIF

IF thisform.bola.Top+thisform.bola.Height=>thisform.Height
y=-1
ELSE
IF thisform.bola.Top=0
y=1
ENDIF
ENDIF

IF thisform.bola.Top+thisform.bola.Height=thisform.barra.Top;
AND thisform.bola.left+thisform.bola.Width>=thisform.barra.Left;
AND thisform.bola.Left<=thisform.barra.Left+thisform.barra.Width
y=-1
ENDIF
ENDPROC


ENDDEFINE
*
*-- EndDefine: form1
**************************************************


Suerte y
Gracias Luis María por el tetris :)

-
PortalFox :: Nada corre como un zorr
http://www.portalfox.co

PortalFox - NNTP Forum Gatewa
Respuesta Responder a este mensaje
#4 Luis María Guayán
23/07/2005 - 01:43 | Informe spam
Otto, envialo a PortalFox para su publicación ;-)

http://www.portalfox.com/modules.ph...file=index


Luis María Guayán
Tucumán, Argentina
________________________________
SysOp de www.PortalFox.com
Microsoft Visual FoxPro MVP
________________________________
La palabra imposible solo figura
en el diccionario de los tontos


"Otto Pérez" escribió en el mensaje
news:
Prueba esto, estoy seguro que te dará una luz para finalizar tu juego
disculpa que te lo mande de esta manera pero no puedo hacerlo de otra forma

PUBLIC oform1

oform1=NEWOBJECT("form1")
oform1.Show
RETURN


**************************************************
*-- Form: form1 (c:\documents and settings\tecnológico\mis
documentos\proyectos de visual foxpro\pinpon.scx)
*-- ParentClass: form
*-- BaseClass: form
*-- Time Stamp: 07/21/10 12:27:09 PM
*
DEFINE CLASS form1 AS form


DoCreate = .T.
AutoCenter = .T.
Caption = "PINPON para Donovan Casanova"
BackColor = RGB(0,128,255)
Name = "Form1"


ADD OBJECT bola AS shape WITH ;
Top = 12, ;
Left = 24, ;
Height = 23, ;
Width = 26, ;
Curvature = 75, ;
Name = "bola"


ADD OBJECT timer1 AS timer WITH ;
Top = 12, ;
Left = 336, ;
Height = 23, ;
Width = 23, ;
Name = "Timer1"


ADD OBJECT barra AS commandbutton WITH ;
Top = 192, ;
Left = 144, ;
Height = 13, ;
Width = 73, ;
Caption = "", ;
Name = "barra"


PROCEDURE MouseMove
LPARAMETERS nButton, nShift, nXCoord, nYCoord
thisform.barra.Left=nxcoord
ENDPROC


PROCEDURE Init
thisform.timer1.Interval
PUBLIC x,y
STORE 1 TO x,y
ENDPROC


PROCEDURE timer1.Timer
thisform.bola.Left=thisform.bola.Left+x
thisform.bola.Top=thisform.bola.Top+y

IF thisform.bola.Left+thisform.bola.Width=>thisform.Width
x=-1
ELSE
IF thisform.bola.Left=0
x=1
ENDIF
ENDIF

IF thisform.bola.Top+thisform.bola.Height=>thisform.Height
y=-1
ELSE
IF thisform.bola.Top=0
y=1
ENDIF
ENDIF

IF thisform.bola.Top+thisform.bola.Height=thisform.barra.Top;
AND thisform.bola.left+thisform.bola.Width>=thisform.barra.Left;
AND thisform.bola.Left<=thisform.barra.Left+thisform.barra.Width
y=-1
ENDIF
ENDPROC


ENDDEFINE
*
*-- EndDefine: form1
**************************************************


Suerte y
Gracias Luis María por el tetris :)


PortalFox :: Nada corre como un zorro
http://www.portalfox.com

PortalFox - NNTP Forum Gateway
Respuesta Responder a este mensaje
#5 Otto Pérez
26/07/2005 - 02:42 | Informe spam
Perdona Luis María por mi ignorancia pero nunca he enviado nada hasta
ahora, debo hacerlo a través del link que me describes?? y de la manera
que se lo envié a Donovan??


PortalFox :: Nada corre como un zorro
http://www.portalfox.com

PortalFox - NNTP Forum Gateway
Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaSiguiente Respuesta Tengo una respuesta
Search Busqueda sugerida