Почему в LUA нельзя переместить часть данных
|
|
dj--alex | Дата: Воскресенье, 14 Мая 2017, 13:25 | Сообщение # 1 |
частый гость
Сейчас нет на сайте
| Вопрос знающим Что я делаю не так:? как переместить в памяти в массиве блок данных так чтобы он читался, я его копирую в другую часть этого же массива а там NULL вместо него. (nil) Такая же конструкция обязана работать. я в PHP тысячу раз такое делал, я понимаю что в ЛУА вообще работа с массивами корява но не настолько же. main.lua 145 bad argument #1 to 'byte' (string expected, got nil)
data, size = love.filesystem.read (levelname);- читаем ффайл. xdata=freadbin (data); -- тут в массив загружается код уровня for a=624,31,1 do xdata[a+1000]=string.byte(xdata[a]); -- вот тут ВРОДЕ БЫ он копирует данные на новое место end можно и без String.byte - все равно будет скопирован хрен. ни одного из 30 байт!!!!
hpmax=xdata[1634] ; - а вот тут main.lua 145 bad argument #1 to 'byte' (string expected, got nil)
Lua + Love
|
|
| |
mitch | Дата: Воскресенье, 14 Мая 2017, 13:50 | Сообщение # 2 |
постоянный участник
Сейчас нет на сайте
| Цитата dj--alex ( ) for a=624,31,1 do В Lua при задании цикла второе число означает до какого числа вести счёт, а не количество повторений. В твоём случае скорее всего надо: for a = 624, 624+31 do Третье число не обязательно, если хочешь оставить шаг +1.
|
|
| |
dj--alex | Дата: Воскресенье, 14 Мая 2017, 14:39 | Сообщение # 3 |
частый гость
Сейчас нет на сайте
| ой спасибо а то я всю голову сломал уже постоянно забываю что тутне такработает.
Lua + Love
|
|
| |