Как сделать змейку: Вестник Бутово — Экоцентр «Лесная сказка» рассказал, как сделать змейку из бумаги

Содержание

Змейка на Python

Я точно знаю, что в детстве вы все играли в игру «Змейка» и, конечно, всегда хотели выиграть. Будучи детьми, мы все любили искать баги в игре, чтобы никогда не видеть сообщение Game over, но сейчас, будучи технарями, нам наверняка хочется сделать игру так, чтобы комар носа не подточил. Именно об этом и пойдет речь в нашей статье.

Перед тем как двигаться дальше, давайте посмотрим на основные разделы нашей статьи:

  1. Установка Pygame.
  2. Создание экрана.
  3. Создание змейки.
  4. Движение змейки.
  5. «Game over» при достижении змейкой границы.
  6. Добавление еды.
  7. Увеличение длины змейки.
  8. Вывод счета на экран.

Установка Pygame

Первое, что нам надо сделать, это установить библиотеку Pygame. Это можно сделать, просто выполнив следующую команду:

pip install pygame

Выполнив это, просто импортируем эту библиотеку и приступим к разработке игры. Но перед этим давайте взглянем на основные функции данной библиотеки, которые мы будем использовать при создании игры.

ФункцияОписание

init()

Инициализирует все модули Pygame (возвращает кортеж в случае успеха или неудачи).

display.set_mode()

Для создания поверхности принимает в качестве параметра либо список либо кортеж (кортеж предпочтительней).

update()

Обновляет экран.

quit()

Используется для деинициализации всех модулей.

set_caption()

Устанавливает текст заголовка в верхней части экрана

event.get()

Возвращает список всех событий.

Surface.fill()

Заполняет пространство сплошным цветом.

time.Clock()

Отслеживание времени

font.SysFont()

Задает шрифт Pygame, используя системные ресурсы.

Создание экрана

Для создания экрана при помощи Pygame нужно воспользоваться функцией display. set_mode(). Также необходимо пользоваться методом init() для инициализации экрана в начале кода и методом quit() для его закрытия в конце. Метод update() используется для применения каких-либо изменений на экране. Еще существует метод flip(), который работает похожим с update() образом. Разница заключается лишь в том, что метод flip() переписывает весь экран целиком, а метод update() применяет именно изменения (хотя если его использовать без параметров, то он тоже переписывает весь экран) .

import pygame pygame.init() dis=pygame.display.set_mode((400,300)) pygame.display.update() pygame.quit() quit()

Результат:

Однако, когда вы запустите данный код, экран появится лишь на мгновение, а затем исчезнет. Чтобы исправить эту ошибку, мы воспользуемся циклом while, который будет работать до окончания игры:

import pygame
pygame.init()
dis=pygame.display.set_mode((400,300))
pygame.display.update()
pygame.display.set_caption('Snake game by Pythonist')
game_over=False
while not game_over:
    for event in pygame.event.get():
        print(event)   # выводит на экран все действия игры
 
pygame.quit()
quit()

Теперь, запустив этот код, вы увидите, что экран не пропадает, как раньше. На нем будут отображаться все действия игры. Мы этого добились благодаря функции event.get(). Также, при помощи функции display.set_caption(), мы вывели заголовок нашего экрана — ‘Snake game by Pythonist’.

Теперь у нас есть экран для игры, но когда вы кликнете по кнопке close, экран не закроется. Это потому, что мы не предусмотрели такого поведения. Для решения этой задачи в Pygame предусмотрено событие «QIUT», которое мы используем слеудющим образом:

import pygame pygame.init() dis=pygame.display.set_mode((400,300)) pygame.display.update() pygame.display.set_caption('Snake game by Edureka') game_over=False while not game_over: for event in pygame.event.get(): if event.type==pygame.QUIT: game_over=True pygame.quit() quit()

Теперь, когда наш экран полностью подготовлен, нам предстоит нарисовать на нем змейку. Этому посвящен следующий раздел.

Кстати, есть полезная книга Impractical Python Projects, которую вы можете у нас скачать. В ней сборник проектов и примеров с модулем pygame.

Создание змейки

Перед тем как создать змейку, мы инициируем несколько цветовых переменных для раскрашивания самой змейки, еды и экрана. В Pygame используется цветовая схема RGB (RED, GREEN, BLUE). Установка всех цветов в 0 соответствует черному цвету, а в 255 — соответственно, белому.

Фактически, наша змейка является прямоугольником. Чтобы нарисовать прямоугольник в Pygame, можно воспользоваться функцией draw.rect(), которая нарисует нам прямоугольник заданного цвета и размера.

import pygame
pygame.init()
dis=pygame.display.set_mode((400,300))
 
pygame.display.set_caption('Snake game by Pythonist')
 
blue=(0,0,255)
red=(255,0,0)
 
game_over=False
while not game_over:
    for event in pygame.event.get():
        if event.type==pygame.QUIT:
            game_over=True
    pygame.draw.rect(dis,blue,[200,150,10,10])
    pygame.display.update()
pygame.quit()
quit()

Результат:

Как можно увидеть, змейка создана в виде голубого прямоугольника.

Теперь нам нужно научить ее двигаться.

Движение змейки

Чтобы передвигать змейку, мы будем использовать ключевые события из класса KEYDOWN библиотеки Pygame. События K_UP, K_DOWN, K_LEFT, и K_RIGHT заставят змейку двигаться вверх, вниз, влево и вправо соответственно. Также, цвет дисплея меняется от черного (по умолчанию) до белого при помощи метода fill().

Для сохранения изменений координат x и y мы создали две новых переменные: x1_change и y1_change.

import pygame
 
pygame.init()
 
white = (255, 255, 255)
black = (0, 0, 0)
red = (255, 0, 0)
 
dis = pygame.display.set_mode((800, 600))
pygame.display.set_caption('Snake game by Pythonist')
 
game_over = False
 
x1 = 300
y1 = 300
 
x1_change = 0       
y1_change = 0
 
clock = pygame.
time.Clock() while not game_over: for event in pygame.event.get(): if event.type == pygame.QUIT: game_over = True if event.type == pygame.KEYDOWN: if event.key == pygame.K_LEFT: x1_change = -10 y1_change = 0 elif event.key == pygame.K_RIGHT: x1_change = 10 y1_change = 0 elif event.key == pygame.K_UP: y1_change = -10 x1_change = 0 elif event.key == pygame.K_DOWN: y1_change = 10 x1_change = 0 x1 += x1_change y1 += y1_change dis.fill(white) pygame.draw.rect(dis, black, [x1, y1, 10, 10]) pygame.display.update() clock.tick(30) pygame.quit() quit()

Результат:

«Game over» при достижении змейкой границы

В игре змейка игрок проигрывает, если касается границы экрана. Чтобы задать такое поведение, мы должны использовать инструкцию if, которая будет следить за тем, чтобы координаты x и y были меньше размеров экрана. Мы будем использовать для этого переменные, чтобы вы могли потом, при случае, легко внести какие-либо изменения в игру.

import pygame
import time
pygame.init()
 
white = (255, 255, 255)
black = (0, 0, 0)
red = (255, 0, 0)
 
dis_width = 800
dis_height  = 600
dis = pygame.display.set_mode((dis_width, dis_width))
pygame.display.set_caption('Snake game by Pythonist')
 
game_over = False
 
x1 = dis_width/2
y1 = dis_height/2
 
snake_block=10
 
x1_change = 0
y1_change = 0
 
clock = pygame.time.Clock()
snake_speed=30
 
font_style = pygame.font.SysFont(None, 50)
 
def message(msg,color):
    mesg = font_style.render(msg, True, color)
    dis.blit(mesg, [dis_width/2, dis_height/2])
 
while not game_over:
    for event in pygame.event.get():
        if event.type == pygame.QUIT:
            game_over = True
        if event.
type == pygame.KEYDOWN: if event.key == pygame.K_LEFT: x1_change = -snake_block y1_change = 0 elif event.key == pygame.K_RIGHT: x1_change = snake_block y1_change = 0 elif event.key == pygame.K_UP: y1_change = -snake_block x1_change = 0 elif event.key == pygame.K_DOWN: y1_change = snake_block x1_change = 0 if x1 >= dis_width or x1 < 0 or y1 >= dis_height or y1 < 0: game_over = True x1 += x1_change y1 += y1_change dis.fill(white) pygame.draw.rect(dis, black, [x1, y1, snake_block, snake_block]) pygame.display.update() clock.tick(snake_speed) message("You lost",red) pygame.display.update() time.sleep(2) pygame.quit() quit()

Результат:

Добавление еды

Теперь мы добавим немного еды для змейки, и когда она будет ее пересекать, мы будем выводить сообщение «Yummy!!”. Помимо этого, мы внесем небольшие изменения, которые дадут возможность игроку прекращать игру, а также начинать ее заново в случае поражения.

import pygame
import time
import random
 
pygame.init()
 
white = (255, 255, 255)
black = (0, 0, 0)
red = (255, 0, 0)
blue = (0, 0, 255)
 
dis_width = 800
dis_height = 600
 
dis = pygame.display.set_mode((dis_width, dis_height))
pygame.display.set_caption('Snake Game by Edureka')
 
clock = pygame.time.Clock()
 
snake_block = 10
snake_speed = 30
 
font_style = pygame.font.SysFont(None, 30)
 
 
def message(msg, color):
    mesg = font_style.render(msg, True, color)
    dis.blit(mesg, [dis_width/3, dis_height/3])
 
 
def gameLoop():  # creating a function
    game_over = False
    game_close = False
 
    x1 = dis_width / 2
    y1 = dis_height / 2
 
    x1_change = 0
    y1_change = 0
 
    foodx = round(random. randrange(0, dis_width - snake_block) / 10.0) * 10.0
    foody = round(random.randrange(0, dis_width - snake_block) / 10.0) * 10.0
 
    while not game_over:
 
        while game_close == True:
            dis.fill(white)
            message("You Lost! Press Q-Quit or C-Play Again", red)
            pygame.display.update()
 
            for event in pygame.event.get():
                if event.type == pygame.KEYDOWN:
                    if event.key == pygame.K_q:
                        game_over = True
                        game_close = False
                    if event.key == pygame.K_c:
                        gameLoop()
 
        for event in pygame.event.get():
            if event.type == pygame.QUIT:
                game_over = True
            if event.type == pygame.KEYDOWN:
                if event.key == pygame.K_LEFT:
                    x1_change = -snake_block
                    y1_change = 0
                elif event.key == pygame.K_RIGHT:
                    x1_change = snake_block
                    y1_change = 0
                elif event. key == pygame.K_UP:
                    y1_change = -snake_block
                    x1_change = 0
                elif event.key == pygame.K_DOWN:
                    y1_change = snake_block
                    x1_change = 0
 
        if x1 >= dis_width or x1 < 0 or y1 >= dis_height or y1 < 0:
            game_close = True
 
        x1 += x1_change
        y1 += y1_change
        dis.fill(white)
        pygame.draw.rect(dis, blue, [foodx, foody, snake_block, snake_block])
        pygame.draw.rect(dis, black, [x1, y1, snake_block, snake_block])
        pygame.display.update()
 
        if x1 == foodx and y1 == foody:
            print("Yummy!!")
        clock.tick(snake_speed)
 
    pygame.quit()
    quit()
 
 
gameLoop()

Результат:

Terminal:

Увеличение длины змейки

Следующий код будет увеличивать длину змейки после поглощения ею еды. Также, если змейка сталкивается с собственным хвостом, игра заканчивается и выводится сообщение: “You Lost! Press Q-Quit or C-Play Again“. Длина змейки хранится в списке, а базовые значения заданы в следующем коде.

import pygame
import time
import random
 
pygame.init()
 
white = (255, 255, 255)
yellow = (255, 255, 102)
black = (0, 0, 0)
red = (213, 50, 80)
green = (0, 255, 0)
blue = (50, 153, 213)
 
dis_width = 600
dis_height = 400
 
dis = pygame.display.set_mode((dis_width, dis_height))
pygame.display.set_caption('Snake Game by Pythonist')
 
clock = pygame.time.Clock()
 
snake_block = 10
snake_speed = 15
 
font_style = pygame.font.SysFont("bahnschrift", 25)
score_font = pygame.font.SysFont("comicsansms", 35)
 
def our_snake(snake_block, snake_list):
    for x in snake_list:
        pygame.draw.rect(dis, black, [x[0], x[1], snake_block, snake_block])
 
 
def message(msg, color):
    mesg = font_style.render(msg, True, color)
    dis. blit(mesg, [dis_width / 6, dis_height / 3])
 
 
def gameLoop():
    game_over = False
    game_close = False
 
    x1 = dis_width / 2
    y1 = dis_height / 2
 
    x1_change = 0
    y1_change = 0
 
    snake_List = []
    Length_of_snake = 1
 
    foodx = round(random.randrange(0, dis_width - snake_block) / 10.0) * 10.0
    foody = round(random.randrange(0, dis_height - snake_block) / 10.0) * 10.0
 
    while not game_over:
 
        while game_close == True:
            dis.fill(blue)
            message("You Lost! Press C-Play Again or Q-Quit", red)
 
            pygame.display.update()
 
            for event in pygame.event.get():
                if event.type == pygame.KEYDOWN:
                    if event.key == pygame.K_q:
                        game_over = True
                        game_close = False
                    if event.key == pygame.K_c:
                        gameLoop()
 
        for event in pygame.event.get():
            if event.type == pygame.QUIT:
                game_over = True
            if event. type == pygame.KEYDOWN:
                if event.key == pygame.K_LEFT:
                    x1_change = -snake_block
                    y1_change = 0
                elif event.key == pygame.K_RIGHT:
                    x1_change = snake_block
                    y1_change = 0
                elif event.key == pygame.K_UP:
                    y1_change = -snake_block
                    x1_change = 0
                elif event.key == pygame.K_DOWN:
                    y1_change = snake_block
                    x1_change = 0
 
        if x1 >= dis_width or x1 < 0 or y1 >= dis_height or y1 < 0:
            game_close = True
        x1 += x1_change
        y1 += y1_change
        dis.fill(blue)
        pygame.draw.rect(dis, green, [foodx, foody, snake_block, snake_block])
        snake_Head = []
        snake_Head.append(x1)
        snake_Head.append(y1)
        snake_List.append(snake_Head)
        if len(snake_List) > Length_of_snake:
            del snake_List[0]
 
        for x in snake_List[:-1]:
            if x == snake_Head:
                game_close = True
 
        our_snake(snake_block, snake_List)
 
 
        pygame. display.update()
 
        if x1 == foodx and y1 == foody:
            foodx = round(random.randrange(0, dis_width - snake_block) / 10.0) * 10.0
            foody = round(random.randrange(0, dis_height - snake_block) / 10.0) * 10.0
            Length_of_snake += 1
 
        clock.tick(snake_speed)
 
    pygame.quit()
    quit()
 
 
gameLoop() 

Результат:

Вывод счета на экран

И последнее, но весьма важное дело: вам нужно отображать счет игрока. Для этого мы создали функцию Your_score. Это функция будет показывать размер змейки за вычетом 1 (так как это начальный размер змейки).

import pygame
import time
import random
 
pygame.init()
 
white = (255, 255, 255)
yellow = (255, 255, 102)
black = (0, 0, 0)
red = (213, 50, 80)
green = (0, 255, 0)
blue = (50, 153, 213)
 
dis_width = 600
dis_height = 400
 
dis = pygame. display.set_mode((dis_width, dis_height))
pygame.display.set_caption('Snake Game by Pythonist')
 
clock = pygame.time.Clock()
 
snake_block = 10
snake_speed = 15
 
font_style = pygame.font.SysFont("bahnschrift", 25)
score_font = pygame.font.SysFont("comicsansms", 35)
 
 
def Your_score(score):
    value = score_font.render("Your Score: " + str(score), True, yellow)
    dis.blit(value, [0, 0])
 
 
 
def our_snake(snake_block, snake_list):
    for x in snake_list:
        pygame.draw.rect(dis, black, [x[0], x[1], snake_block, snake_block])
 
 
def message(msg, color):
    mesg = font_style.render(msg, True, color)
    dis.blit(mesg, [dis_width / 6, dis_height / 3])
 
 
def gameLoop():
    game_over = False
    game_close = False
 
    x1 = dis_width / 2
    y1 = dis_height / 2
 
    x1_change = 0
    y1_change = 0
 
    snake_List = []
    Length_of_snake = 1
 
    foodx = round(random.randrange(0, dis_width - snake_block) / 10.0) * 10.0
    foody = round(random.randrange(0, dis_height - snake_block) / 10. 0) * 10.0
 
    while not game_over:
 
        while game_close == True:
            dis.fill(blue)
            message("You Lost! Press C-Play Again or Q-Quit", red)
            Your_score(Length_of_snake - 1)
            pygame.display.update()
 
            for event in pygame.event.get():
                if event.type == pygame.KEYDOWN:
                    if event.key == pygame.K_q:
                        game_over = True
                        game_close = False
                    if event.key == pygame.K_c:
                        gameLoop()
 
        for event in pygame.event.get():
            if event.type == pygame.QUIT:
                game_over = True
            if event.type == pygame.KEYDOWN:
                if event.key == pygame.K_LEFT:
                    x1_change = -snake_block
                    y1_change = 0
                elif event.key == pygame.K_RIGHT:
                    x1_change = snake_block
                    y1_change = 0
                elif event. key == pygame.K_UP:
                    y1_change = -snake_block
                    x1_change = 0
                elif event.key == pygame.K_DOWN:
                    y1_change = snake_block
                    x1_change = 0
 
        if x1 >= dis_width or x1 < 0 or y1 >= dis_height or y1 < 0:
            game_close = True
        x1 += x1_change
        y1 += y1_change
        dis.fill(blue)
        pygame.draw.rect(dis, green, [foodx, foody, snake_block, snake_block])
        snake_Head = []
        snake_Head.append(x1)
        snake_Head.append(y1)
        snake_List.append(snake_Head)
        if len(snake_List) > Length_of_snake:
            del snake_List[0]
 
        for x in snake_List[:-1]:
            if x == snake_Head:
                game_close = True
 
        our_snake(snake_block, snake_List)
        Your_score(Length_of_snake - 1)
 
        pygame.display.update()
 
        if x1 == foodx and y1 == foody:
            foodx = round(random.randrange(0, dis_width - snake_block) / 10. 0) * 10.0
            foody = round(random.randrange(0, dis_height - snake_block) / 10.0) * 10.0
            Length_of_snake += 1
 
        clock.tick(snake_speed)
 
    pygame.quit()
    quit()
 
 
gameLoop()

Результат:

Вот мы и дошли до конца нашей статьи. Мы надеемся, что она вам понравилась и все было понятно. Самое главное, не забывайте как можно больше практиковаться и использовать ваши знания на практике.

Как сшить змейку своими руками

Уважаемые рукодельницы, рада представить вам мастер-класс по пошиву и декору Змейки.

 

Часть 1-я Пошив
1. Материалы для пошива

1 — лен, бязь или похожий материал, желательно натуральный.  Если вы собираетесь тонировать змейку, то материал нужен белый.  Я в этот раз решила змейку оставить беленькой, поскольку лен у меня с серебристым напылением))

2 — кисточка для росписи красками и еще одну приготовьте для декупажа — объемную и мягкую

3 — китайская палочка для выворачивания змеючки наизнанку (ужос какой) и для набивки её же синтепухом

4 — атласная лента на шейку нашей красавице

5 — любая трехслойная салфетка. У меня была такая красивая с узорами. В принципе такие узоры можно использовать для украшения змеи, но нам понадобятся белые слои салфетки

6 — золотистая тафта для мешочка с добром, которое змейка будет хранить в вашем уютном доме)) Можно использовать и сатин и крепсатин, и другой синтетический материал

7 — акриловые краски для росписи ясных глазок: черная, белая, золотая и коричневая. Можно брать и любые другие краски, которые есть дома. Только для того, чтоб они были поустойчивее к воздействиям окружающей среды, вместе с водой добавляйте в них ПВА. И гелевые ручки подойдут)

8 — кружева для изготовления из них короны. Желательно чтоб они были с характерными зубчиками, жесткие и в цветах близких к золоту. Если найдёте такие золотые — вообще красота, если — нет, то будем их превращать в золото сами))

9 — леска

10 — золотистый бисер

И еще. На фото нет, но приготовьте: клей ПВА, синтепух или синтепон, черный шнурок для мешочка, зажигалку или спички, и конечно же, пару ваших умелых ручек))

2. Выкройка Змейки

Для ориентира в размерах я указала один из габаритов детали спинки. Для мордочки и тельца долевая не имеет значения. Обратите внимание на детали тельца: верхняя и нижняя отличаются. Лекала уже содержат прибавки на швы по 0,5см. Места будущих швов отмечены пунктиром. Перенесите на детали кроя все пометки точек соединения: А,В,В1 и А1, чтоб было легче разбираться.

3. Раскрой и пошив

Выкраиваем детали. Переносим на детали кроя все пометки точек соединения: А,В,В1, А1 и места будущих швов, чтоб было легче разбираться. Тельце не разрезаем внутри для удобства пошива — разрежем после.

Первой собираем головушку.

Сметываем первую деталь мордочки и деталь спинки.Соединяем точки А на обоих деталях и по направлению стрелок сметываем обе детали до точек В. После сметывания я сшила детали на машинке, но можно и сразу пришить вручную. Предварительно, на закруглениях детали спинки сделайте пару надсечек чтобы деталь лучше принимала необходимое положение. Таким же образом пришиваем к детали спинки и вторую часть мордочки, соединяя соответственно точки А1 с А1 и В1 с В1.

Вот такой «конёк» должен в итоге получиться))

Далее пришиваем деталь «грудка», совмещая её точки А, В, А1 и В1 с точками уже сшитых деталей.

Вот так должна выглядеть мордашка с шеей.

С помощью китайских палочек выворачиваем изделие.

Сшиваем тельце змейки, разрезам по спирали, делаем ножницами надсечки по всему периметру тельца с обоих сторон: через каждые 2-3 см не доходя до строчки 2мм. Зигзагообразными ножницами пользоваться в данном случае не рекомендую, так как нагрузка на швы при набивке будет серьёзная — могут посыпаться.

Выворачиваем тельце с помощью китайской палочки, проталкивая хвостик внутрь.

Вывернули, прогладили.

Пришиваем головешку с шеей к тельцу, оставляя с внутренней стороны незашитым участок в 3-4 см.

Набиваем синтепухом нашу Змеючку. Начинайте с тельца. Самым трудным будет наполнение хвастика — там идёт сужение и повороты. Поэтому сначала берите маленькие шарики синтепуха и проталкивайте их в хвост с помощью тупого конца китайской палочки. А дальше будет веселее и проще))

После того, как плотненько набили Шипящую, зашиваем участок, который оставляли.

Берём леску и продеваем её так, как указано пунктиром на рисунке. Начало и конец лески выводим под низ тельца, там стягиваем, связываем и оплавляем зажигалкой или спичками, чтоб ничто нигде не торчало.

4. Тонировка

Приступаем к тонировке. Я уже говорила, что собираюсь Змейку оставить белой, но жесткость игрушке всё-равно необходима и поэтому я обработаю её раствором воды и клея.

Рецепт: в 100 мл теплой очищенной воды(чтобы не было разводов) добавляем 2 ч.л. клея ПВА Тщательно размешиваем.

100мл хватит для одной Змейки с головой. Берём поролоновую губку, можно её часть и наносим губкой раствор на всю заготовку. Хорошо втираете раствор в швы _ если где-то шов расходится, то раствор всё это дело остановит))) Полностью пропитывать материал не нужно — достаточно равномерно распределить по поверхности. Подстелите перед процедурой под заготовку полиэтилен.

Для тех, кто всё-же решил тонировать Змейку даю свой Фирменный рецепт:В ёмкость ложим 1-1,5 ч.л. порошка Какао, наливаем в него 100 мл теплой воды и добавляем 2 ч.л. клея ПВА.

Всё это хорошенько размешиваем, даём набухнуть 30 минут и, еще раз размешав, наносим губкой раствор на заготовку, тщательно покрывая ткань.  Тонирование какао мне очень нравится, так как в отличие от кофе — ткань приобретает неповторимый теплый оттенок.  Пропитанную раствором будущую Змейку отправляем сушиться. Я оставила на ночь её возле батареи на клеенке. Но можно и ускорить процесс — поместив заготовку в газовую духовку или в микроволновку. Температура сушки должна быть минимальная, чтобы ткань не стала подгорать.

5. Мешочек с добром

Пока наша Змейка сушится, сделаем ей золотой мешочек с добром)) Берём тафту и шнур. Если вы решили сделать на мешочке надпись, то это нужно сделать до пошива, так как после будет очень неудобно. Надпись можно сделать вручную акриловыми красками — я так делала на предыдущей Змеючке. Но в этот раз решила попробовать самоклеющуюся бумагу и результат мне понравился. Быстро и удобно.

Вот так выглядит эта бумага для наклеек. Она размером с конверт, но бывают и А4 формата в магазинах канцтоваров.

Я распечатала на принтере надпись для мешочка.

Для мешочка вырезаем прямоугольник шириной в 25-26см и высотой в 16 см. Слаживаем ткань пополам по ширине. На расстоянии 3см от верха мешочка в боковой шов выводим шнурок, перехваченный в середине. Шнурок я отрезала длиною в 30см, его концы нужно вывести к верху мешочка, чтобы нигде не пришились.

Сшиваем, выворачиваем, проглаживаем. Я не стала подшивать верх мешочка, так как собираюсь его просто оплавить.

Вырезаем наклейку, отделяем её от основы и плотно прижимаем к ткани — надпись готова!

Берём зажигалку и оплавляем верх мешочка. Зажигалку лучше подносить к ткани с изнаночной стороны, чтобы копоть оставалась внутри.

Набиваем мешочек синтепоном, лоскутами, нитками — чем угодно. Завязываем шнурок.

Вот такой красивенький мешочек у нас получился.

А тем временем подсохла наша Змейка и можно приступать к декору.

Часть 2-я Декор змейки

Дорогие мастерицы, часть с декором Новогодней Змейки я решила сделать платной, так как в ней будут содержаться некоторые мои секреты и наработки.

Что будет в мастер-классе по декору Змейки:

— инструкция как из обычного кружева сделать позолоченную корону

— инструкция по нанесению узоров на ткань и на Змейку в частности (декупаж)

— секрет о том, как нанести на ткань любой узор из интернета))

— набор из 5 готовых узоров, подобранных мною лично и уже подходящих по размерам к Змейке. В наборе будет и узор со снежинками, который нанесен на эту змейку

— готовый набор из надписей «Любовь, Удача, Счастье, Богатство и Здоровье» каждый под соответствующий узор

— секрет о том, как нарисовать такие красивые ясные глазки не имея навыков по изобразительному искусству. Такой секрет пригодится вам и для отрисовки глаз любой другой игрушке или куколке))

— полное описание всего процесса декорирования Змейки

 

В итоге у вас получится такая красавица)))

По вопросам приобретения платной части обращайтесь в ЛС.

Всегда рада вашим отзывам!

 

Источник: livemaster.ru

Простая поделка змеи из бумаги из пустых рулонов туалетной бумаги

Давайте сделаем змею из рулона туалетной бумаги! Если вы ищете поделку для дошкольников из пустых рулонов туалетной бумаги, попробуйте эту поделку из бумажной змеи, которая использует всего несколько материалов для рукоделия и создает очень реалистично выглядящую змею.

Змея из картонных трубок для детей

В прошлые выходные мы побывали в научном центре Либерти и увидели живую змею на шоу животных.

Мой сын и я были просто очарованы внешним видом, скользящими движениями и узорами на змее и вдохновились на создание этой бумажной змеи после возвращения домой. Мы использовали вещи, которые у нас уже были под рукой, чтобы сделать нашу змею. Не бойтесь заменять материалы для рукоделия, чтобы избавить себя от похода в магазин для рукоделия!

Эта статья содержит партнерские ссылки.

Змея из туалетной бумаги

Вот из чего мы сделали змею из рулона туалетной бумаги!

Материалы, используемые для изготовления бумажной змеи

  • Пустой рулон туалетной бумаги или рулоны папиросной бумаги — вы также можете приобрести рулоны для рукоделия
  • Смываемая краска на ваш выбор — мы выбрали коричневый, черный и желтый — вы также можете получить металлическую краску
  • Губка для рисунка
  • Кисть для смешивания
  • Пуговицы и черная лента для глаз
  • Красный ершик для труб
  • Лента для склеивания всех рулонов
  • Пистолет для горячего клея
  • Ножницы или ножницы для дошкольного обучения
Разве это не круто? Я никогда не видел змею так близко. Также обратите внимание на узоры.

Инструкции по изготовлению змеи из туалетной бумаги

Начните с окрашивания картонных трубок

Шаг 1

Покрасьте пустые втулки от туалетной бумаги кистью в выбранный вами цвет.

Мы выбрали коричневый, вдохновленный настоящей змеей, которую мы видели во время нашей поездки на выходных в научный центр (см. рисунок выше).

Мой малыш любил раскрашивать булочки.

Мы собираемся добавить детали из змеиной кожи…

Шаг 2

Дайте окрашенным валикам высохнуть.

Посмотрите, как из ромбовидной формы получается великолепная змеиная кожа!

Шаг 3

Вырежьте из губки квадратную форму, чтобы получился узор.

Смешайте ложку черной краски с коричневой краской, чтобы получить темно-коричневую краску. Окуните губку в краску, чтобы сделать квадратный узор на раскрашенных бумажных рулонах.

Добавьте другие цвета к вашей змеиной коже…

Шаг 4

Затем повторите предыдущий шаг, используя желтую краску на обеих сторонах коричневых квадратов.

Дайте краске высохнуть.

Ссссссссссс!

Шаг 5

Пока краска сохнет, сделайте язык и глаза для змеи .

  1. Чтобы сделать змеиный язык , поверните ершик, как показано ниже.
  2. Чтобы сделать глаза змеи , вырежьте центральную часть глаз из черной ленты и приклейте ее посередине желтой пуговицы, чтобы получились глаза змеи.

Если у вас нет черной ленты, вы можете использовать черный картон или просто черный маркер, чтобы нарисовать глаза.

Придайте форму голове змеи

Шаг 6

Возьмите один из раскрашенных бумажных рулонов, приклейте горячим клеем змеиный язык внутрь рулона и закройте бумажный рулон.

Добавьте раздвоенный язык!

Вырежьте два маленьких треугольника с каждой стороны, чтобы получилась голова змеи, как показано на рисунке.

Затем приклейте змее глаза.

Теперь хвост змеи…

Шаг 7

Теперь возьмите ленту, вставьте ее в другой конец первого бумажного рулона и приклейте:

  1. Если вы используете рулоны бумажных полотенец, как и я, вы можете обрезать их до размера рулонов туалетной бумаги, чтобы сделать змею пышной.
  2. Проденьте каждый рулон и приклейте ленту к нижней части с помощью горячего клея.
  3. Когда вы дойдете до последнего рулона, заклейте конец клеем и придайте ему форму хвоста с помощью ножниц.
Наша готовая змейка выглядит такой настоящей!

Готовая поделка-змея из туалетной бумаги

Поделка-змейка из бумаги готова. Теперь вы можете взять змею и тренировать ее, как хотите, танцевать или скользить с ней. Нам очень нравится, как получилось это змеиное ремесло.

Я не хочу видеть эту змею у себя во дворе!

Поделка «Змея» для дошкольного и детского сада

Это отличный проект для дошкольного или детского сада, который можно выполнить с группой детей. Скрутите из каждого нарисованного ролла большую змею и покажите ее.

Давай поиграем со змеями… типа того.

Мой сын любил носить змеиную поделку и притворяться, что держит в руках настоящую змею, и корчить испуганные лица.

Активное время 20 минут

Общее время 20 минут

Сложность легкий

Ориентировочная стоимость $0

Материалы

  • рулоны туалетной бумаги, рулоны бумажных полотенец или рулоны для рукоделия
  • моющаяся краска на ваш выбор — мы использовали коричневый, черный и желтый
  • губка
  • кисть
  • кнопки
  • черная лента
  • красный ершик для труб
  • лента

Инструменты

  • Пистолет для горячего клея
  • Клей для горячего клея
  • Ножницы или ножницы для дошкольного обучения

Инструкции

  1. Покрасьте пустые рулоны туалетной бумаги и бумажных полотенец в одинаковый цвет — мы использовали коричневый цвет и дайте им высохнуть.
  2. Разрежьте губку в виде ромба, чтобы использовать ее в качестве штампа для змеиной кожи.
  3. Окуните губку в темную краску и сделайте узор из ромбов по краю окрашенных валиков. Дайте высохнуть.
  4. Окуните губку в более светлый цвет и повторите описанный выше шаг.
  5. Сделайте змеиный язык из красного ершика для труб, скрутив и сделав раздвоенный конец.
  6. Сделайте змеиные глаза из пуговиц и черной ленты или черной бумаги.
  7. Поместите язычок на конец одной окрашенной трубки, а затем приклейте и сожмите до точки. Отрежьте обе стороны, чтобы голова змеи стала более треугольной.
  8. Приклейте змеиные глаза.
  9. Приклейте веревку или ленту к головному концу, а затем приклейте другие окрашенные детали. У нас было 12 штук для нашей змейки. Закрепите конец в хвостовой части большим количеством клея.

Дополнительное обучение змеям для детей 

Книги очевидцев: Рептилии

Вот одна из наших любимых книг, все о жутких ползающих рептилиях: Рептилии (Книги очевидцев)
Книга очевидцев, Рептилия содержит полноцветные фотографии и представляет собой крупный план в местах обитания, поведении и естественной истории рептилий. Это для чтения 9 лет-12, но детям младшего возраста понравится изучать предмет и рассматривать картинки.

  • Змеи. Эта детская книга National Geographic посвящена змеям и предназначена для детей от 5 до 8 лет.
  • Книга «Змеи для детей»: руководство для юных ученых по яду, чешуе и жизни в дикой природе. Эта развивающая книга предназначена для детей 6-9 лет.
  • Smithsonian Snake book – визуальное руководство. В этой книге потрясающие изображения, и она предназначена для детей 8–12 лет, хотя детям помладше понравится рассматривать картинки.

Другие поделки в виде змей из блога детских мероприятий

  • Сделать поделку из змеи из бисера для чистки трубок
  • Сделать закуску в виде змеи из стержня кренделя… вкусно и мило!
  • Сделать змею в виде буквы S.
  • Сделать поделку-змею из бумажной тарелки
  • Сделать поделку-змею из сосновой шишки
  • Сделать игрушку-заклинатель змей своими руками из статического электричества.

    Как сделать игру Snake Eats Apple на нулях

    Автор: Райан | 15 июля 2022 г., 16:07

    Snake — ​​это классическая игра, в которой игрок будет управлять маленькой змейкой, используя клавиши со стрелками. Когда змея съедает коллекционный предмет на карте, она увеличивается в длину.

    Весело, правда? Давайте посмотрим, как легко создать Snake (и подобные простые игры) в Scratch.

    Создание спрайтов

    Для игры Snake необходимо создать два спрайта Scratch. Один — это спрайт змеи, а другой — предмет, за которым будет гоняться змея. В этом случае этим коллекционным предметом будет яблоко. Для создания спрайтов можно использовать Scratch Paint.

    Создание змеи

    Змея фактически будет разделена на два спрайта: голову и тело. Тело будет следовать за головным спрайтом по карте и расти по мере того, как змея собирает предметы.

    1. Перейдите в Scratch > Create, чтобы начать новый проект под названием « Snake Game «.

    2. Наведите указатель мыши на кнопку «Выбрать спрайт» и выберите Paint .

    3. Нарисуйте круг для головы змеи, используя черный контур на фигуре.

    4. Нарисуйте розовый язык змеи и щелкните Назад , чтобы поместить его под голову змеи.

    Нарисуйте тело

    Тело змеи будет нарисовано отдельно, чтобы оно могло расти по мере того, как змея собирает больше предметов, не затрагивая голову змеи.

    1. Наведите курсор на . Нажмите кнопку Sprite и выберите Paint , чтобы создать новый спрайт .

    2. Нарисуйте круг без контуров тела змеи.

    Выровняйте змею

    Теперь с двумя частями змеи — головой и телом — вы можете выровнять их в окне предварительного просмотра игры (вам может потребоваться изменить их размер).

    1. Настройте спрайты змей так, чтобы они были маленькими и располагались по центру экрана.

    2. Слегка переместите тело влево от головы, чтобы они выглядели соединенными.

    Совет: тело змеи должно быть примерно 1/3 размера головы. Он также должен немного перекрывать голову, чтобы он был похож на шею.

    Спрайты на экране должны быть маленькими, чтобы у игрока было достаточно места для перемещения и сбора предметов.

    Движение змеи

    Для ясности, в этой игре змея будет постоянно двигаться вперед. Затем игрок должен управлять направлением змеи с помощью клавиш со стрелками.

    Механизм

    Чтобы создать движение:

    1. Выберите спрайт Snake Head и добавьте при нажатии флажка  в область кода.

    2. Прикрепите точку в направлении 90 и перейдите к x, y 0, 0 к блоку.

    3. Прикрепите навсегда блок с переместите 5 шагов внутрь.

    Управление

    Для управления змеей:

    1. Добавьте при нажатии пробела и установите его на стрелку вверх.

    2. Прикрепите точку в направлении 0 к блоку.

    3. Щелкните правой кнопкой мыши и дублируйте блок и установите его на стрелку вниз с направлением 180 .

    4. Продублируйте блок еще два раза.

    5. Установите один на стрелка вправо с направлением 90 и стрелка влево на -90 .

    Как видно на изображении выше, тело змеи не следует за головой. Это потому, что к нему еще не прикреплен какой-либо код, поэтому тело не знает, что делать.

    Чтобы тело выглядело связанным, его нужно закодировать так, чтобы оно соответствовало спрайту головы.

    Следуйте за лидером

    Выберите спрайт Snake Body и добавьте , когда флажок установлен, в область кода.

    Прикрепите точку в направлении 90 и перейдите к блоку x, y .

    Прикрепите блок навсегда ↺ , указав на и , переместив на 5 шагов внутрь.

    Выберите Змеиная голова из выпадающего списка для указывает на блок .

    Изменение длины

    Напоминаем, что для того, чтобы змея росла, ей нужно собирать предметы (например, яблоко). В этой игре каждый раз, когда змея ест яблоко, ее хвост удлиняется.

    Чтобы отслеживать длину змеи, необходимо создать переменную. Эта переменная будет отслеживать, сколько яблок съест змея, что будет равно длине змеи.

    Переменные

    В этой игре будут использоваться две переменные: счет и переменная длины, которые будут определять длину змеи.

    На вкладке Code выберите Variables и щелкните Make a Variable .

    Создайте переменную с именем score и переменную с именем length .

    Установка длины

    Тело змеи будет расти каждый раз, когда она съедает яблоко. Для этого он создаст своих клонов, равных количеству съеденного.

    1. Выберите спрайт Snake Body .

    2. Прикрепите блок set length  to 0 к началу его кода.

    3. Перетащите блок создать клон себя в блок  навсегда ↺ (внизу).

    4. Добавьте , когда я начинаю как клон , в область кода.

    5. Прикрепить подождать и удалить этот клон к блоку.

    6. Перетащите переменную длины в блок ожидания .

    Длина установлена, но в настоящее время длина всегда будет равна 0, поскольку переменная не изменяется. Чтобы изменить переменную, создайте и закодируйте коллекционный предмет.

    Сбор предметов

    Чтобы змея росла, вам нужно создать спрайт предмета, который змея сможет съесть.

    Создайте предмет коллекционирования

    В этом примере используется яблоко, но вы можете создать любой коллекционный предмет, который захотите!

    1. Наведите курсор на Выберите кнопку Sprite и выберите Paint , чтобы создать новый спрайт.

    2. Нарисуйте коллекционный предмет.

    Установить позицию

    Яблоко будет появляться в случайных точках на карте, поэтому невозможно предсказать, где оно появится в следующий раз!

    1. Выберите спрайт Apple и прикрепите при нажатии флажка к области кода.

    2. Прикрепите набор баллов к блоку 0 . Поедание яблок принесет игроку очки.

    3. Прикрепите к случайной позиции , если на ребре, отскочите и укажите в направлении 90 к коду.

    Сбор яблок

    Когда змея касается яблока, переменные score и length увеличиваются. Яблоко тоже исчезнет, ​​а потом снова появится в новом месте.

    1. Добавьте при нажатии флажка с блоком навсегда ↺ в область кода.

    2. Прикрепите блок if then <> с  в скобках.

    3. Внутри оператора if добавьте hide с измените длину на 0,1 и измените счет на 10. Сбросить Apple «.

    Сброс Apple

    1. Добавить , когда я получу Сброс Apple , в область кода.

    2. Скопировать переход в случайную позицию кодовых блоков на блок приема.3

    3. Прикрепить показать блок  в коде.

    И все! Теперь у вас должна быть игра Snake, в которую можно играть с нуля. Думаете о том, какими могут быть следующие шаги? Дети могут подумать о таких вещах, как добавление «игра окончена», если касается своего тела или границы карты.