Anonymní profil JJ – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Anonymní profil JJ – Programujte.comAnonymní profil JJ – Programujte.com

 

Příspěvky odeslané z IP adresy 81.200.55.–

JJ
.NET › fuknce nová hra
2. 6. 2014   #190638

Zdravím, prosím o radu ...

Dělám do školy "hru" Trefuj kuličku. Úkolem je kliknout na kuličku, která je buď zelená(levé tlačítko) nebo červená (pravé) ... Počet kuliček, které má program vykreslit má hráč zadat na začátku hry, a to je ten problém ... Nevím, jak nejprve zadat počet kuliček a až po té spustit samotné generování kuliček

using System;
using System.Drawing;
using System.Windows.Forms;

namespace WindowsFormsApplication1
{
    public partial class Form1 : Form
    {
        Random nahoda = new Random(); //náhodné losování pozice kuličky
        Random nahoda_barva = new Random();

        //souřadnice, poloměr, barva kuličky
        int x, y; 
        int r = 5;
        Color barva_kulicky = Color.Transparent; //na začátku hry není vidět

        //možné barvy kuličky
        Color leve_tlacitko = Color.Green;
        Color prave_tlacitko = Color.Red;
        Color netrefena = Color.LightYellow;

        public Form1()
        {
            InitializeComponent();
        }

        private void casovac_kulicky_Tick(object sender, EventArgs e)
        {
            //nastavení, kde se bude kulička zobrazovat
            int min_x = r;
            int max_x = panel1.Width - r - 1;
            int min_y = r;
            int max_y = panel1.Height - r - 1;
          
            //vygenerování kuličky
            x = nahoda.Next(min_x, max_x + 1);
            y = nahoda.Next(min_y, max_y + 1);
            int barva = nahoda_barva.Next(2);
            if (barva == 0)
            {
                barva_kulicky = leve_tlacitko;
            }
            else
            {
                barva_kulicky = prave_tlacitko;
            }
            panel1.Refresh();

            //počítadlo kuliček
            int pocet_kulicek = Convert.ToInt32(text_box_pocet_kulicek.Text);
            pocet_kulicek++;
            text_box_pocet_kulicek.Text = pocet_kulicek.ToString();

        }

        private void panel1_Paint(object sender, PaintEventArgs e)
        {
            Graphics plocha = e.Graphics;

            //vykreslení kuličky
            int x_levy = x - r;
            int y_levy = y - r;
            int sirka = 2 * r;
            int vyska = sirka;
            Brush stetec = new SolidBrush(barva_kulicky);
            plocha.FillEllipse(stetec, x_levy, y_levy, sirka, vyska);
        }

        private void panel1_MouseDown(object sender, MouseEventArgs e)
        {
          if (barva_kulicky == leve_tlacitko && barva_kulicky == prave_tlacitko) 
                return;

            //došlo k zásahu?
            int rozdil_x = e.X - x;
            int rozdil_y = e.Y - y;
            double vzdalenost_od_stredu = Math.Sqrt(rozdil_x * rozdil_x + rozdil_y * rozdil_y);
            bool zasah = vzdalenost_od_stredu <= r;

            if (zasah)
            { 
                if (e.Button == MouseButtons.Left)
                {
                    if (barva_kulicky == leve_tlacitko)
                    {
                    
                        panel1.Refresh();

                        int pocet_zasahu = Convert.ToInt32(text_Box_zasahy.Text);
                        pocet_zasahu++;
                        text_Box_zasahy.Text = pocet_zasahu.ToString();
                    }
                }

                if (e.Button == MouseButtons.Right)
                {
                    if (barva_kulicky == prave_tlacitko)
                    {
                    
                        panel1.Refresh();

                        int pocet_zasahu = Convert.ToInt32(text_Box_zasahy.Text);
                        pocet_zasahu++;
                        text_Box_zasahy.Text = pocet_zasahu.ToString();
                    }
                }
            }
            int pocet_kulicek = Convert.ToInt32(textBox1.Text);
            int pocitadlo = Convert.ToInt32(text_box_pocet_kulicek.Text);
            int zasahy = Convert.ToInt32(text_Box_zasahy.Text);
            if (pocet_kulicek == pocitadlo)
            {
                MessageBox.Show("KONEC HRY");
            }
        }

        private void button1_Click(object sender, EventArgs e)
        {
            int pocet_kulicek = Convert.ToInt32(textBox1.Text);
    
        }
    }
}

a formulář vypadá takto

Připojen obrázek.

Díky moc

Jandy
JavaScript, AJAX, jQuery › schování/zobrazení menu
29. 12. 2013   #185769

tak jo, vyřešeno ... Stačilo přesunout #menu hned za hlavní menu a přidat styly: 
#menu-sticky-wrapper > * {     display: none; }

#menu-sticky-wrapper.is-sticky > * {     display: block; }

Jandy
JavaScript, AJAX, jQuery › schování/zobrazení menu
29. 12. 2013   #185766

#1 Jandy
Samozřejmě myslím to menu vpravo. Pardon

Jandy
JavaScript, AJAX, jQuery › schování/zobrazení menu
29. 12. 2013   #185760

Dobrý den, snad jsem trefil správnou část fora
poprosil bych o radu ... 
tady na webu, mám dvě menu- jedno na stránce a druhé vlevo na straně. Chtěl bych, aby se menu vlevo schovalo a zobrazilo až doscrolluju v textu na konec hlavního menu (na začátek profilu).

Snad jsem to popsal pochopitelně ...

Děkuji za pomoc

 

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032024 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý