Я пытаюсь сделать функцию слайда изображения в режиме карусели в центре в Cheat Engine Lua. Мой код:
if f then f.destroy() end
if t then t.destroy() end
f = createForm()
f.setSize(600,400)
f.Position = 'poScreenCenter'
f.BorderStyle = 'bsSingle'
imL = createPanel(f)
imL.setSize(100,100)
imL.setPosition(50,150)
imL.Font.Size = 48
imL.Caption = '1'
imL.Color = 0xff00
imC = createPanel(f)
imC.setSize(200,200)
imC.setPosition(200,100)
imC.Font.Size = 48
imC.Caption = '2'
imC.Color = 0x00ff
imR = createPanel(f)
imR.setSize(100,100)
imR.setPosition(450,150)
imR.Font.Size = 48
imR.Caption = '3'
imR.Color = 0xffff
local a = 10
local b = 5
local c = 15
local d = 25
local e = 40
local img1 = imL
local img2 = imC
local img3 = imR
function roundUp()
t.Enabled = true
img1.Height = img1.Height + a
img1.Width = img1.Width + a
img1.Top = img1.Top - b
img1.Left = img1.Left + c
img1.bringToFront()
img2.Height = img2.Height - a
img2.Width = img2.Width - a
img2.Top = img2.Top + b
img2.Left = img2.Left + d
img3.Left = img3.Left - e
img3.sendToBack()
if img1.Left == 200 then -- round 1
t.Enabled = false
img2 = imR
img3 = imL
img1 = imC
end
if img3.Left == 200 then -- round 2
t.Enabled = false
img1 = imR
img2 = imL
img3 = imC
end
end
t = createTimer()
t.Interval = 50
t.Enabled = false
t.OnTimer = roundUp
f.OnClick = roundUp
Пока что код работает только на два хода. Мои вопросы:
- Каким образом правильный logi c для каждой панели в соответствии с их позициями в событии таймера?
- Я планирую использовать массив таблиц для хранения каждой панели или изображения (более 3 панели). Как сделать слайд изображения в центральном режиме карусели с этими панелями из таблицы массива Lua?