Вниз  Вопросы по MobileBasic
- 18.06.2011 / 22:41
Magatino
  Администратор

Magatino 
Сейчас: Offline
miha-23d, Ну примерно так,я и делаю :)
- 18.06.2011 / 22:57
XakepPRO
  Модератор форума

XakepPRO 
Сейчас: Offline
Гели нельзя двигать, только рисовать. :-D
Перерисовывая экран и получается некоторое 'движение'.
 
Например движение человечка на спрайтах с картой на заднем плане:
  1. 5 MX%=0: MY%=0
  2. 6 REM Координаты точки начала карты (её левый верхний угол)
  3. 7 REM Значения необязательно равны нулю
  4. 10 GELLOAD "Left", "LeftSprite.png"
  5. 20 GELLOAD "Right", "RightSprite.png"
  6. 30 GELLOAD "Up", "UpSprite.png"
  7. 40 GELLOAD "Down", "DownSprite.png"
  8. 45 GELLOAD "Map","Map.png"
  9. 50 REM Загружаем изображения нашего персонажа
  10. 60 IF UP(0) THEN SPRITEGEL "Hero", "Up": MY%=MY%-2
  11. 70 IF DOWN(0) THEN SPRITEGEL "Hero", "Down": MY%=MY%+2
  12. 80 IF LEFT(0) THEN SPRITEGEL "Hero", "Left": MX%=MX%-2
  13. 90 IF RIGHT(0) THEN SPRITEGEL "Hero", "Right": MX%=MX%+2
  14. 100 REM Если нажали кнопку вверх/вниз/влево/вправо, то загрузить в спрайт ''герой'' (это наш человечек) соответствующий гель.
  15. 110 SPRITEMOVE "Hero", 240/2, 320/2
  16. 120 REM Выводим спрайт на экран, где левый верхний угол будет находиться в центре экрана (почти)
  17. 130 DRAWGEL "Map", MX%, MY%
  18. 132 SLEEP 40
  19. 135 REM Выводим карту на экран в точку с координатами (МХ%,МУ%)
  20. 140 GOTO 60
 
А теперь оно же, но человечек является гелем:
  1. 5 MX%=0: MY%=0
  2. 6 REM Координаты точки начала карты (её левый верхний угол)
  3. 7 REM Значения необязательно равны нулю
  4. 10 GELLOAD "3", "LeftSprite.png"
  5. 20 GELLOAD "4", "RightSprite.png"
  6. 30 GELLOAD "1", "UpSprite.png"
  7. 40 GELLOAD "2", "DownSprite.png"
  8. 45 GELLOAD "Map","Map.png"
  9. 50 REM Загружаем изображения нашего персонажа
  10. 60 IF UP(0) THEN HERO%=1: MY%=MY%-2
  11. 70 IF DOWN(0) THEN HERO%=2: MY%=MY%+2
  12. 80 IF LEFT(0) THEN HERO%=3: MX%=MX%-2
  13. 90 IF RIGHT(0) THEN HERO%=4: MX%=MX%+2
  14. 100 REM Если нажали кнопку вверх/вниз/влево/вправо, то загрузить в переменную номер движения ''героя'' (это наш человечек).
  15. 110 DRAWGEL "Map", MX%, MY%
  16. 120 DRAWGEL STR$(HERO%), 240/2, 320/2
  17. 125 SLEEP 40
  18. 130 GOTO 60
Таким образом мы прикрепили к простой переменной номер движения, который необходим для вывода геля героя.

Сначала выводим карту, затем героя.

Надеюсь, все понятно :).

Изменено XakepPRO (18.06 / 23:01) (всего 2 раза)
- 18.06.2011 / 23:12
Magatino
  Администратор

Magatino 
Сейчас: Offline
Меня волнует,такой вопрос,а приоритет у гелей опроделяеться?(кто ниже,кто выше) :)
- 18.06.2011 / 23:17
XakepPRO
  Модератор форума

XakepPRO 
Сейчас: Offline
Magatino (18.06.2011/23:12)
Меня волнует,такой вопрос,а приоритет у гелей опроделяеться?(кто ниже,кто выше) :)
Нет, нет у них никаких приоритетов.
 
Это как на листе бумаги рисовать. Если нарисовал красный квадрат, а затем провел белую линию по середине, то получится два красных прямоугольника.
 
Если выводишь один гель. Затем второй. То второй 'закроет' первый.
- 18.06.2011 / 23:33
Magatino
  Администратор

Magatino 
Сейчас: Offline
XakepPRO, Большое спасибо,правда это нужно в учебник записать :)
- 18.06.2011 / 23:49
waplo
  Пользователь

waplo 
Сейчас: Offline
Magatino (18.06.2011/22:41)
miha-23d, Ну примерно так,я и делаю :)
magatino как мы знаем вначале картинка,потом другая,это означает что если загрузишь первую картинку,а потом вторую,то значет вторая будет выше первой,например фон это буква x,а человек это буква y,чтобы человек был выше чем фон просто вначале загрузи фон,потом человека
- 19.06.2011 / 00:38
waplo
  Пользователь

waplo 
Сейчас: Offline
а скажите пожалуйста как сделать так,чтобы я не мог проходить сквозь дома,ну чтобы со всех сторон была стена
- 19.06.2011 / 08:33
RGT
  Пользователь

RGT 
Сейчас: Offline
waplo, однако... Скажи сразу: "Напишите игру за меня, там можна буит играть эльфам, охраной дворци и злодеем. И если пользователь играет эльфам то эльфы в лесу, домики деревяные набигают солдаты и злодеи... (и т.д.)"
__________________
 don't tread on me
- 19.06.2011 / 09:32
XakepPRO
  Модератор форума

XakepPRO 
Сейчас: Offline
waplo (18.06.2011/23:49) magatino как мы знаем вначале картинка,потом другая,это означает что если загрузишь первую картинку,а потом вторую,то значет вторая будет выше первой,например фон это буква x,а человек это буква y,чтоНа спрайтах такое не работает. А к гелям это никакого отношения не имеет.
- 19.06.2011 / 09:33
XakepPRO
  Модератор форума

XakepPRO 
Сейчас: Offline
waplo (19.06.2011/00:38) а скажите пожалуйста как сделать так,чтобы я не мог проходить сквозь дома,ну чтобы со всех сторон была стенаНе знаю :gg:
Можно немного подумать и придумать некоторую систему.
Наверх  Всего сообщений: 9538
Фильтровать сообщения
Поиск по теме
Файлы топика (270)