Submarina Опубликовано 11 сентября, 2016 Поделиться Опубликовано 11 сентября, 2016 (изменено) Здравствуйте КАК МЕНЕ ЗДЕСЬ ЗАПИСАТЬ в место Integer, 2 байта или 1 Байт я пробовал по разному записывать. в (Lua TextBox) но при активации выдавало ошибку, работает только когда записано именно так, write Integer если записать так write Byte или write Word то скрипт при активации, выдают ошибку. у меня в игре значения 2 Байта а write Integer записывает как 4 Байта точней если хочешь записать число 6 записывает как 65740 если менять значения напрямую в таблице, то всё нормально. но когда записываешь через (Lua TextBox) то записывается не правильно. Показать контент TextBox = component_findComponentByName(CETrainer,'CEEdit1') GameName = 'Fallout4.exe' if(getProcessIDFromProcessName(GameName) == nil) then end Value = control_getCaption(TextBox) writeInteger('[Money88]+20',Value) КАК МЕНЕ ЗДЕСЬ ЗАПИСАТЬ в место Integer, 2 байта или 1 Байт я пробовал по разному записывать. в (Lua TextBox) но при активации выдавало ошибку, работает только когда записано именно так, write Integer если записать так write Byte или write Word то скрипт при активации, выдают ошибку. у меня в игре значения 2 Байта а write Integer записывает как 4 Байта точней если хочешь записать число 6 записывает как 65740 если менять значения напрямую в таблице, то всё нормально. но когда записываешь через (Lua TextBox) то записывается не правильно. end Изменено 11 сентября, 2016 пользователем Baracuda Ссылка на комментарий Поделиться на другие сайты Поделиться
Гость Опубликовано 12 сентября, 2016 Поделиться Опубликовано 12 сентября, 2016 Проще всего сделать можно так: 1 Добавить адрес в СЕ таблицу 2 Дать ему имя, например "TWOBYTESinTable" 3 Дать ему тип - 2 байта 2 Написать Lua код Показать контент al = getAddressList() TWOBYTESinTable = al.getMemoryRecordByDescription("TWOBYTESinTable") function CEButton1Click(sender) if TWOBYTESinTable.Value~="??" then if UDF1.CEEdit1.Text~="" then TWOBYTESinTable.Value=UDF1.CEEdit1.Text end end end function CEEdit1KeyPress(sender, key) -- // Возможность вписать в editbox только цифры + BACKSPACE для стирания local keynr=string.byte(key) if (keynr~=8) and ((keynr<48) or (keynr>57)) then key=nil end return key end Ссылка на комментарий Поделиться на другие сайты Поделиться
Submarina Опубликовано 14 сентября, 2016 Автор Поделиться Опубликовано 14 сентября, 2016 (изменено) Привет AntonVit объясни пожалуйста, как им пользоваться, я в Lua почти не шарю. вот это мене понятно. 1 Добавить адрес в СЕ таблицу --Это понятно 2 Дать ему имя, например "TWOBYTESinTable" --Это понятно 3 Дать ему тип - 2 байта --Это понятно После в ставить твой код в Lua А ДАЛЬШЕ ЧТО ЧТО ТО ЕЩЁ НУЖНО ДЕЛАТЬ Изменено 14 сентября, 2016 пользователем Baracuda Ссылка на комментарий Поделиться на другие сайты Поделиться
Гость Опубликовано 14 сентября, 2016 Поделиться Опубликовано 14 сентября, 2016 Привет. 1 Создать на форме кнопку и эдитбокс 2 К кнопке привязать первую функцию, на Click. 3 К боксу привязать вторую, на Keypress Ссылка на комментарий Поделиться на другие сайты Поделиться
horror113 Опубликовано 17 сентября, 2016 Поделиться Опубликовано 17 сентября, 2016 у меня все получатся через writeString папробуй 1 Ссылка на комментарий Поделиться на другие сайты Поделиться
Submarina Опубликовано 17 сентября, 2016 Автор Поделиться Опубликовано 17 сентября, 2016 AntonVit привет ещё раз, пожалуйста покажи на примере, как это должно выглядеть правильно, я что-то сделал не так, у меня при нажатии ошибка. Ссылка на комментарий Поделиться на другие сайты Поделиться
keng Опубликовано 17 сентября, 2016 Поделиться Опубликовано 17 сентября, 2016 В 17.09.2016 в 21:42, Baracuda сказал: AntonVit привет ещё раз, пожалуйста покажи на примере, как это должно выглядеть правильно, я что-то сделал не так, у меня при нажатии ошибка. Показать Показывай, пожалуйста, что ты делал и как, а так же - что за ошибка. Ссылка на комментарий Поделиться на другие сайты Поделиться
Submarina Опубликовано 17 сентября, 2016 Автор Поделиться Опубликовано 17 сентября, 2016 (изменено) вот назвал адрес TWOBYTESinTable в таблице, создал кнопку на CETRainer, создал поле для ввода, и при воде цифры для изменения, нажимаю кнопку а там ошибка. Показать контент al = getAddressList() TWOBYTESinTable = al.getMemoryRecordByDescription("TWOBYTESinTable") function CEButton2Click(sender) if TWOBYTESinTable.Value~="TWOBYTESinTable" then if UDF1.CEEdit2.Text~="" then TWOBYTESinTable.Value=UDF1.CEEdit2.Text end end end function CEEdit2KeyPress(sender, key) -- // Возможность вписать в editbox только цифры + BACKSPACE для стирания local keynr=string.byte(key) if (keynr~=8) and ((keynr<48) or (keynr>57)) then key=nil end return key end Ошибка:attempt to call a nil value Ошибка:[string "function CEButton1Click(sender) ..."]:18: attempt to index a nil value (global 'UDF1') Ошибка:[string "function CEButton1Click(sender) ..."]:18: attempt to index a nil value (global 'UDF1') что не так сделал. Мене было бы проще, если бы мене с этой проблемой помогли, если это возможно. Показать контент TextBox = component_findComponentByName(CETrainer,'CEEdit1') GameName = 'Fallout4.exe' if(getProcessIDFromProcessName(GameName) == nil) then end Value = control_getCaption(TextBox) writeInteger('[Money88]+20',Value) КАК МЕНЕ ЗДЕСЬ ЗАПИСАТЬ в место Integer, 2 байта или 1 Байт я пробовал по разному записывать. в (Lua TextBox) но при активации выдавало ошибку, работает только когда записано именно так, write Integer если записать так write Byte или write Word то скрипт при активации, выдают ошибку. у меня в игре значения 2 Байта а write Integer записывает как 4 Байта точней если хочешь записать число 6 записывает как 65740 если менять значения напрямую в таблице, то всё нормально. но когда записываешь через (Lua TextBox) то записывается не правильно. end Изменено 17 сентября, 2016 пользователем Baracuda Ссылка на комментарий Поделиться на другие сайты Поделиться
Dino Опубликовано 17 сентября, 2016 Поделиться Опубликовано 17 сентября, 2016 control_getCaption строку же возвращает Ссылка на комментарий Поделиться на другие сайты Поделиться
Submarina Опубликовано 18 сентября, 2016 Автор Поделиться Опубликовано 18 сентября, 2016 (изменено) http://rgho.st/79kwNkgnh что не так, я сделал. Ориентировался по этому Lua скрипту Показать контент al = getAddressList() topspeed = al.getMemoryRecordByDescription("topspeed") function checkKeys(timer) if AntonVitalievich.CEToggleBox1.Caption=="Деактивировать" then if topspeed.Value~="??" then topspeed.Value="100" end end end t=createTimer(nil) timer_setInterval(t, 100) timer_onTimer(t, checkKeys) timer_setEnabled(t, true) Изменено 18 сентября, 2016 пользователем Baracuda Ссылка на комментарий Поделиться на другие сайты Поделиться
Гость Опубликовано 18 сентября, 2016 Поделиться Опубликовано 18 сентября, 2016 1. Не помню чтобы я делал такой скрипт. . 2. Неверно Показать контент al = getAddressList() TWOBYTESinTable = al.getMemoryRecordByDescription("TWOBYTESinTable") function CEButton1Click(sender) -----//////Вот первая кнопка if TWOBYTESinTable.Value~="??" then if UDF1.CEEdit1.Text~="" then TWOBYTESinTable.Value=UDF1.CEEdit1.Text end end end function CEEdit1Click(sender) ----////Вот в тороя кнопка function CEEdit1KeyPress(sender, key) -- // Возможность вписать в editbox только цифры + BACKSPACE для стирания local keynr=string.byte(key) if (keynr~=8) and ((keynr<48) or (keynr>57)) then key=nil end return key end end Верно Показать контент al = getAddressList() TWOBYTESinTable = al.getMemoryRecordByDescription("TWOBYTESinTable") function CEButton1Click(sender) -----//////Вот первая кнопка if TWOBYTESinTable.Value~="??" then if UDF1.CEEdit1.Text~="" then TWOBYTESinTable.Value=UDF1.CEEdit1.Text end end end function CEEdit1KeyPress(sender, key) -- // Возможность вписать в editbox только цифры + BACKSPACE для стирания local keynr=string.byte(key) if (keynr~=8) and ((keynr<48) or (keynr>57)) then key=nil end return key end end 3. Форму нужно назвать - UDF1 (либо в скрипте изменить UDF1 на CETrainer) 4. Эдитбокс должен работать посредствам - Editbox / event / onKeyPress / CEEdit1KeyPress При таких обстоятельствах работа трейнера будет производится по следующей схеме. 1 В эдитбокс вписывается значение 2 Нажимается кнопка один раз (значение копируется из эдитбокса в TWOBYTESinTable) Ссылка на комментарий Поделиться на другие сайты Поделиться
Submarina Опубликовано 18 сентября, 2016 Автор Поделиться Опубликовано 18 сентября, 2016 (изменено) Не помню чтобы я делал такой скрипт. Этот скрипт мене Garik66 делал AntonVit Спасибо тебе ещё раз. Изменено 18 сентября, 2016 пользователем Baracuda Ссылка на комментарий Поделиться на другие сайты Поделиться
Submarina Опубликовано 18 сентября, 2016 Автор Поделиться Опубликовано 18 сентября, 2016 (изменено) у меня к тебе ещё вопрос, а можно сделать чтобы не нужно было назвать форму 3. Форму нужно назвать - UDF1 (либо в скрипте изменить UDF1 на CETrainer) а работало по названию игры, вот например как я выложил в самом верху. Lua скрипт GameName = 'Fallout4.exe' Изменено 18 сентября, 2016 пользователем Baracuda Ссылка на комментарий Поделиться на другие сайты Поделиться
Garik66 Опубликовано 18 сентября, 2016 Поделиться Опубликовано 18 сентября, 2016 В 18.09.2016 в 08:21, Baracuda сказал: не нужно было назвать форму Показать Форму по любому придётся назвать, иначе не найдёт где у тебя находится CEEdit1. Ссылка на комментарий Поделиться на другие сайты Поделиться
Garik66 Опубликовано 18 сентября, 2016 Поделиться Опубликовано 18 сентября, 2016 В 18.09.2016 в 08:21, Baracuda сказал: от например как я выложил в самом верху. Lua скрипт Показать У тебя в верхнем скрипте форма называется - CETrainer. Ссылка на комментарий Поделиться на другие сайты Поделиться
Submarina Опубликовано 18 сентября, 2016 Автор Поделиться Опубликовано 18 сентября, 2016 (изменено) В том та и дело что нет, там по названию игры. Изменено 18 сентября, 2016 пользователем Baracuda Ссылка на комментарий Поделиться на другие сайты Поделиться
Garik66 Опубликовано 18 сентября, 2016 Поделиться Опубликовано 18 сентября, 2016 В 18.09.2016 в 09:10, Baracuda сказал: в том та и дело что нет Показать ??? Ссылка на комментарий Поделиться на другие сайты Поделиться
Garik66 Опубликовано 18 сентября, 2016 Поделиться Опубликовано 18 сентября, 2016 TextBox = component_findComponentByName(CETrainer,'CEEdit1') -- CETrainer - это и есть название твоей формы. Ссылка на комментарий Поделиться на другие сайты Поделиться
Submarina Опубликовано 18 сентября, 2016 Автор Поделиться Опубликовано 18 сентября, 2016 (изменено) я имею веду, он говорит назвать саму форму CETrainer, я так понял. Вот без названия скрипт не работает GameName = 'Fallout4.exe' Изменено 18 сентября, 2016 пользователем Baracuda Ссылка на комментарий Поделиться на другие сайты Поделиться
Garik66 Опубликовано 18 сентября, 2016 Поделиться Опубликовано 18 сентября, 2016 (изменено) В 18.09.2016 в 09:20, Baracuda сказал: я имею веду, он говорит назвать саму форму CETrainer, я так понял. Показать Да назови её как хочешь. Главное что и кнопка и Edit лежат на этой форме. Назови Baracuda. И тогда строчки в скрипте AntonVit будут выглядеть так: if Baracuda.CEEdit1.Text~="" then TWOBYTESinTable.Value=Baracuda.CEEdit1.Text Изменено 18 сентября, 2016 пользователем Garik66 Ссылка на комментарий Поделиться на другие сайты Поделиться
Рекомендуемые сообщения