Показать сообщение отдельно
Старый 01.12.2010, 11:12   #28
Randomize
[object Object]
 
Аватар для Randomize
 
Регистрация: 01.08.2008
Адрес: В России
Сообщений: 4,355
Написано 2,471 полезных сообщений
(для 6,853 пользователей)
Ответ: Вопрос-Ответ (для новичков BlitzMax)

Сообщение от Данил Посмотреть сообщение
В blitzMax можно объявить динамический массив.
Но максимальный индекс элемента в нем может быть 71801.

Global Base_Image_array:Int[];
Global Base_Image_number:Int;
Base_Image_array[71801]=3;
Base_Image_array[71800]=3;
Base_Image_array[71799]=3;

почему именно 71801 ? 71802 уже не работает!

add

а в этот раз до Base_Image_array[71809]=3; дошло, и ничего
Local BigArray:Int[100500]
BigArray[3333] = 3333
BigArray
[71799] = 71799
BigArray
[99999] = 99999
BigArray
[100499] = 100500 1

Print BigArray[3333]
Print 
BigArray[71799]
Print 
BigArray[99999]
Print 
BigArray[100499
Насколько я знаю разpмер массива в BM нужно указывать обязательно. Изменение размера = пересоздание массива. Лучшим вариантом будет использование БД для таких объемов, но ежели памяти не жалко, то используй TList или напиши свой аналог. Ежели хранить нужно только int, то можно смело и банки использовать.

Сообщение от baton4ik Посмотреть сообщение
Загружаю звуки в массив Global msounds:TSound[5]
Далее проверяю, не воспроизводится ли csound:TChannel
Если нет, то csound=PlaySound(msounds[Rand(0,4])
Звука нет. Никаких ошибок, весь остальной код работает как надо. Формат - wav. Другие не пробовал.
Раздел фреймворк покажи.

Накидаю ка пример использования звука в бм:
Framework brl.basic
Import brl
.directsoundaudio
Import brl
.oggloader

SetAudioDriver
"DirectSound" )
Local s:TSound LoadSound("C:\BlitzMax\samples\digesteroids\sounds\menu.ogg")

Local c:TChannel s.Cue()
If 
Not c.Playing() Then PlaySound(s)
Delay(1500)
Null GCCollect() 
SUPERSTRICT или UNINSTALL - Выбор за тобой, %ЮЗЕРНЕЙМ%
__________________
Retry, Abort, Ignore? █
Intel Core i7-9700 4.70 Ghz; 64Gb; Nvidia RTX 3070
AMD Ryzen 7 3800X 4.3Ghz; 64Gb; Nvidia 1070Ti
AMD Ryzen 7 1700X 3.4Ghz; 8Gb; AMD RX 570
AMD Athlon II 2.6Ghz; 8Gb; Nvidia GTX 750 Ti
(Offline)
 
Ответить с цитированием
Эти 4 пользователя(ей) сказали Спасибо Randomize за это полезное сообщение:
baton4ik (01.12.2010), BlackOut (01.12.2010), Nex (07.02.2012), Reks888 (01.12.2010)