Вниз  MIDlet Pascal
- 31.01.2014 / 19:02
Virus-ON
  Пользователь

Virus-ON 
Сейчас: Offline
kingdosya, А ты собери мозги в кучку, подумай хорошенько...
- 31.01.2014 / 22:15
ВитаминКО
  Супермодератор

ВитаминКО 
Сейчас: Offline
Мне интересно, люди, которые советуют повторяющиеся действия переносить в процедуры\функции, сами то хоть писали на этом диалекте паскаля? Оно было бы действительно удобно, если, скажем, процедуры работали как подпрограммы в бейсике. Например, у бота есть однотипные действия. Помимо отрисовки также выполняются вычисления. В итоге отрисовка работает, вычисления производятся но глобально ничего не изменилось.. В голову пришла мысль использовать функции, вроде бы как они могут изменения возвращать. Ага, разбежался. Надо задать тип (если их несколько, нужно юзать record что ли?), да еще нельзя вызвать как процедуру (а это было бы идеально), обязательно присвой переменной..
Я столько кода расписал под процедуры.. оказалось, что зря. Кроме как для отрисовки больше и незачем использовать. В итоге придется все снова переносить тело, взять ту же загрузку ресурсов (в цикле картинки грузятся в массив, хотел все в процедуру перенести).

Хочется заплакать.. Есть ли человек, который напишет библиотеку, дающую возможность использовать подпрограммы? Или может быть уже есть такая, просто не обратил внимания?
Или есть готовые костыли?
__________________
 わからない!!
- 31.01.2014 / 22:25
Helltar
  Пользователь

Helltar 
Сейчас: Offline
люди, которые советуют повторяющиеся действия переносить в процедуры\функции, сами то хоть писали на этом диалекте паскаля? Оно было бы действительно удобно, если, скажем, процедуры работали как подпрограммы в бейсике.Можно пример бэйсик-подпрограмм? А то я не бум бум.
- 31.01.2014 / 22:42
ВитаминКО
  Супермодератор

ВитаминКО 
Сейчас: Offline
Helltar, вот пример
  1. CLS
  2. PRINT 5*2
  3. d=12: x=12: y=10
  4. DIM arr(34)
  5. GOSUB resload
  6. SPRITEMOVE(a(12), x, y)
  7. REPAINT
  8. SLEEP(1000)
  9. END
  10.  
  11. resload:
  12. FOR i=1 TO 34
  13. a(i)=SPRITELOAD(i+'.png')
  14. NEXT i
  15. RETURN
Такая вот комбинация MobileBasic & QBasic, буквально не воспринимать, как пример все-таки
__________________
 わからない!!
- 31.01.2014 / 22:44
Virus-ON
  Пользователь

Virus-ON 
Сейчас: Offline
Лол. Чем тебе процедуры не угодили, о негодующий?
- 31.01.2014 / 22:46
Helltar
  Пользователь

Helltar 
Сейчас: Offline
ВитаминКО, ну, и чем тебе процедуры не угодили? :gg:
- 31.01.2014 / 22:50
ВитаминКО
  Супермодератор

ВитаминКО 
Сейчас: Offline
Virus-ON, блять, для кого наверху расписано что куда и почему???
отрисовка работает, вычисления производятся но глобально ничего не изменилось поэтому процедуры не подходят
вроде бы как они могут изменения возвращать.
Надо задать тип, да еще нельзя вызвать как процедуру, обязательно присвой переменной
поэтому функции не подходят. Как они массив изображений и звуков вернут?
__________________
 わからない!!
- 31.01.2014 / 23:00
ВитаминКО
  Супермодератор

ВитаминКО 
Сейчас: Offline
Конкретно код на паскале (мидлет)
  1. procedure loadResImg;
  2. begin
  3.  for j:=0 to 9 do
  4.  begin
  5.   imgRes[j]:=LoadImage(integerToString(j)+'.png');
  6.  end;
  7. end;
  8.  
  9. procedure botDelaetHod;
  10. begin
  11.  q[2]:=10;
  12.  m[2]:=m[2]-10;
  13. end;
  14.  
  15. var
  16.  imgRes: array[0..9] of Image;
  17. begin // Основная прога
  18.  ...
  19.  ...
  20.  loadResImg;
  21.  drawImage(imgRes[3], 23, 3);
  22.  botDelaetHod;
  23.  drawString(integerToString(q[2]), 2, 2);
  24.  drawString(integerToString(m[2]), 5, 5);
  25.  Delay(3000);
  26. end.

__________________
 わからない!!

Изменено ВитаминКО (31.01 / 23:01) (всего 1 раз)
- 31.01.2014 / 23:19
Helltar
  Пользователь

Helltar 
Сейчас: Offline
ВитаминКО, :gg:

  1. var
  2.   imgRes: array[0..9] of Image;
  3.  
  4. procedure loadResImg;
  5. begin
  6.   ...
  7.   ...
  8. end;
  9.  
  10. procedure botDelaetHod;
  11. begin
  12.   ...
  13.   ...
  14. end;
  15.  
  16. begin // Основная прога
  17.   ...
  18.   ...
  19. end.

- 31.01.2014 / 23:21
Virus-ON
  Пользователь

Virus-ON 
Сейчас: Offline
ВитаминКО, Э-э-э я думаю спокойно. И возвращать ничего не надо...
Наверх  Всего сообщений: 1594
Фильтровать сообщения
Поиск по теме
Файлы топика (72)