Перейти к содержанию
Medved

[CE] CEComboBox1 Select

Рекомендуемые сообщения

Доброго времени, есть такой код (он отвечает за погоду в игре)
 

function Name_CEComboBox1Select(sender)

if item == Current then writeInteger ('[game.exe+546]+8',0)
end

if item == Bright then writeInteger ('[game.exe+546]+8',1)
end

if item == Raining then writeInteger ('[game.exe+546]+8',2)
end
end

Проблема заключается в том что какое я бы значение не выбирал в "выпадающем списке" он ставит всегда последнее, так вот можете ли подсказать в чём проблема 
 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
1 час назад, Medved сказал:

Проблема заключается в том что какое я бы значение не выбирал в "выпадающем списке" он ставит всегда последнее, так вот можете ли подсказать в чём проблема 

структура кода верна, но не понятно что это за "item" и почему ты выполняешь такое странное сравнение. Почитай вот это, наверное: https://wiki.cheatengine.org/index.php?title=Lua:Class:ComboBox

И в дальнейшем описывай всё более подробно😠

Изменено пользователем youneuoy

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
22 минуты назад, youneuoy сказал:

структура кода верна, но не понятно что это за "item" и почему ты выполняешь такое странное сравнение. Почитай вот это, наверное: https://wiki.cheatengine.org/index.php?title=Lua:Class:ComboBox

Сравнение делаю к выбранному пункту в списке  

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
7 часов назад, Medved сказал:

Сравнение делаю к выбранному пункту в списке 

Откуда у тебя взялась переменная item? По идее, тебе нужно sender привести к типу ComboBox, и у него взять поле SelectedIndex (вроде как). И можно даже без проверок сразу писать этот индекс в нужную тебе память, потому что значения будут совпадать (если ты их в правильном порядке в комбобокс добавишь, разумеется).

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
В 04.09.2021 в 12:55, Xipho сказал:

Откуда у тебя взялась переменная item? По идее, тебе нужно sender привести к типу ComboBox, и у него взять поле SelectedIndex (вроде как). И можно даже без проверок сразу писать этот индекс в нужную тебе память, потому что значения будут совпадать (если ты их в правильном порядке в комбобокс добавишь, разумеется).

Сделал так
 

function Name_CEComboBox1Select(sender)
Name_CEComboBox1.onChange = (writeInteger ('[game.exe+546]+8', Name_CEComboBox1.ItemIndex == 0 ))

Name_CEComboBox1.onChange = (writeInteger ('[game.exe+546]+8', Name_CEComboBox1.ItemIndex == 1 ))

Name_CEComboBox1.onChange = (writeInteger ('[game.exe+546]+8', Name_CEComboBox1.ItemIndex == 2 ))
end

 

он начал менять постоянно на 0 и без разницы что я выбираю в списке  

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Попробуй так

Спойлер

local processName = "game.exe"
local address = '[game.exe+546]+8'

local table_keys = {}
table_keys[0] = 0
table_keys[1] = 1
table_keys[2] = 2

local form = createForm()
local example_box = createComboBox(form)

example_box.items.add("Current")
example_box.items.add("Bright")
example_box.items.add("Raining")

example_box.onChange = function(sender) 
	if getOpenedProcessID() ~= 0 then
		print('write '..table_keys[sender.ItemIndex]..' to '..address)
		writeInteger (address, table_keys[sender.ItemIndex])
	end
end

openProcess(processName)

 

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
12 часов назад, Medved сказал:

он начал менять постоянно на 0 и без разницы что я выбираю в списке  

Потому что ты зачем-то сравнение записываешь в своем коде, а тебе нужно сам индекс писать.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

  • Предпросмотр

×
×
  • Создать...

Важная информация

Находясь на нашем сайте, Вы автоматически соглашаетесь соблюдать наши Условия использования.