RS Game Maker Community
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

 
Расширенный поиск
  Главная  Форум   Вики Блоги FAQ Игры Статьи Примеры Войти Регистрация  
Вики
Все желающие приглашаются редактировать вики. Можете писать о своих (или чужих) играх, размещать туториалы, постить статьи - главное навесить категорию.
Страниц: 1 2   Вниз
  Печать  
Урок 1:Знакомство с Game Maker, создание первой игры.
0 Пользователей и 1 Гость смотрят эту тему.
Silen
Старожил
******

Репутация: 277
Offline Offline

Награды:
Легенда сайта
Сообщений: 2 478


Indie Game Developer

25 Декабря 2007 в 22:21
Автор:Роман "Ka1miK" Калмыков
Видеоролик к статье на YouTube

Вступление
     Все мы любим играть в компьютерные игры, порой они завладевают тобой полностью, и ты не можешь оторваться. Как же хочется создать нечто подобное самому... постойте, ведь подобные игры создают профессионалы, команды людей, а иногда и целые кампании. Среди них программисты, гейм- дизайнеры, художники, звукорежиссёры, 3д-моделлеры и ещё много разных людей. Как же их всех заменить в одном лице, т.е. в себе. Да никак ;-)
    Но надежда всё-таки есть, и называется она- Game Maker...
    Конечно, она не заменит всех этих людей, но процесс создания игр упрощается настолько, что сначала думаешь, насколько же всё просто. К сожалению, сделать на ней играбельные версии игр вроде Half-Life или Gothic не удастся. Но, наверняка, Вы не раз играли с азартом в разные двухмерные аркады, вроде Pacman, Mario, Tetris или Сонника. Процесс их создания на Game Maker довольно прост. При этом Вам не обязательно уметь программировать. Интуитивный и удобный интерфейс drag-and-drop позволит создать подобную компьютерную игру достаточно быстро. Но не думайте, что он способен только на простенькие аркады. После нескольких месяцев, или даже недель, Вы осознаете все его возможности... Даже трёхмерные игры ему по силам. Возможности GM можно расширять различными библиотеками, но об этом мы узнаем позже.
   Так что если Вы любите игры, то потратить хотя бы неделю на Game Maker стоит...

Интерфейс Game Maker 7:Древо ресурсов, параметры спрайта и объекта, редакторы скриптов и комнат
Примечание: оформление окон может отличаться


Поехали...
     Итак, Вы скачали и установили GM. Запустите программу, при первом запуске выйдет окно, в каком режиме первоначально запуститься: Simple или Advanced. Если Вы запускаете его действительно в первый раз, то выбирайте «No», для начала достаточно и простого режима. Переключаться можно в меню File->Advanced Mode.
В папке с установленной программой (по умолчанию C:\Program Files\Game_Maker..\) будут находиться следующие папки:
  • examples содержит несколько игровых примеров, за авторством самого Марка Овермарса (создателя программы), которые Вы можете редактировать. 
  • lib содержит библиотеки действий. Если Вы хотите установить дополнительные библиотеки, то поместите такие файлы в эту папку.
  • sprites содержит некоторые спрайты, которые Вы можете использовать.
  • backgrounds В этой папке фоновые изображения, для Ваших игр.
  • sounds  Ну а тут, как Вы понимаете звуки..

Как оно работает…
     Прежде чем углубляться в знакомство с возможностями Game Maker, хорошо бы сначала понять основную игровую идею (что такое игра с точки зрения её создания, и как она работает изнутри). Игры, созданные Game Maker, используют одну или несколько комнат, под комнатами подразумеваются уровни, карты, этапы, короче говоря, там где это всё происходит. Комнаты плоские, не трёхмерные, но они могут содержать 3D подобную графику. В этих комнатах Вы размещаете используемые в игре объекты. Типичные объекты: стены, двигающиеся шарики, игровые персонажи (герои), монстры и т.д. Некоторые объекты, подобно стенам, лишь статично находятся там и ничего не делают. Другие объекты, такие как основной персонаж, будут двигаться по всему игровому полю и реагировать на команды пользователя (клавиатуру, мышь, джойстик) и другие. Например, когда основной персонаж сталкивается с монстром, он может погибнуть, а когда сталкивается со стеной - не может пройти дальше. Объекты - самые важные компоненты игр Game Maker, поэтому давайте поговорим о них более подробно.
     Во-первых, большинство объектов имеют изображения, которые делают их видимыми на экране. Такие изображения называются спрайтами. Спрайт часто состоит не из одного изображения, а из нескольких, отображение которых одно за другим создаёт эффект анимации объекта (вроде .GIF). Именно благодаря этому персонаж шагает, шарик вращается, космический корабль взрывается и т.д. В течение игры спрайты для определённого объекта могут изменяться. (Таким образом, персонаж может видоизменяться, когда он идёт налево или направо). Вы можете создавать свои собственные спрайты непосредственно в Game Maker: в встроенном редакторе изображений, или загружать их из готовых файлов (например, из анимированных GIF-ов, или из любого другого типа изображений).
     С объектами происходят различные ситуации. Такие ситуации называются - события (events). Когда происходят определённые события, объекты могут совершать некоторые указанные заранее действия (actions). Существует большое количество различных событий, которые могут происходить и большое количество различных действий, которые Вы можете ассоциировать с объектами. Например, событие create event происходит во время создания объекта(точнее, при создании образца объекта; может быть несколько образцов(дубликатов) объекта и для каждого из них событие будет обрабатываться отдельно). Например, при создании объекта шара, Вы можете присвоить ему действия каких-либо движений, с которых и начинается перемещение указанного объекта. Когда два объекта сталкиваются, происходит событие столкновения(collision event). В такой ситуации Вы можете остановить шарик или полностью изменить направление его движения. Вы можете также проиграть при этом звуков. Для этого Game Maker позволяет Вам загружать звуки. Когда пользователь нажимает клавишу на клавиатуре - происходит событие  клавиатуры (keyboard event), и объект может выполнить соответствующее действие, например, начать перемещение в указанном направлении. Для каждого созданного Вами объекта можно указать действия для различных событий, таким образом, определяя поведение объекта. Если Вы вдруг не совсем поняли, что это значит, не волнуйтесь, когда мы будем разбирать примеры, то Вы всё поймёте.
     Как только Вы установили все необходимые объекты, пришло время определиться с комнатами, в которых они будут находиться. Комнаты могут использоваться как уровни вашей игры. Существуют действия, позволяющие перемещаться из одной комнаты в другую. Комнаты, прежде всего, имеют фон, который может быть однотонным или состоять из изображения. Такие фоновые изображения могут быть созданы непосредственно в Game Maker или загружены из внешнего файла. (Фон может использоваться для многих вещей, но в настоящее время мы рассматриваем их как нечто, что создаёт красивый внешний вид Ваших комнат). Затем Вы можете разместить объекты в созданной комнате. Вы также можете разместить в комнате множество образцов одного и того же объекта. Например, Вы должны создать только один объект стены, после чего можете использовать его образец в любом месте. Также вы можете создавать несколько образцов объекта монстра, если у них должно быть одинаковое поведение. При этом каждый образец объекта уникален и обрабатывается отдельно от других.
     Теперь Вы готовы запустить игру. Будет отображена первая комната, и объекты оживут,  выполняя действия, которые были определены Вами в событии создания. При соприкасании образцов будут запущены действия, описанных в событиях столкновения; также образцы будут реагировать на действия пользователя, выполняя действия, описанные в событиях клавиатуры и/или мыши.
    В заключении следует перечислить следующие составляющие (часто именуемые ресурсами), которые играют важную роль при создании любой игры:
  • sprites: (анимированные) изображения, которые используются для отображения объекта, да и просто разные изображения (не путайте с фонами)
  • objects: собственно объекты, главное составляющие наших игр
  • rooms: комнаты (уровни), в которых находятся объекты
  • sounds: используемые в игре фоновая музыка или звуковые эффекты.
  • backgrounds: изображения, используемые как фон для комнат, и не только.
В действительности существует ещё несколько типов ресурсов, это: пути, сценарии, шрифты и тайм-лайны. Данные ресурсы действительно важны при построении сложных игр и доступны будут только в расширенном режиме, пока достаточно самых простых. Остальные будут рассмотрены позже...

Начнём с шариков...
     Сейчас мы с вами опробуем всё на практике, начнём с очень простого примера. Этот пример для простого(Simple mode) режима. Первым делом следует себе представить и описать игру, которую мы хотим сделать. Вы должны всегда начинать создание игр именно с этого шага, это сэкономит в дальнейшем много времени, для такой простой игры можно просто её представить и подумать над возможностями. Для более сложных Вам будет проще сначала написать дизайн-документ, описать там всё, как Вы хотите видеть в игре, и в процессе разработки максимально следовать написанному плану и стараться сильно ничего не изменять; именно так и делают большинство профессиональных разработчиков игр. Итак, наша игра будет предельно простая: есть шарики, которые летают по игровому полю и отражается от стен. Задача игрока такова: игрок должен попытаться нажать на шарик, наведя на него курсор мыши. После каждого нажатия добавляется очко, и появляется новый шарик. Вот такая сомнительная забава... но это только первая версия, после этого мы сделаем из этой «игры» более оригинальную и интересную.
     Как Вы, наверное, уже догадались, нам потребуются два разных объекта: шарик и стена. Нам также понадобятся два различных спрайта: один для объекта стены и один для объекта шарика. А также, мы хотим услышать какой-нибудь звук при удачном щелчке мыши по шарику. Мы будем использовать только одну комнату, в которой будут происходить все действия. (Если Вы не хотите создавать игру самостоятельно, то можете загрузить уже готовый пример из папки Examples, который называется «hit the ball».)
     Начнём, пожалуй, с создания спрайтов. Добавить спрайт можно разными способами: из меню Add (Добавить) выбираем пункт Add Sprite (Добавить Спрайт), можно щёлкнуть на значок спрайта на панели инструментов, ещё можно щёлкнуть правой кнопкой мыши на папке Sprites, там также выбрать Add Sprite или воспользоваться "горячей" комбинацией Cntr+Alt+S. Все эти способы подобно работают и для других ресурсов. В результате перед Вами откроется новое окно. В поле Name (Название) введите имя спрайта, например “wall” (стена). Изменять имя можно и прямо в папке ресурсов, нажмите F2, или выберите в всплывающем меню соответствующий пункт Rename. Нажмите кнопку Load Sprite (Загрузить Спрайт) и выберите соответствующее изображение(\Sprites\maze\wall.gif). Теперь Вы видите загруженный спрайт. Вы можете закрыть окно. Таким же образом создайте спрайт шарика (Sprites\maze\ball_red.gif) .
Затем добавляем звук. Из меню Add выбираем пункт Add Sound (Добавить Звук). Откроется новое окошко. Присваиваем звуку подходящее название и выбираем звук, нажав кнопку Load Sound (Загрузить Звук). Выберите соответствующий звук (например, Sounds\beep1.wav) и проверьте, является ли выбранный звук действительно подходящим, нажав на кнопку проигрывания. Если звук Вам понравился, закрывайте окно.
     Теперь необходимо создать два объекта. Сначала создадим объект стены. Из меню Add выбираем пункт Add Object (Добавить Объект). Откроется окно, внешний вид которого более замысловат, чем те, которые мы видели прежде. В левой его части содержится некоторая информация об объекте. Давайте присвоим нашему объекту соответствующее название в графе Name и выберем для него подходящий спрайт стены, который мы загрузили ранее, нажмите на соответствующий значок рядом с графой Sprite. Поскольку в нашей комнате стены твёрдые, то для этого нужно поставить галочку в поле Solid (Твёрдый), это задаст определенное поведение в некоторых событиях этого объекта, какое именно мы узнаем позже. Для этого объекта пока хватит, так что теперь можно закрыть окно. Далее создаём новый объект (повторяя вышеописанное) и называем его ball(шарик), а также присвоим ему соответствующий спрайт. Шарик мы не станем делать твёрдым (галочки в окошке Solid быть не должно). Для нашего шарика необходимо определить некоторое поведение, т.е. определить события и действия для них. По середине окна (справа от основной информации, под надписью Events) Вы можете видеть пустой список для событий. Чуть ниже него расположена кнопка Add Event (Добавить событие). Нажмите её, и откроется меню с набором всех доступных событий. Выберите событие Create (создания), рядом с которым Вы увидите иконку лампочки. В результате оно будет добавлено в список событий. С правой стороны, на самом краю, Вы увидите всевозможные группы действий (в виде закладок), которые вмещают в себя множество действий. Из группы move выбираем действие (квадратик с иконкой) с 8 красными стрелками и перетаскиваем его в список действий, это белое окно по середине, под надписью Actions (действия). Чтобы перетащить действие наведите курсор на нужный квадратик, зажмите левую клавишу мыши, переместите курсор на список действий и отпустите клавишу мыши. Выбранное действие позволит перемещаться нашему объекту при создании в выбранном направлении. Как только Вы опустите данный квадратик на белое поле, откроется окно, в котором можно выбрать желаемое направление движения. Выберите все из 8 стрелок (нажав на них), чтобы выбрать случайное направление перемещения шарика. В графе speed (скорость) Вы можете выбрать скорость шарика, пока оставим скорость 8 (по умолчанию). Можете закрыть окно диалога. Теперь при появлении шарика, т.е. при его создании, он будет двигаться в одном из восьми направлений. Вторым шагом мы определяем, что будет происходить в событии collision (столкновения) шарика со стеной. Снова нажмите кнопку Add Event. Нажмите на кнопку события столкновения, с двумя стрелками, и в выпадающем меню выберите объект стены. Далее для определения поведения шарика нам нужно выбрать действие bounce (рикошета). Это самое последнее действие в разделе Jump группы move. Если Вы знаете английский язык, то ориентироваться ещё проще: при наведении на действия всплывает подсказка, объясняющая, что происходит при выполнении действия. В данном случае подсказка такая: «Bounce against objects», что дословно значит «отскакивание от объектов». А если Вы скачали русскую версию .lib файлов, то будет вдвойне проще. Теперь при столкновении шарика со стеной он будет отскакивать. Наконец определим, что будет происходить, когда пользователь нажмёт левую кнопку мыши на шарике. Добавьте соответствующее событие mouse (мыши) и выберите левую кнопку мыши из всплывающего меню- Left Pressed (событие нажатия левой клавиши мыши). Для данного события добавим несколько действий. Первое - проигрывает звук, его можно найти в группе main1 (основные1) в разделе действий: «Play a sound»(проиграть звук), просто выберите звук и закройте окно диалога. Второе - для изменения игрового счёта (в группе score) - «Set the score»(указать кол-во очков), в графе new score (новое кол-во очков) поставьте значение 1, а также поставьте галочку в поле Relative (относительно), это значит, что к текущему счёту будет добавлена единица. Третье - для перемещения шарика в новую произвольную позицию- «Jump to a random position», в разделе Jump группы move, все графы оставим без изменений. Также надо добавить действие, чтобы шарик двигался в произвольном направлении, которое можно просто копировать из события создания. Редактировать параметры действия, можно дважды кликнув на нужном действии.

Интерфейс Game Maker 7:параметры объекта
     Наконец все наши объекты готовы. В завершении, нам нужно создать комнату (поле, где всё это недоразумение будет происходить). Из меню Add выбираем пункт Add Room и добавляем комнату. С правой стороны Вы увидите пустое пространство. Слева находятся некоторые установки нашей комнаты, которые Вы можете изменять, например, ширину и высоту комнаты. Укажем размеры нашей комнаты во вкладке settings (настройки), в графе width (ширина), и в графе height (высота). Укажем размер 480х240. Теперь во вкладке objects, в левой нижней части Вы можете выбрать объекты из соответствующего меню. Нажимая левую клавишу мыши на игровом поле, Вы будете размещать образцы выбранного объекта. Чтобы удалить их нажмите правую клавишу. В верхней части окна Вы увидите графы Snap X и Snap Y, это ширина и высота клеток сетки, по которой происходит выравнивание всех объектов, поставьте их значения на 24. Ну а теперь займитесь размещением стен и шариков на игровом поле. Сначала окружите поле прямоугольником из стен, а потом разместите пару шариков. Пока не обращайте внимание на другие вкладки и графы, мы их потом разберём подробно.
     Теперь настало время протестировать получившуюся игру. Нажмите кнопку Run (Поехали!), зелёный треугольник на панели инструментов и смотрите, что произойдёт. Если Вы всё сделали правильно – начнётся игра. Шарики будут летать по полю, отскакивать от стен, а при нажатии на них будут начисляться очки. Всё соответствует нашим задумкам.

Вот и результат
     Поздравляем! Вот Вы и создали свою первую игру. Можете гордиться. Но заметьте игра немного скучная, и кроме того, что Вы сделали её сами, ничего интересного в ней нет. Так что прежде чем читать дальше, можно немного отдохнуть и подумать, что же можно добавить в игру, а что убрать, как сделать её игрой, а не «игрой».
     Подумали? А в следующем уроке мы разберём один из вариантов... создадим игру ColourBalls!


К статье прилагаются:
Videolesson1.rar(1805 кб)- ролик создания игры.
htb.rar- исходник игры Hit the ball.

Лицензия на распространение статьи:
Данная статья может свободно распространяться в том виде, в котором она поставляется, при указании в заголовке держателя авторских прав и источника в виде доменного имени http://GMakers.ru.
Никакие лица или организации не имеют права брать оплату за распространение статьи без письменного разрешения держателя авторских прав.
Прикреплённые файлы
* htb.rar (12.06 Кб - загружено 2687 раз.)

* Videolesson1.rar (1804.13 Кб - загружено 3609 раз.)
Последнее редактирование: 25 Мая 2009 в 17:59 от Калмык

Don't tell why, tell why not.
 
New gamer
Новичок


Репутация: 0
Offline Offline

Сообщений: 1

Ответ № 1 23 Июня 2008 в 01:43
Спасибо вам огромное, мне очень понравился этот урок, все просто и понятно, надеюсь кроме 1 и 2 уроков будут еще
Калмык
Завсегдатай
****

Репутация: 258
Offline Offline

Награды:
За перевод справки Game Maker 8Легенда сайта
Сообщений: 936

Ответ № 2 24 Июня 2008 в 20:57
Вам спасибо, продолжение будет после 15 июля, я думаю.

Если тебе помогли- ты их отблагодари, в карме плюсани!
Группа GMakers.ru ВКонтакте. Вступай и зови друзей!
Silen
Старожил
******

Репутация: 277
Offline Offline

Награды:
Легенда сайта
Сообщений: 2 478


Indie Game Developer

Ответ № 3 24 Июня 2008 в 21:48
Даёшь урок намбер 3! )
О чём, кстати, он будет?

Don't tell why, tell why not.
Калмык
Завсегдатай
****

Репутация: 258
Offline Offline

Награды:
За перевод справки Game Maker 8Легенда сайта
Сообщений: 936

Ответ № 4 25 Июня 2008 в 14:05
Думаю платформер в виде практики, и обзор всех действий и событий "в разрезе" так сказать.

Если тебе помогли- ты их отблагодари, в карме плюсани!
Группа GMakers.ru ВКонтакте. Вступай и зови друзей!
MZMAN
Креведка в зоне,бугагагга,это йа!
Чудо-пользователь
Активный участник
**

Репутация: -229
Offline Offline

Сообщений: 247


Ответ № 5 06 Сентября 2008 в 20:27
Кстати я придумал как из Hit The ball Сделать более интересную игру,в новом объекте(назовём его XpandLvl) делаем-Create, создаём Variable Xp и Variable Lvl,соответственно делаем их Variable 0,Xp=опыт Lvl=уровень,потом делаем Draw и создаём первый код:
//Пишем где должна находиться надпись опыт
draw_text(32,64,Xp)
//Пишем где должна находиться надпись уровень
draw_text(64,96,Lvl)
:Вот вы и сделали первый код,если вам и этого мало то тогда будем обсуждать продолжение...
После всех процедур делаем в Left Presend такие действия
Variable,ниже приписываем +1,и потом жмём на Retavive,собсно относительно...
Потом в Create делаем такое(учтите не удаляйте ничего,я просто отчистил что бы было понятнее!!!),эмм кто непоймёт Start Moving Derection я сделал такое,Speed +1 Retavive:

* Безымянный.GIF (74.83 Кб. 1280x1024 - просмотрено 2469 раз.)

Вот так мы и сделаем(насчёт 200,500 и т. п. это опыт,который мы получаем за клик(+1 как мы сделали))
Единственное в чём проблема так это в том что Draw в мячике делать нельзя(исчезнут мячики)
Поэтому придёться создать новый Object,В нём Делаем как раз Draw...
В мячике когда мы делали Xp+1 надо так где написанны такие вот штуки:
Self
Other
Object
:жмём на Object,и выбираем тот что мы создали(предположим мы назвали его XpandLvl),Всё,готово,теперь игра стала интереснее,для тех кто непонял я выложу пример
Извените,так как я являсь сам новичком то я непонял в чём ошибка аргументов,кароче жмём игноре и всё тут,ещё я быстро делал пример поэтому весь счётчик очень крив!
* Пример.zip (20.23 Кб - загружено 817 раз.)
Прикреплённые файлы Графические миниатюры:


Другие файлы:

* Пример.zip (20.23 Кб - загружено 817 раз.)

Vasenkov
Самый обычный
Частый посетитель
***

Репутация: 62
Offline Offline

Награды:
За перевод справки Game Maker 8
Сообщений: 330


NF Entertainment

Ответ № 6 10 Мая 2009 в 14:17
Вот я сделал и чуть подредактил

(а уроки GM мне щас позарез нужны, а то всё старое при переустанвке винду в попу ушло, ды и всё забыл о нём...)

* Balls.rar (3638.67 Кб - загружено 806 раз.)
Прикреплённые файлы
* Balls.rar (3638.67 Кб - загружено 806 раз.)


deathsoul
дезсоул
Ветеран форума
*****

Репутация: 547
Offline Offline

Награды:
Легенда сайта
Сообщений: 1 853


Ответ № 7 10 Мая 2009 в 14:53
Ну исполнение - не самый клас, но как, ни странно мне понравилось.  ;)
Но тут конечно куча недоработок, думаю, о них даже не стоит писать...  ;)
Linxus
В конец поехавший
Ветеран форума
*****

Репутация: 72
Offline Offline

Награды:
Легенда сайта
Сообщений: 1 310


Ответ № 8 05 Сентября 2009 в 21:47
Этот урок есть и в ГМ-овском хелпе.С переводом почти то же самое.И это моя первая игра

ололо фейл а еще я не буду ставить пробелы после знаков препинания
Калмык
Завсегдатай
****

Репутация: 258
Offline Offline

Награды:
За перевод справки Game Maker 8Легенда сайта
Сообщений: 936

Ответ № 9 06 Сентября 2009 в 02:14
Ну не совсем. В переводе в справке есть даже логические ошибки.

Если тебе помогли- ты их отблагодари, в карме плюсани!
Группа GMakers.ru ВКонтакте. Вступай и зови друзей!
Воздух
Участник
*

Репутация: 6
Offline Offline

Сообщений: 89


Не пугайтесь!Я токой,только когда голодный.

Ответ № 10 11 Декабря 2009 в 21:12
Балин...создал игру и где то прокол...ну ничего.Могу залить версию с надписью как Не надо делать игры)А статья подробная,думаю,следуя дальше я добьюсь более интересного,а не шарики...truing or die,but die ,truing(пытайся или сдохни,но сдохни,пытаясь)

Воздух не предает своих рабов......если они не предают его Дыму....
Воздух
Участник
*

Репутация: 6
Offline Offline

Сообщений: 89


Не пугайтесь!Я токой,только когда голодный.

Ответ № 11 11 Декабря 2009 в 21:35
ДА!!!!Я СДЕЛАЛ ЭТО!Я очень рад..спасибо за статью)Правда.Статья хорошая,а чтоб не было проколов нада внимательно читать.

Воздух не предает своих рабов......если они не предают его Дыму....
свет
...
Новичок


Репутация: 0
Offline Offline

Сообщений: 22


Ответ № 12 21 Февраля 2010 в 11:40
 ;D ;D ;D вышло ура круто !!!!

я добрый
Трейсер
Новичок


Репутация: 0
Offline Offline

Сообщений: 2

Ответ № 13 21 Февраля 2010 в 13:03
круто спс бошое!! сделал свою перваю ыгру))) оч понравилася))) канечо сам ещё немного поколдавал))) и понял что прога до чертиков простая!! спс бошое!!
Трейсер
Новичок


Репутация: 0
Offline Offline

Сообщений: 2

Ответ № 14 21 Февраля 2010 в 13:03
УРА! :crazy: O0 8) :yahoo:
Trisha
нихрена не
Новичок


Репутация: 0
Offline Offline

Сообщений: 45


Ответ № 15 15 Марта 2010 в 21:13
1 гамка!!!!!!!!! ;D ;D

:)
VIRYS
Новичок


Репутация: 0
Offline Offline

Сообщений: 2

Ответ № 16 29 Июля 2010 в 22:02
ЕЕЕЕ ПОЛУЧИЛОСЬ  :yahoo:
Aver
Страшный
Завсегдатай
****

Репутация: 43
Offline Offline

Сообщений: 880


LOLWUTOMGWTF

Ответ № 17 28 Сентября 2010 в 16:25
Хороший урок. Аффтор лови плюс за старание и радость других  :)

Aver
Страшный
Завсегдатай
****

Репутация: 43
Offline Offline

Сообщений: 880


LOLWUTOMGWTF

Ответ № 18 04 Октября 2010 в 12:18
Помоему отличный урок. Автор молодец. 8) ;)

Огион
Завсегдатай
****

Репутация: 123
Offline Offline

Сообщений: 934


Ответ № 19 04 Октября 2010 в 12:42
Во нормально...
Страниц: 1 2   Вверх
  Печать  
 
Перейти в:  

RSGMC (gmakers.ru) © 2007—2017
Счётчик–@Mail.ru