Форум программистов, компьютерный форум, киберфорум
Pascal (Паскаль)
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
1 / 1 / 0
Регистрация: 23.09.2010
Сообщений: 26
1

Процедура game для игры

11.11.2010, 16:29. Показов 548. Ответов 0
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Здравствуйте! прошу помочь мне вот с такой проблемой.
Я пишу такую игру:
По лабиринту, заданному матрицей, бегает кошка. Она собирает призы, и есть один суперприз.
Там же по лабиринту бегают 4 мыши и 2 крысы.
Мыши наносят урон кошке в 50%, если кошка не сможет убить мышь(пробел). Тогда мышь исчезает.
Крысу кошка убить не может.
Кошка должна добраться до конца лабиринта(призы собирать необязательно, приз дает кошке 50% здоровья, суперприз-100%).
Так вот, я застрял на процедуре game, ничего в голову не приходит, не знаю как написать.
вот пока все что есть.

Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
program labirint;
uses graph,crt;
var
        gd,gm,errcode:integer;
        count:        integer;      ///счетчик очков///
        key:          char;
        p:            pointer; ///указатель на образ///
        nx,ny,dx,dy,x,y,k,
        ik,jk,i,j:      integer; //индексы определяющие положение//
 
const
        n_strok = 22;
        n_stolb = 22;
        dx = 30;
        dy = 30;
        left = #75;
        up = #72;
        esc = #27;
        right = #77;
        down = #80;
 
        type masslab=array[1..n_strok,1..n_stolb] of integer;
 
 
    const lab1:=((1,1,1,1,1,1,1,1,1,1,0,0,1,1,1,1,1,1,1,1,1,1),
                 (1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1),
                 (1,0,4,0,0,0,0,0,0,0,0,0,0,0,1,2,0,0,0,0,0,1),
                 (1,1,1,1,1,1,0,0,1,0,0,0,1,1,1,0,0,1,1,0,0,1),
                 (1,0,0,0,0,0,0,0,1,1,1,1,1,0,0,0,0,0,1,0,0,1),
                 (1,0,0,0,0,1,0,0,0,0,0,0,0,0,5,1,4,0,1,0,0,1),
                 (1,1,1,0,0,1,0,0,0,0,0,0,0,0,0,1,0,0,1,0,0,1),
                 (1,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,1),
                 (1,0,0,0,0,1,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,1),
                 (1,1,1,0,0,1,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,1),
                 (1,0,0,0,0,0,0,0,1,1,1,1,1,0,0,1,2,0,1,0,0,1),
                 (1,0,0,0,0,0,0,0,1,0,0,0,0,0,0,1,1,1,1,0,0,1),
                 (1,0,0,0,1,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,1),
                 (1,1,0,0,0,1,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,1),
                 (1,0,0,5,0,1,0,0,0,0,0,1,0,0,1,1,1,0,0,1,1,1),
                 (1,0,0,0,0,1,0,0,1,0,0,1,0,0,0,0,1,0,0,1,1,1),
                 (1,1,1,1,1,1,0,0,1,0,0,1,0,0,4,0,1,0,0,1,1,1),
                 (1,0,0,0,0,0,0,0,1,0,0,1,1,1,1,1,1,0,0,1,1,1),
                 (1,0,0,0,0,0,0,0,1,0,0,0,0,0,1,0,0,0,0,0,0,1),
                 (1,0,0,1,0,0,1,1,1,0,0,0,2,0,1,3,0,4,0,0,2,1),
                 (1,0,6,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1));
 
////=========================печать очков==============================///
procedure PrCount(count:integer);
var
        st:string[3];
begin
        setcolor(1,4);     STR(count,st);
        setfillstyle(1,0);
        bar(370,310,640,340);
        settextstyle(0,0,2);
        outtextxy(400,320,'Заработано очков - ' +st);
end;
///========================рисование кошки=============================///
procedure DrawCat;
var
        size:integer;
begin
        /////надо вписать процедуру именно для кошака, вставить рисунок///
 
end;
 
 
////=====================анализ клавиш================================////
 
procedure AnalyseKey(var key:char; var i,j,ik,jk:integer);
begin
        key:=readkey;
        if key = #0 then
          begin
             key:=readkey;
             case key of
               left: j:=jk-1;
               right: j:= jk+1;
               up: i:=ik-1;
               down: i:=ik+1;
          end;
 
end;
        setcolor(0);
        settextstyle(0,0,3);
        outtextxy(450,200,'стена');
end;
////====================рисование лабиринта===========================////
 
        Procedure DrawLab
        var i,k,x,y:integer;
       begin
                lab:=lab1;
                for i:=1 to n_strok do
                for k:=1 to n_stolb do
                        begin
                          x:=x+(k-1)*dx;
                          y:=y+(i-1)*dy;
                          case lab[i,k] of
                               1: putimage(x,y,p_stena^,xorput);
                               2: putimage(x,y,p_priz^,xorput);
                               3: putimage(x,y,p_suppriz^,xorput);
                               4: putimage(x,y,p_mish^,xorput);
                               5: putimage(x,y,p_krysa^,xorput);
                               6: putimage(x,y,p_koshka^,xorput);
                               7: begin
 
                          end;
                end;
end;
////====================================================================//
 
procedure game=?
Добавлено через 1 минуту
в матрице
0-пустое место
1-стена
2-приз
3-суперприз
4-мышь
5-крыса
6-кошка

Добавлено через 2 минуты
Комментарии в коде я сам для себя оставил)

Добавлено через 36 минут
ну помогите пожалуйста! хоть образец дайте...
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
11.11.2010, 16:29
Ответы с готовыми решениями:

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

Сервер / Game Center для онлайн игры "Шашки"
Здравствуйте уважаемые пользователи форума. Реализовал ли кто-то из вас онлайн игры под ios?...

Прекращается работа программы Game Application во время игры в Аллоды онлайн
Здравствуйте, Уважаемые. Во время игры Аллоды онлайн появляется сообщение "Прекращена работа...

Сборка ПК "для себя" - игры, игры, игры! Киев, бюджет 8300 грн с монитором.
Всем доброго времени суток. 1. Бюджет примерно 8300 грн (с монитором) 2. Украина, г. Киев,...

0
11.11.2010, 16:29
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
11.11.2010, 16:29
Помогаю со студенческими работами здесь

Аналог Game Prelauncher не для игр
Добрый день! Перерыл весь интернет и форумы, но так и не смог найти достойную замену Game...

Разминка для спецов №1 (512b game). Предлагаю развлечься!
Друзья спецы. Кто хочет немного отвлечься от помощи студентам и проявить спортивный программистский...

Разница в результате рендеринга для окна Game и в билде
Всем доброго всего. Работаю над проектом CRPG, стоит задача - делать объекты полупрозрачными,...

Собираю компьютер для игры в GTA 5 а так же в игры 2015 года
Хочется поиграть в гта 5 на минимальных настройках, в 30-40 фпс У меня имеется: Видеокарта AMD...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru