RFO BASIC  24.12.2016 / 20:06 |  |  380679477932    Пользователь  
   Сейчас: Offline 
 Имя: Vlad Регистрация: 19.12.2016
   | Кто поможет написать алгоритм преследования в играх
   |  
   25.12.2016 / 10:41 |  |  levapbar    Пользователь  
   Сейчас: Offline 
 Имя: Павел Регистрация: 04.09.2016
   | Подскажите пожалуйста, у кого-нибудь работает бейсик с внешней картой памяти? А-то у меня ни программы не запускаются, ни файлик какой-нибудь не загрузить в программу. Все только с внутренней памяти.    |  
   25.12.2016 / 14:14 |  |  380679477932    Пользователь  
   Сейчас: Offline 
 Имя: Vlad Регистрация: 19.12.2016
   | У меня норм
   |  
   25.12.2016 / 20:52 |  |  lion1971    Пользователь  
   Сейчас: Offline 
 Имя: Lion1971 Регистрация: 12.12.2016
   | как отловить только одно нажатие на экран? Gr.touch touched, x, y выполняется много раз пока происходит касание     |  
   25.12.2016 / 22:59 |  |  DominaN    Пользователь  
   Сейчас: Offline 
 Имя: Кирилл Откуда: Смоленск Регистрация: 28.09.2011
   | 1961uvg, переносишь на половину высоты и ширины, вращаешь, переносишь обратно. Или там прям совсем всё плохо?
   |  
   26.12.2016 / 10:43 |  |  1961uvg    Пользователь  
   Сейчас: Offline 
 Имя: Victor Откуда: Минск Регистрация: 28.07.2015
   | 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.phpDominaNДаже если сместить точку вращения , то и объект переместиться. Вращение вокруг центра можно с имитировать вращением точки вращения по окружности и синхронизированным вращением объекта. В строке gr.rotate.start i,x+v,y+d - если i*на 10 и более увеличивается скорость вращения . Где то так :   Изменено 1961uvg (26.12 / 14:01) (всего 5 раз)
 Прикрепленные файлы:   rotate1-1[1].bas   (0.62 кб.) Скачано 932 раза   |  
   26.12.2016 / 11:06 |  |  lion1971    Пользователь  
   Сейчас: Offline 
 Имя: Lion1971 Регистрация: 12.12.2016
   | вот посмотрите этот код, пока без графики  num_d = 7  
stack.create N, a  
stack.create N, b  
stack.create N, c  
z=0 % зона, куда тапнул для теста  
cur_d = 0 % верхний элемент в стеке, т. е. верний диск в пирамиде  
isTaken = 0 % флажок "взял-положил"  
   
GR.OPEN 255,0,0,0  
GR.COLOR 255,255,255,255,0  
gr.line ln, 10, 400, 790, 400  
gr.line ln, 280, 0, 280, 400  
gr.line ln, 520, 0, 520, 400  
Gr.text.size 25  
Gr.text.draw txt, 10, 450, "z = " + str$(z) + " k = " + str$(k) + " isTaken = " + str$(isTaken) + " cur_d = " + str$(cur_d) % тестовая строка  
   
gosub init_game  
   
do  
   
GR.TOUCH touched, xt, yt  
if touched <> 0 then % определяем зону, куда тапнул  
  if xt < 280 then  
    z = 1  
    stk = a % работаем с первым стеком  
  endif  
  if (xt > 280) & (xt < 520) then  
    z = 2  
    stk = b % работаем со вторым стеком  
  endif  
  if (xt > 520) then  
    z = 3  
    stk = c % работаем с третим стеком  
  endif  
   
 gosub do_move  
 gr.modify txt, "text", "z = " + str$(z) + " k = " + str$(k) + " isTaken = " + str$(isTaken) + " cur_d = " + str$(cur_d) % меняем тестовую строку  
 gr.render  
   
endif  
   
until yt > 400 % выходим по тапу ниже 400 рх  
end  
   
init_game:  
for i = 1 to 7  
stack.push a, i  
next i  
return  
   
do_move:  
if isTaken = 1 then  
 stack.push stk, cur_d  
 isTaken = 0  
else  
 stack.isEmpty stk, empt  
 if empt = 0 then  
  stack.pop stk, cur_d  
  isTaken = 1  
 endif  
endif  
return   
 срабатывает по многу раз за тап, как отловить только одно срабатывание?     |  
   26.12.2016 / 12:07 |  |  1961uvg    Пользователь  
   Сейчас: Offline 
 Имя: Victor Откуда: Минск Регистрация: 28.07.2015
   | Попробуй применить команду PAUSE ....
   Изменено 1961uvg (26.12 / 12:11) (всего 1 раз) |  
   26.12.2016 / 13:02 |  |  lion1971    Пользователь  
   Сейчас: Offline 
 Имя: Lion1971 Регистрация: 12.12.2016
   | разобрался мать его за ногу     DO  
GR.TOUCH touched, x, y  
UNTIL touched  
! Touch detected, now wait for  
! finger lifted  
DO  
GR.TOUCH touched, x, y  
UNTIL !touched  
% а уже тут действия  
 вот так счетчик срабатывает только один раз Открыть спойлер Закрыть спойлер k = 0  
gr.open 255,25,25,25  
gr.orientation 0  
gr.color 255, 255, 255, 255  
gr.text.draw txt, 10, 10, int$(k)  
gr.render  
   
   
while 1=1  
  gosub touch  
  gosub image_move  
 repeat  
   
touch:  
 do  
 gr.touch touched,xt,yt  
   
 until touched  
 do  
 gr.touch touched,xt,yt  
   
 until !touched  
 k = k + 1  
return  
   
image_move:   
 gr.modify txt, "text", int$(k)  
 gr.render  
return  
  Изменено lion1971 (26.12 / 13:08) (всего 1 раз) |  
   26.12.2016 / 15:36 |  |  lion1971    Пользователь  
   Сейчас: Offline 
 Имя: Lion1971 Регистрация: 12.12.2016
   | и еще со стеком я пошел по ложному пути, элементы стека недоступны для перебора, только верхний? Надо переделывать под list?
   |  
    Всего сообщений: 2716  Фильтровать сообщения
  Поиск по теме
  Файлы топика (511) 
                 |