Здравстуйте, создаю змейку на winforms и у меня появились сомнения на счет хвоста. Просто расскажу свою мысль: думаю над тем чтоб заполнить окно картинками и потом добавлять за змейкой, но придется для каждой картинке добавлять отдельный код! Думаю еще создать фабрику картинок ,но нужно еще как то оперировать над картинками!
Помогите пожалуйста ( только расскажите словесно, а не кодом)
Игнат Соколов, правильно - рисовать на onpaint буквально копируя картинку из памяти на экран (канвас), рисовать хоть на панель, как вариант, смутно помню там есть для этого целый контрол...
в памяти хранишь только объекты-изображения являющиеся справйтами (или одно большое, в котороев разных его областях прямоугольные области с нужной картинкой, но тогда где то хранить их координаты, хоть константами.
protected override void OnPaint(PaintEventArgs pe)
{
...
pe.Graphics.DrawImage(sprite, new Point(0, 0)); // 0,0 левый верхний угол
...
}
заранее подгрузи картинку
Bitmap sprite = new Bitmap("путь_к_вашему_файлу.png");
Есть такая штука, называется "Декомпозиция задачи": вот это вам и надо сделать. Разбить свою задачу на несколько подзадач меньшего размера, а потом эти задачи разбить на подзадачи еще меньше и так далее, пока не станет все понятно. Затем следует объединить задачи в какие-то модули и логические блоки. И по шагам реализовывать нужный функционал. (И в очередной раз напоминаю, как вам уже неоднократно сказали: в вашем случае следует сделать карту игрового поля и основываясь на этой карте рисовать игровое поле - вы её сделали?)