Вниз  RFO BASIC
- 24.12.2016 / 20:06
380679477932
  Пользователь

380679477932 
Сейчас: Offline
Кто поможет написать алгоритм преследования в играх
- 25.12.2016 / 10:41
levapbar
  Пользователь

levapbar 
Сейчас: Offline
Подскажите пожалуйста, у кого-нибудь работает бейсик с внешней картой памяти? А-то у меня ни программы не запускаются, ни файлик какой-нибудь не загрузить в программу. Все только с внутренней памяти. :-(
- 25.12.2016 / 14:14
380679477932
  Пользователь

380679477932 
Сейчас: Offline
У меня норм
- 25.12.2016 / 20:52
lion1971
  Пользователь

lion1971 
Сейчас: Offline
как отловить только одно нажатие на экран?
Gr.touch touched, x, y выполняется много раз пока происходит касание
  :)
- 25.12.2016 / 22:59
DominaN
  Пользователь

DominaN 
Сейчас: Offline
1961uvg, переносишь на половину высоты и ширины, вращаешь, переносишь обратно. Или там прям совсем всё плохо?
- 26.12.2016 / 10:43
1961uvg
  Пользователь

1961uvg 
Сейчас: Offline
levapbar
Все наверно зависит от версии Андроид!
У меня андроид 6.0 - поддерживает любой носитель: SD карту, флешку и винчестер и с них запускает без вопросов!

lion1971
В интернете много информации по спрайтам, стрипам и тайлам.
Спрайт-одно изображение ( объект ) в одном файле.
Стрип - много спрайтов ( кадров ) в линию в одном файле.
Тайл - много спрайтов расположенных в сетке ( типа фона ) в одном файле.
  Например здесь : http://gmakers.xyz/index.php?topic=5142.20
А здесь примеры анимации Глобус и Костер :
http://annimon.com/forum/id396951-470

380679477932
Алгоритмов приследования много , вот одна из тем :
http://www.codenet.ru/progr/alg/ai.php

DominaN
Даже если сместить точку вращения , то и объект переместиться.
Вращение вокруг центра можно с имитировать вращением точки вращения по окружности
и синхронизированным вращением объекта. В строке gr.rotate.start i,x+v,y+d - если i*на 10 и более увеличивается
скорость вращения . Где то так :

Изменено 1961uvg (26.12 / 14:01) (всего 5 раз)


Прикрепленные файлы:
rotate1-1[1].bas (0.62 кб.) Скачано 577 раз
- 26.12.2016 / 11:06
lion1971
  Пользователь

lion1971 
Сейчас: Offline
вот посмотрите этот код, пока без графики
  1. num_d = 7
  2. stack.create N, a
  3. stack.create N, b
  4. stack.create N, c
  5. z=0 % зона, куда тапнул для теста
  6. cur_d = 0 % верхний элемент в стеке, т. е. верний диск в пирамиде
  7. isTaken = 0 % флажок "взял-положил"
  8.  
  9. GR.OPEN 255,0,0,0
  10. GR.COLOR 255,255,255,255,0
  11. gr.line ln, 10, 400, 790, 400
  12. gr.line ln, 280, 0, 280, 400
  13. gr.line ln, 520, 0, 520, 400
  14. Gr.text.size 25
  15. Gr.text.draw txt, 10, 450, "z = " + str$(z) + " k = " + str$(k) + " isTaken = " + str$(isTaken) + " cur_d = " + str$(cur_d) % тестовая строка
  16.  
  17. gosub init_game
  18.  
  19. do
  20.  
  21. GR.TOUCH touched, xt, yt
  22. if touched <> 0 then % определяем зону, куда тапнул
  23.   if xt < 280 then
  24.     z = 1
  25.     stk = a % работаем с первым стеком
  26.   endif
  27.   if (xt > 280) & (xt < 520) then
  28.     z = 2
  29.     stk = b % работаем со вторым стеком
  30.   endif
  31.   if (xt > 520) then
  32.     z = 3
  33.     stk = c % работаем с третим стеком
  34.   endif
  35.  
  36.  gosub do_move
  37.  gr.modify txt, "text", "z = " + str$(z) + " k = " + str$(k) + " isTaken = " + str$(isTaken) + " cur_d = " + str$(cur_d) % меняем тестовую строку
  38.  gr.render
  39.  
  40. endif
  41.  
  42. until yt > 400 % выходим по тапу ниже 400 рх
  43. end
  44.  
  45. init_game:
  46. for i = 1 to 7
  47. stack.push a, i
  48. next i
  49. return
  50.  
  51. do_move:
  52. if isTaken = 1 then
  53.  stack.push stk, cur_d
  54.  isTaken = 0
  55. else
  56.  stack.isEmpty stk, empt
  57.  if empt = 0 then
  58.   stack.pop stk, cur_d
  59.   isTaken = 1
  60.  endif
  61. endif
  62. return
срабатывает по многу раз за тап, как отловить только одно срабатывание? :)
- 26.12.2016 / 12:07
1961uvg
  Пользователь

1961uvg 
Сейчас: Offline
Попробуй применить команду PAUSE ....

Изменено 1961uvg (26.12 / 12:11) (всего 1 раз)
- 26.12.2016 / 13:02
lion1971
  Пользователь

lion1971 
Сейчас: Offline
разобрался мать его за ногу :-D
  1. DO
  2. GR.TOUCH touched, x, y
  3. UNTIL touched
  4. ! Touch detected, now wait for
  5. ! finger lifted
  6. DO
  7. GR.TOUCH touched, x, y
  8. UNTIL !touched
  9. % а уже тут действия
вот так счетчик срабатывает только один раз
Открыть спойлер


Изменено lion1971 (26.12 / 13:08) (всего 1 раз)
- 26.12.2016 / 15:36
lion1971
  Пользователь

lion1971 
Сейчас: Offline
и еще со стеком я пошел по ложному пути, элементы стека недоступны для перебора, только верхний? Надо переделывать под list?
Наверх  Всего сообщений: 2668
Фильтровать сообщения
Поиск по теме
Файлы топика (492)