add game&rawdata

This commit is contained in:
Vasily Petrov 2026-06-17 23:06:51 +03:00
parent 0133cd976c
commit 49b34b5546
45731 changed files with 709831 additions and 0 deletions

View file

@ -0,0 +1,199 @@
-- File: UI_NUMPAD.SCRIPT
-- Description: Numpad for password input
-- Created: 23.02.2005
-- Author: Serge Vynnychenko
--
-- Copyright 2004 GSC Game World
function main()
super_dlg = ui_numpad.numpad()
super_dlg:ShowDialog(true)
end
class "numpad" (CUIScriptWnd)
function numpad:__init(owner) super()
self.owner = owner
self:InitControls()
self:InitCallBacks()
end
function numpad:__finalize()
end
function numpad:InitControls()
self:SetWndPos (vector2():set(342,199))
self:SetWndSize (vector2():set(339,369))
local xml = CScriptXmlInit()
xml:ParseFile("ui_numpad_wnd.xml")
xml:InitStatic("background", self)
self.st = xml:InitStatic("edit_box", self)
self.st:SetWindowName("edit_window")
self:Register(xml:Init3tButton("btn_0", self),"btn_0")
self:Register(xml:Init3tButton("btn_1", self),"btn_1")
self:Register(xml:Init3tButton("btn_2", self),"btn_2")
self:Register(xml:Init3tButton("btn_3", self),"btn_3")
self:Register(xml:Init3tButton("btn_4", self),"btn_4")
self:Register(xml:Init3tButton("btn_5", self),"btn_5")
self:Register(xml:Init3tButton("btn_6", self),"btn_6")
self:Register(xml:Init3tButton("btn_7", self),"btn_7")
self:Register(xml:Init3tButton("btn_8", self),"btn_8")
self:Register(xml:Init3tButton("btn_9", self),"btn_9")
self:Register(xml:Init3tButton("btn_c", self), "btn_c")
self:Register(xml:Init3tButton("btn_backspase", self), "btn_backspase")
self:Register(xml:Init3tButton("btn_enter", self), "btn_enter")
self:Register(xml:Init3tButton("btn_cancel", self), "btn_cancel")
end
function numpad:InitCallBacks()
-- new game
self:AddCallback("btn_enter", ui_events.BUTTON_CLICKED, self.OnButton_OK_clicked, self)
self:AddCallback("btn_cancel", ui_events.BUTTON_CLICKED, self.OnButton_CANCEL_clicked, self)
self:AddCallback("btn_0", ui_events.BUTTON_CLICKED, self.OnButton_0_clicked, self)
self:AddCallback("btn_1", ui_events.BUTTON_CLICKED, self.OnButton_1_clicked, self)
self:AddCallback("btn_2", ui_events.BUTTON_CLICKED, self.OnButton_2_clicked, self)
self:AddCallback("btn_3", ui_events.BUTTON_CLICKED, self.OnButton_3_clicked, self)
self:AddCallback("btn_4", ui_events.BUTTON_CLICKED, self.OnButton_4_clicked, self)
self:AddCallback("btn_5", ui_events.BUTTON_CLICKED, self.OnButton_5_clicked, self)
self:AddCallback("btn_6", ui_events.BUTTON_CLICKED, self.OnButton_6_clicked, self)
self:AddCallback("btn_7", ui_events.BUTTON_CLICKED, self.OnButton_7_clicked, self)
self:AddCallback("btn_8", ui_events.BUTTON_CLICKED, self.OnButton_8_clicked, self)
self:AddCallback("btn_9", ui_events.BUTTON_CLICKED, self.OnButton_9_clicked, self)
self:AddCallback("btn_c", ui_events.BUTTON_CLICKED, self.OnButton_c_clicked, self)
self:AddCallback("btn_backspase", ui_events.BUTTON_CLICKED, self.OnButton_backspace_clicked, self)
end
function numpad:AddNumber(number)
local text = self.st:TextControl():GetText()
if text == nil then
text = "" .. number
else
if (string.len(text) > 12) then
return
end
text = text .. number
end
self.st:TextControl():SetText(text)
end
function numpad:OnButton_backspace_clicked()
local text = self.st:TextControl():GetText()
if text == nil then
return
end
local b = 1
local e = string.len(text) - 1
text = string.sub(text, b, e)
self.st:TextControl():SetText(text)
end
function numpad:OnButton_c_clicked()
self.st:TextControl():SetText("")
end
function numpad:OnButton_0_clicked()
self:AddNumber(0)
end
function numpad:OnButton_1_clicked()
self:AddNumber(1)
end
function numpad:OnButton_2_clicked()
self:AddNumber(2)
end
function numpad:OnButton_3_clicked()
self:AddNumber(3)
end
function numpad:OnButton_4_clicked()
self:AddNumber(4)
end
function numpad:OnButton_5_clicked()
self:AddNumber(5)
end
function numpad:OnButton_6_clicked()
self:AddNumber(6)
end
function numpad:OnButton_7_clicked()
self:AddNumber(7)
end
function numpad:OnButton_8_clicked()
self:AddNumber(8)
end
function numpad:OnButton_9_clicked()
self:AddNumber(9)
end
function numpad:OnButton_CANCEL_clicked()
self.owner:OnNumberReceive("")
self:HideDialog()
end
function numpad:OnButton_OK_clicked()
self:HideDialog()
local text = self.st:TextControl():GetText()
self.owner:OnNumberReceive(text)
end
function numpad:OnKeyboard(dik, keyboard_action) --virtual function
CUIScriptWnd.OnKeyboard(self,dik,keyboard_action)
if keyboard_action == ui_events.WINDOW_KEY_PRESSED then
if dik == DIK_keys.DIK_ESCAPE then
self:HideDialog()
end
if dik == DIK_keys.DIK_0 or dik == DIK_keys.DIK_NUMPAD0 then
self:AddNumber(0)
elseif dik == DIK_keys.DIK_1 or dik == DIK_keys.DIK_NUMPAD1 then
self:AddNumber(1)
elseif dik == DIK_keys.DIK_2 or dik == DIK_keys.DIK_NUMPAD2 then
self:AddNumber(2)
elseif dik == DIK_keys.DIK_3 or dik == DIK_keys.DIK_NUMPAD3 then
self:AddNumber(3)
elseif dik == DIK_keys.DIK_4 or dik == DIK_keys.DIK_NUMPAD4 then
self:AddNumber(4)
elseif dik == DIK_keys.DIK_5 or dik == DIK_keys.DIK_NUMPAD5 then
self:AddNumber(5)
elseif dik == DIK_keys.DIK_6 or dik == DIK_keys.DIK_NUMPAD6 then
self:AddNumber(6)
elseif dik == DIK_keys.DIK_7 or dik == DIK_keys.DIK_NUMPAD7 then
self:AddNumber(7)
elseif dik == DIK_keys.DIK_8 or dik == DIK_keys.DIK_NUMPAD8 then
self:AddNumber(8)
elseif dik == DIK_keys.DIK_9 or dik == DIK_keys.DIK_NUMPAD9 then
self:AddNumber(9)
elseif dik == DIK_keys.DIK_BACK then
self:OnButton_backspace_clicked()
elseif dik == DIK_keys.DIK_RETURN or dik == DIK_keys.DIK_NUMPADENTER then
self:OnButton_OK_clicked()
elseif dik == DIK_keys.DIK_DELETE or dik == DIK_keys.DIK_NUMPADCOMMA then
self:OnButton_c_clicked()
end
end
return true
end