Monkey (язык программирования)
Monkey — язык программирования, предназначенный для разработки игр на различных платформах, включая настольный компьютер, мобильные и игровые консоли. Сам по себе, язык является объектно-ориентированным диалектом языка Бейсик. Компилятор транслирует код Monkey в исходный код для нескольких целевых платформ, который затем компилируется. В настоящее время, официальными целевыми платформами являются: Windows, Mac OS X, Android, iOS, PSS, HTML5 и Flash. Monkey создан компанией Blitz Research Ltd, создавшей BlitzBasic, Blitz3D and BlitzMax. Пользователями были созданы другие целевые платформы, включающие BlitzMax, Python, Gameboy Advance.
Содержание |
История [править]
Monkey был разработан Марком Сибли из Blitz Research Ltd. и выпущен 1 Марта 2011.[1] Monkey классифицируется как компилятор от источника к источнику, который может преобразовывать код Monkey в код Java, ActionScript, C++, C# или JavaScript. Этот язык программирования направлен на мульти-платформенную разработку приложений. Он имеет подробную реализацию объектно ориентированной парадигмы и поддерживает наследование, полиморфизм, шаблоны, интерфейсы. Monkey классифицируется как строго типизированный язык.
Начиная с версии 0.59, в Monkey присутствует отладчик для платформ, основанных на C++.
Mojo [править]
Mojo представляет собой графический модуль для Monkey и предназначен, в первую очередь, для написания простых 2D-игр.
Целевые платформы [править]
- Windows
- Mac OS X
- Android
- iOS
- HTML5
- Flash
- XNA
- PlayStation Vita
Пример кода [править]
' включение строгого режима Strict ' импорт модуля mojo Import mojo ' точка входа приложения monkey Function Main:Int() New GameApp Return 0 End ' основной класс, расширяющий класс mojo app Class GameApp Extends App Field player:Player ' переопределение метода mojo oncreate Method OnCreate:Int() ' загрузка изображения player.png в переменную img, медиаданные должны хранится в папке project.data Local img:Image = LoadImage("player.png") player = New Player(img, 100, 100) ' установка обновлений в секунду равным 60 SetUpdateRate 60 Return 0 End ' переопределение метода mojo onupdate Method OnUpdate:Int() player.x+=1 If player.x > 100 player.x = 0 End Return 0 End ' переопределение метода mojo onrender Method OnRender:Int() ' очистка экрана заданным цветом (красный, зеленый, синий) Cls 32, 64, 128 player.Draw() Return 0 End End ' класс игрока Class Player Field x:Float, y:Float Field image:Image ' конструктор Method New(img:Image, x:Int, y:Int) self.image = img self.x = x self.y = y End ' рисование спрайта Method Draw:Void() DrawImage image, x, y End End
Программы, написанные с использованием Monkey [править]
- Zombie Trailer Park — Flash and iOS
- Pirate Solitaire — iOS, Android and Flash
- Jet Worm — iPhone and iPad
- Blotty Pots — Android, iOS, WP7
- New Star Soccer Mobile — Android, iOS, Flash and HTML5
См. также [править]
Примечания [править]
- ↑ http://www.blitzbasic.com/faq/faq_entry.php?id=29 Blitz Research Ltd
Ссылки [править]
- Официальный сайт Monkey
- Немецкий форум
- Русскоязычное сообщество Monkey
- Jungle IDE, расширенный IDE для Monkey