Лабораторные работы (2011) (РДО_Красная_шапочка_ЗахаровД.С.)

Посмотреть архив целиком








Лабораторная работа №3

РДО




















Захаров Данила Сергеевич

А-13-07





Москва 2011

Содержание:


  1. Постановка задачи ..........................................................................................................3

  2. Описание предметной области ..................................................................................... 4

  3. Описание имитационной модели ……………………………………………………. 4

3.1) Типы ресурсов ............................................................................................................... 4

3.2) Ресурсы .......................................................................................................................... 4

3.3) Операции ........................................................................................................................5

3.4) Анимация ....................................................................................................................... 5

3.5) Рисунки использованные в программе ........................................................................7

4) Приложени (функции и константы) ............................................................................... 9

Название игры: “Волк и красная шапочка”

Концепция игры: На поле в сторону игрока двигается волк. Задача игрока убегать от волка на протяжении заданного времени. В случае если игрок наткнулся на волка, он проигрывает ( его съедают), игра заканчивается. Игра также прекращается, когда кончиться заданное время (которое необходимо продержаться)

Описание имитационной модели

  1. Типы ресурсов:

$Resource_type Игрок : permanent

$Parameters

X : integer = 0

Y : integer = 350

$End


$Resource_type Волк : permanent

$Parameters

X : integer = 0

Y : integer = 0

Состояние : (Стоит, Идет, Съел_игрока) = Стоит

$End




Представление ресурсов в коде программы:

$Resources


_Игрок : Игрок * *

_Волк : Волк * * *


$End

  1. Операции

А) Операция_влево : Образец_влево 'A'

Операция_вправо : Образец_вправо 'D'

Операция_вверх : Образец_вверх 'W'

Операция_вниз : Образец_вниз 'S'- перемещение игрока по полю


Б) Образец_волк_съел_игрока– выполняется в случае пересечения координат волка и игрока


В) Операция_волк_влево : Образец_волк_влево

Операция_волк_вправо : Образец_волк_вправо

Операция_волк_вверх : Образец_волк_вверх

Операция_волк_вниз : Образец_волк_вниз– условия для выполнения активного хода активного противника.


  1. Анимация

Использован 1 кадр анимации.

Общая (не условная анимация) отображает игровое поле, игрока, волка, оставшееся время, которое нужно продержаться.











Исходное состояние игры:



Код представления общей части кадра в программе:

$Frame Кадр_1

$Back_picture = <255 255 255> back

Show

text [ 200, 1, 200, 30, transparent, <255 255 255>, 'Осталось времени, с:' ]

text [ 350, 1, 200, 30, transparent, <255 255 255>, Таймер - seconds ]


bitmap[_Игрок.X, _Игрок.Y, шапка, Mask2]


Show_if _Волк.Состояние = Идет

bitmap[_Волк.X, _Волк.Y, Volk, Mask2]

Show_if _Волк.Состояние = Съел_игрока

bitmap [5, 80, Message]

text [20, 150, 200, 30, transparent, <0 0 0>, 'Вас съели!']

show_if Таймер - seconds = 0

bitmap [5, 80, Message]

text [20, 150, 200, 30, transparent, <0 0 0>, 'Вы продержались']

$End

Тут последовательно:

А) фон

Б) Таймер

В) Волк

Д) 2 Сообщения (победа, поражение)




Условная часть кадра:

(Сообщение отображается в зависимости от состояния в игре)