Анимация движении персонажа

  1. 10 FOR I%=1 TO 12
  2. 20 GELLOAD STR$(I%),STR$(I%)+".PNG"
  3. 30 NEXT I%
  4. 40 X%=100:Y%=100
  5. 50 B%=1:D%=0:TIME%=0
  6. 60 IF RIGHT(0) THEN TIME%=TIME%+1:D%=0:X%=X%+1
  7. 70 IF LEFT(0) THEN TIME%=TIME%+1:D%=3:X%=X%-1
  8. 80 IF UP(0) THEN TIME%=TIME%+1:D%=6:Y%=Y%-1
  9. 90 IF DOWN(0) THEN TIME%=TIME%+1:D%=9:Y%=Y%+1
  10. 100 IF RIGHT(0)=0 AND D%=0 THEN B%=1
  11. 110 IF LEFT(0)=0 AND D%=3 THEN B%=1
  12. 120 IF UP(0)=0 AND D%=6 THEN B%=1
  13. 130 IF DOWN(0)=0 AND D%=9 THEN B%=1
  14. 140 IF TIME%>100 THEN B%=B%+1:TIME%=0
  15. 150 IF B%>3 THEN B%=2
  16. 160 SPRITEGEL "PLAYER",STR$(B%+D%)
  17. 170 SPRITEMOVE "PLAYER",X%,Y%
  18. 180 GOTO 60
Нам даны 12 спрайтов,на каждую сторону выделенно по три спрайта,если мы нажмём на какую либо клавишу сторон и будем удерживать,то увидим анимацию и передвижение персонажа,если же отпустим клавишу то персонаж остановиться и перейдёт на первоначальный вид.
<<< Пояснение >>>
10-30 строки отвечают за загрузку графики.
40-50 строки это переменные.
60-90 строки нажатые клавиши и передвижение персонажа,при удержение какой либо кнопки RIGHT(0),LEFT(0),UP(0),DOWN(0) происходит анимация.
100-130 строки это не нажатые клавиши.
140 строка отвечает за переход с одного спрайта на другой в определённом промежутке времени.
150 строка отвечает за максимальное количество спрайтов выделённое на каждую сторону и делает переход к второму спрайту,так как первые спрайты сторон не имеют отношение к передвижению персонажа. (к примеру,персонаж просто стоит)
160-170 строки отвечают за преобразование гелей в спрайты и передвижение персонажа.
180 строка это переход к строке 60.
<<< Переменные >>>
X%,Y% - эти переменные отвечают за координаты спрайта персонажа.
D% - отвечает за каждую сторону прибавляя минимальное число спрайтов к стороне. (в нашем случае шаг прибавления равна 3,так как у нас на каждую сторону выделенно 3 спрайта,исключение имеет первая сторона,она всегда имеет значение 0)
B% - отвечает за количество спрайтов в каждой стороне и меняет спрайты.
TIME% - отвечает за промежуток времени перехода с одного спрайта на другой.

Реклама

Мы в соцсетях

tw tg yt gt