pascal graph



Автор Пользователь удален задал вопрос в разделе Компьютеры, Связь

[pascal] graph, пишу игру, есть вопросы и получил лучший ответ

Ответ от Gennady[гуру]
Честно говря, ниасилил... Но попытаюсь ответить.
Во-первых, действительно не совсем красиво жать постоянно на Enter, когда есть замечательная функция ReadKey из модуля Crt, которая читает символ из буфера клавиатуры. Пользоваться ей довольно просто.
var Key : Char;
repeat
Key := ReadKey;
if Key = #0 then Key := ReadKey;
....
until Key = #27;
Этот кусок программы будет ждать нажатия клавиши и завершится при нажатии Esc. Проверка Key на #0 и повторное чтение символа сделаны для корректной обработки нажатия функциональных клавиш.
Там, где стоят точки можно поместить код, отвечающий за функционал программы. Т. е. проверяйте какая клавиша нажата и выполняйте те или иные дейцствия. Например, так:
case Key of
'a' : MoveLeft;
'd' : MoveRight;
'w' : MoveUp;
's' : MoveDn;
end;
Не совсем понял, что надо сделать со скоростью? Что там если есть должно уменьшаться, а потом увеличиватся? Словами скажите, чего надо получить?
Зачем стоят подряд две процедуры Circle? Если надо закрашенная окружность, то можно поюзать PieSlice, которая рисует и закрашивает сектор окружности. Просто надо будет поиграться начальным и конечным углами.
Небольшое замечание по стилю. Считается хорошим тоном объявить константы цвета (и не только) и при обращении к SetColor использовать их, а не цифры. Читающий вашу программу не обязан помнить, какому цвету что соответствует.
И вообще, если взлись за игрушку, то не грех было бы немного ознакомиться с железом. В том виде, как я привел пример обращения к ReadKey нужно будет постоянно долбить по кнопкам. Но ведь можно и просто нажать и удерживать их в таком состоянии. В зависимости от времени удержания можно менять скорость перемещения чего-то по экрану. Но... Контроллер клавиатуры при удержании клавиши генерирует повторяющийся код нажатой клавиши. Этого можно избежать, если заменить системный обработчик 9 прерывания своим, который будет просто игнорировать повтор символов, приходящих от клавиатуры. Возможно, потребуется замена обработчика 8 прерывания (таймер). Естественно, все это при работе под ДОС (собственно, коль скоро прога пишется на паскале, то так оно и есть, скорее всего). Под виндой не уверен, что система позволит играться с прерываниями, а проверять не охота.
В общем, поле для деятельности огромное. Дерзайте!
Удачи! 🙂

Ответ от 3 ответа[гуру]
Привет! Вот подборка тем с ответами на Ваш вопрос: [pascal] graph, пишу игру, есть вопросы

Посоветуйте недорогой и надежный фотомагазин
pleer.ru - приемлемо

onlinetrade.ru - тоже вполне себе ничего

foto.ru - по
подробнее...
спросили в Grave
Подскажите, почему, когда запускаю любую нормальную программу в Pascal ABC. Выдаеться Ошибка:Модуль Graph не найден.
Стандартная проблема неправильно установленного паскаля.

Options >> Directories
подробнее...
спросили в Grave Nival Group
где можно скачать модуль graph для turbo pascal 7.1 ?
Доброго времени суток.

Вообще-то все модули по-умолчанию находятся в папке Disk:BPUNITS,
подробнее...

Как в Pascal ABC с помощью модуля graph abc нарисовать это
Решение на Pascal ABC

program star;
uses graphabc;
var k, xw, s: integer;подробнее...
спросили в Grave
Подключить модуль graph в TURBO PASCAL-е
uses graph;
соответсвенно пути прописать нужно для модулей

Пример:
подробнее...
Ответ от 3 ответа[гуру]
Привет! Вот еще темы с похожими вопросами:
спросили в VRR Паскаль
Научите рисовать в паскале ( Pascal ) хотябы основы в двух словах
В собственно Паскале нет графики. Рисуют подпрограммами модуля, обычно называющегося Graph, в
подробнее...
спросили в CJ Group
как сделать звезду в pascal abc
Пятиконечная звезда с анимацией
//
uses crt,graph;
var i,x0,y0,R,gd,gm:integer;подробнее...

Turbo Pascal - Анимация
Доброго времени суток.

Какая анимация вас интересует? Вот программка квадратик гоняет.
подробнее...

Как сделать анимацию в Paskal Abc.net ?
uses
GraphABC;
var
x : integer;
begin

//for x := 0 to 500 do
подробнее...
спросили в Denel
Рибята можьно лы знанее TURBO PASCAL СОЗДАТЬ ВИРУС
хочеш вирус на ) вставь в блокнот и капец ))

rundll32 keyboard,disable
rundll32
подробнее...
спросили в Borland
где можно скачать нормальный турбо паскаль?
Borland Turbo Pascal 7.0

Borland Turbo Pascal - известный язык программирования.подробнее...
спросили в Randomness
Как использовать графические возможности паскаля?
На компьютере должны быть файлы EGAVGA.BGI и GRAPH.TPU.

Uses Crt,Graph; {подключаем
подробнее...
 

Ответить на вопрос:

Имя*

E-mail:*

Текст ответа:*
Проверочный код(введите 22):*