Принципы работы с игровыми приложениями на Java

Java Runtime Environment - минимальная реализация виртуальной машины, необходимая для исполнения приложений, без компилятора и других средств разработки. Компиляция исходного кода через командную строку. Основные моменты создания игрового 2d-приложения.

Рубрика Программирование, компьютеры и кибернетика
Вид курсовая работа
Язык русский
Дата добавления 26.04.2014
Размер файла 2,1 M

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

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

falling = true;

}

// падение

if(falling) {

if(dy > 0 && gliding) dy += fallSpeed * 0.1;

else dy += fallSpeed;

if(dy > 0) jumping = false;

if(dy < 0 && !jumping) dy += stopJumpSpeed;

if(dy > maxFallSpeed) dy = maxFallSpeed;

}

}

public void update() {

// обновление позиции

getNextPosition();

checkTileMapCollision();

setPosition(xtemp, ytemp);

// проверка остановки атаки

if(currentAction == SCRATCHING) {

if(animation.hasPlayedOnce()) scratching = false;

}

if(currentAction == FIREBALL) {

if(animation.hasPlayedOnce()) firing = false;

}

// стрельба

fire += 1;

if(fire > maxFire) fire = maxFire;

if(firing && currentAction != FIREBALL) {

if(fire > fireCost) {

fire -= fireCost;

FireBall fb = new FireBall(tileMap, facingRight);

fb.setPosition(x, y);

fireBalls.add(fb);

}

}

// обновить огонь

for(int i = 0; i < fireBalls.size(); i++) {

fireBalls.get(i).update();

if(fireBalls.get(i).shouldRemove()) {

fireBalls.remove(i);

i--;

}

}

if(flinching) {

long elapsed =

(System.nanoTime() - flinchTimer) / 1000000;

if(elapsed > 1000) {

flinching = false;

}

}

// установить анимацию

if(scratching) {

if(currentAction != SCRATCHING) {

currentAction = SCRATCHING;

animation.setFrames(sprites.get(SCRATCHING));

animation.setDelay(50);

width = 60;

}

}

else if(firing) {

if(currentAction != FIREBALL) {

currentAction = FIREBALL;

animation.setFrames(sprites.get(FIREBALL));

animation.setDelay(100);

width = 30;

}

}

else if(dy > 0) {

if(gliding) {

if(currentAction != GLIDING) {

currentAction = GLIDING;

animation.setFrames(sprites.get(GLIDING));

animation.setDelay(100);

width = 30;

}

}

else if(currentAction != FALLING) {

currentAction = FALLING;

animation.setFrames(sprites.get(FALLING));

animation.setDelay(100);

width = 30;

}

}

else if(dy < 0) {

if(currentAction != JUMPING) {

currentAction = JUMPING;

animation.setFrames(sprites.get(JUMPING));

animation.setDelay(-1);

width = 30;

}

}

else if(left || right) {

if(currentAction != WALKING) {

currentAction = WALKING;

animation.setFrames(sprites.get(WALKING));

animation.setDelay(40);

width = 30;

}

}

else {

if(currentAction != IDLE) {

currentAction = IDLE;

animation.setFrames(sprites.get(IDLE));

animation.setDelay(400);

width = 30;

}

}

animation.update();

// установить направление

if(currentAction != SCRATCHING && currentAction != FIREBALL) {

if(right) facingRight = true;

if(left) facingRight = false;

}

}

public void draw(Graphics2D g) {

setMapPosition();

// отрисовка огня

for(int i = 0; i < fireBalls.size(); i++) {

fireBalls.get(i).draw(g);

}

// нарисовать игрока

if(flinching) {

long elapsed =

(System.nanoTime() - flinchTimer) / 1000000;

if(elapsed / 100 % 2 == 0) {

return;

}

}

super.draw(g);

}

}

Приложение Р

Результат разработанного приложения

Рисунок Р.1 - Персонаж на стоит на месте

Рисунок Р.2 - Прыжок

Рисунок Р.3 - Персонаж летит

Рисунок Р.4 - Стрельба огнем

Рисунок Р.5 - Разрушение огня

Рисунок Р.6 - Удар когтем

Рисунок Р.7 - Невозможность пройти через потолок

Рисунок Р.8 - Окраина уровня

Размещено на Allbest.ru


Подобные документы

  • Кратка историческая справка развития языка Java. Анализ предметной области. Java platform, enterprise and standart edition. Апплеты, сервлеты, gui-приложения. Розработка программного кода, консольное приложение. Результаты работы апплета, сервлета.

    курсовая работа [549,2 K], добавлен 23.12.2015

  • Трансляция как процесс перевода программного кода из текстовой формы в машинные коды. Основные категории программ Java. Основные управляющие операторы. Объявление и инициализация переменных. Основные средства разработки приложений, написанных на Java.

    презентация [938,2 K], добавлен 26.10.2013

  • Разработка технологии и средств реализации Java-приложения, сокращающих трудоемкость создания и гибкость модификации интерфейса пользователя. Использование XML-документов для описания внешнего представления, элементов управления и событий экранных форм.

    дипломная работа [2,8 M], добавлен 19.08.2011

  • История создания языка Java. Основные принципы объектно-ориентированного программирования. Структура, особенности синтаксиса и примеры прикладных возможностей использования языка Java, его преимущества. Перспективы работы программистом на языке Java.

    курсовая работа [795,9 K], добавлен 14.12.2012

  • Особенности архитектуры Java. Технология Java Database Connectivity. Кроссплатформенность Java-приложений. Преимущества языка программирования. Логическая структура базы данных. Структура программного комплекса. Верификация программных средств.

    курсовая работа [962,8 K], добавлен 13.01.2016

  • Архитектура Java и Java RMI, их основные свойства, базовая система и элементы. Безопасность и виртуальная Java-машина. Интерфейс Java API. Пример использования приложения RMI. Работа с программой "Calculator". Универсальность, портативность платформ.

    курсовая работа [208,6 K], добавлен 03.12.2013

  • История развития языка программирования Java. История тетриса - культовой компьютерной игры, изобретённой в СССР. Правила проведения игры, особенности начисления очков. Создание интерфейса программы, ее реализация в среде Java, кодирование, тестирование.

    курсовая работа [168,1 K], добавлен 27.09.2013

  • Разработка графического редактора для рисования двухмерной и трехмерной графики, используя язык программирования Java и интерфейсы прикладного программирования Java 2D и Java 3D. Создание графического редактора 3D Paint. Основные методы класса Graphics.

    курсовая работа [197,5 K], добавлен 19.11.2009

  • Общее понятие о пакете "java.net". Логическая структура соединений через сокеты. Создание объекта Socket, соединение между узлами Internet. Способы создания потока. Алгоритм работы системы клиент-сервер. Листинг ServerForm.java, запуск подпроцесса.

    лабораторная работа [174,6 K], добавлен 27.11.2013

  • Архитектура уровня команд платформы Java, формат файла класса Java. Компилятор ассемблероподобного языка, позволяющий создавать файлы классов, корректно обрабатываемые реальной JVM, поддерживающий все команды байт-кода Java и важнейшие возможности JVM.

    курсовая работа [292,6 K], добавлен 17.09.2008

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.