• Revista PROGRAMAR: Já está disponível a edição #53 da revista programar. Faz já o download aqui!

bioshock

arrays

7 mensagens neste tópico

Boas amigos, estou com um problema a fazer o meu jogo, agradecia imenso a vossa ajuda.

Eu tenho a picturebox1 que quero que apareça numa outra picturebox (de dimensão grande) e que apareça em 3 picturebox(dimensao pequena).

Se correr o programa tenho de escolher qual das Pictureboxs(dimensão pequena = Opções da dimensão grande) está igual à picturebox(dimensão grande)  [JOGO DA SOMBRA]

Até aqui tudo bem, o problema é quando passamos à pratica da programação, tive que fazer um randomize..mas não me dá em nada..

deixo aqui o codigo, muito obrigado a quem me tentar ajudar:

Public Class Form10

    Dim pergunta(3) As Image

    Public opções(3, 3) As Image

    Dim correctas(3) As Image

    Dim x As Integer

    Dim radio As Byte

    Dim contador As Byte

    Dim pos As Integer

    Dim sai(3) As Byte

    Dim foto As Byte

    Dim fotos(3) As Image

    Dim vista(3) As Byte

    Private Sub Form10_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

        pergunta(1) = PictureBox13.Image

        pergunta(2) = PictureBox5.Image

        pergunta(3) = PictureBox6.Image

        correctas(1) = PictureBox14.Image

        correctas(2) = PictureBox11.Image

        correctas(3) = PictureBox9.Image

        opções(0, 1) = PictureBox14.Image 'certa

        opções(0, 2) = PictureBox15.Image

        opções(0, 3) = PictureBox16.Image

        opções(1, 1) = PictureBox10.Image

        opções(1, 2) = PictureBox11.Image 'certa

        opções(1, 3) = PictureBox12.Image

        opções(2, 1) = PictureBox7.Image

        opções(2, 2) = PictureBox8.Image

        opções(2, 3) = PictureBox9.Image 'certa

        fotos(1) = PictureBox14.Image

        fotos(2) = PictureBox11.Image

        fotos(3) = PictureBox9.Image

        For x = 0 To 3

            sai(x) = 0

        Next

        x = 0

    End Sub

    Sub gerarperguntas()

        Dim testa As Boolean

        Do

            Randomize()

            foto = (3 * Rnd())

            If vista(foto) = 1 Then

                testa = False

            Else

                vista(foto) = 1

                testa = True

                x = x + 1

                Dim opções(pos, 4) As String

                PictureBox1.Image = pergunta(pos)

                RadioButton1.Checked = opções(pos, 1)

                RadioButton2.Checked = opções(pos, 2)

                RadioButton3.Checked = opções(pos, 3)

            End If

        Loop Until testa

        PictureBox1.Image = pergunta(foto)

    End Sub

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Até aqui tudo bem, o problema é quando passamos à pratica da programação, tive que fazer um randomize..mas não me dá em nada..

O que é que não dá ? Explica melhor qual é o problema.

O Randomize também já está ultrapassado. Existe por questões de compatibilidade com versões anteriores. Usa antes a classe Random()

' Para gerar um número de 1 a 3

Dim rnd As New Random

Debug.WriteLine(rnd.Next(1, 3))

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Caro amigo é o seguinte: O problema é quando clico na Picturebox (das opções) para escolher a que penso que está certa, esta da-me em todas errada..

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Caro amigo é o seguinte: O problema é quando clico na Picturebox (das opções) para escolher a que penso que está certa, esta da-me em todas errada..

Mas no código que colocas-te não tens essa parte (click)! Podes mostrar ?

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

If radio = resposta(x) Then

            MsgBox("A resposta esta CERTA, ganhou 2 pontos")

            pontos = pontos + 2

            RadioButton1.Checked = False

            RadioButton2.Checked = False

            RadioButton3.Checked = False

        Else

            MsgBox("A resposta está ERRADA, foi-lhe retirado 2 pontos")

            pontos = pontos - 2

            RadioButton1.Checked = False

            RadioButton2.Checked = False

            RadioButton3.Checked = False

        End If

        If x = 3 Then

            MsgBox("parabens acabaste de concluir o jogo das sombras com " & pontos & " pontos")

            Form1.Show()

            Me.Hide()

        End If

É isto, um abraço e obrigado.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Ainda falta código ...

Mostra tudo ou faz o upload do projecto. Se não quiseres mostrar todos (estás no teu direito) apaga o que não achares importante.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Desculpa demorar a responder mas já está resolvido. obrigado

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!


Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.


Entrar Agora