forum.boolean.name

forum.boolean.name (http://forum.boolean.name/index.php)
-   Основной форум (http://forum.boolean.name/forumdisplay.php?f=49)
-   -   простая игра (http://forum.boolean.name/showthread.php?t=7086)

ЯМАКc 11.10.2008 22:38

простая игра
 
помогите новичку...
как сделать так чтоб например я нажал налево картинка двигалась налево и ещё и ещё. а то у меня выводит картинку ,нажимаю налево, а оно только один раз на 3пикселя передвинется и всё.. как мне передвигать это изображение по фсему экрану? дайте пжлста готовый код...

Frank 12.10.2008 00:11

Ответ: простая игра
 
Цитата:

Сообщение от ЯМАКc (Сообщение 88626)
дайте пжлста готовый код...

Код:

program MovePicture;        // Программа "Двигаем картинку"
var x,y,key:integer; // координаты картинки и код нажатой клавиши
                img: image;                                // сама картинка
begin                                                                        // начинаем
        img:=loadImage('/icon.png');        // грузим картинку
        setColor(255,255,255);                                // установим белый цвет, чтобы стирать старую картинку перед передвижением
        drawImage(img,x,y);                                // нарисуем картинку в начале координат
        repaint;                                                                        // обновим экран
        repeat                                                                                // главный цикл
                key:=getKeyPressed;                        // берем код нажатой клавиши
                if key<>0 then begin                // если нажали какю-нибудь кнопку
                        fillRect(x,y,getImageWidth(img),getImageHeight(img));        // стираем старую картинку (заливаем белым квадратом)
                        if keyToAction(key)=GA_UP    then y:=y-1;        // если нажали вверх убавляем координату игрик...
                        if keyToAction(key)=GA_DOWN  then y:=y+1;        // анологично..
                        if keyToAction(key)=GA_LEFT  then x:=x-1;        // то же самое для икс
                        if keyToAction(key)=GA_RIGHT then x:=x+1;        // ---////----
                        drawImage(img,x,y);                                        // рисуем картинку в новых координатах
                        repaint;                                                                                // обновляем экран
                end;                                                                                                // если кнопок нажато небыло, то соответственно ничего и не происходит
        until keyToAction(key)=GA_GAMEA        // главный цикл будет работать, пока не нажем единицу...
end.                                                                                                                                // а когда мы вышли из главного цикла... то заканчиваем программу...



Часовой пояс GMT +4, время: 02:17.

vBulletin® Version 3.6.5.
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Перевод: zCarot