Персонаж все время смотрит вверх

  1. 0 RAD
  2. 5 XE%=SCREENWIDTH(0):YE%=SCREENHEIGHT(0):XC%=XE%/2:YC%=YE%/2:PI=3.1415
  3. 6 RAST=30:GRAD=1.5
  4. 10 GELLOAD "a",icon.png"
  5. 11 SPRITEGEL "0","a"
  6. 20 GELLOAD "a","icon.png"
  7. 21 SPRITEGEL "1","a"
  8. 22 SPRITEMOVE "1",XC%-5,YC%-5
  9. 26 SPRITEMOVE "0",XC%+X-10,YC%-Y-10
  10.  
  11. 28 IF RIGHT(0) THEN GRAD=GRAD+0.1:IF GRAD>2*PI THEN GRAD=0
  12. 29 IF LEFT(0) THEN GRAD=GRAD-0.1:IF GRAD<0 THEN GRAD=2*PI
  13. 30 IF UP(0) THEN GOSUB 1000
  14. 35 X=COS(GRAD)*RAST:Y=SIN(GRAD)*RAST
  15. 39 CLS
  16. 40 PRINT "radian=":PRINT GRAD
  17. 41 PRINT "x=":PRINT X
  18. 42 PRINT "y=":PRINT Y
  19. 43 PRINT "rast=":PRINT RAST
  20. 60 SLEEP 50:GOTO 26
  21. 1000 Y=Y-1
  22. 1005 RAST=SQR(X*X+Y*Y)
  23. 1010 IF X>0 AND Y>=0 THEN GRAD=ATAN(Y/X)
  24. 1011 IF X>0 AND Y<0 THEN GRAD=ATAN(Y/X)+2*PI
  25. 1012 IF X<0 THEN GRAD=ATAN(Y/X)+PI
  26. 1013 IF X=0 AND Y>0 THEN GRAD=PI/2
  27. 1014 IF X=0 AND Y<0 THEN GRAD=3*PI/2
  28. 1015 IF X=0 AND Y=0 THEN GRAD=0
  29. 1020 RETURN
Я тут как то прочитал, что для начинающих надо выкладыват полный код. Вот и выложил. Просто запускаем на МВ 1.8.6... Этод код не идеальный, но в нем содержится формула перевода из декартовых координат в полярные и наоборот. Что позволит точно отобразить физику поворота мира.

Реклама

Мы в соцсетях

tw tg yt gt