Dobrý den,
s C# teprve začínám, proto omluvte případné nepochopení některých principů ať již samotného jazyka nebo OOP. Obracím se k vám s prosbou o pomoc. Zkoušel jsem hru - snake. Zasekl jsem se už na začátku. Přečetl jsem 3 učebnice, ale s podobným problémem jsem se nesetkal. Předpokládám, že problém bude v metodách při předávání pole.
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace Hra_had
{
public partial class OknoProgramu : Form
{
Segment[] had = new Segment[100];
public OknoProgramu()
{
InitializeComponent();
}
private void OknoProgramu_Paint(object sender, PaintEventArgs e)
{
Graphics kp = e.Graphics;
Segment.KresliHada(kp, had);
}
private void OknoProgramu_Load(object sender, EventArgs e)
{
Segment.vytvoř(had);
}
}
}
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace Hra_had
{
class Segment
{
public int xStředu, yStředu;
public const int šířka = 20, výška = 20;
public static int částíHada = 4;
public static void KresliHada(Graphics kp, Segment[] s)
{
for (int i = 0; i <= částíHada; i++)
{
int x = s[i].xStředu - šířka / 2 ;
int y = s[i].yStředu - výška / 2;
kp.DrawEllipse(Pens.Black, 50, 50, šířka, výška);
}
}
// Zde použít konstruktor
public static void vytvoř(Segment[] s)
{
s[0].xStředu = 200;
s[0].yStředu = 250;
for (int i = 1; i <= 4; i++)
{
s[i].xStředu = s[0].xStředu - šířka*i;
s[i].yStředu = s[0].yStředu;
}
}
}
}
Děkuji