iw6-lui/lui/common_menus/whatcanisay.dec.lua
2024-09-12 17:25:45 +02:00

373 lines
12 KiB
Lua

local f0_local0 = module
local f0_local1, f0_local2 = ...
f0_local0( f0_local1, package.seeall )
CoD.PrintModuleLoad( _NAME )
f0_local0 = function ( f1_arg0, f1_arg1 )
Kinect.CloseWhatCanISayMenu( f1_arg0, f1_arg1 )
end
function TitleFactory( f2_arg0, f2_arg1 )
return {
type = "UIText",
id = "text_whatcanisay_" .. tostring( f2_arg0 ),
properties = {
text = Engine.Localize( f2_arg1 )
},
states = {
default = {
height = CoD.TextSettings.ExtraBigFont.Height,
font = CoD.TextSettings.ExtraBigFont.Font,
alignment = LUI.Alignment.Left,
width = 600,
r = 1,
g = 1,
b = 1
}
}
}
end
function BlankFactory( f3_arg0 )
return {
type = "UIText",
id = "text_whatcanisay_" .. tostring( f3_arg0 ),
properties = {
text = ""
},
states = {
default = {
height = 20,
font = CoD.TextSettings.ExtraBigFont.Font,
alignment = LUI.Alignment.Left,
width = 600,
r = 1,
g = 1,
b = 1
}
}
}
end
function TextFactory( f4_arg0, f4_arg1, f4_arg2 )
local f4_local0
if f4_arg2 then
f4_local0 = 200
if not f4_local0 then
else
return {
type = "UIText",
id = "text_whatcanisay_" .. tostring( f4_arg0 ),
properties = {
text = Engine.Localize( f4_arg1 )
},
states = {
default = {
height = CoD.TextSettings.NormalFont.Height,
font = CoD.TextSettings.NormalFont.Font,
alignment = LUI.Alignment.Left,
width = f4_local0
}
}
}
end
end
f4_local0 = 370
end
function BigTextFactory( f5_arg0, f5_arg1 )
return {
type = "UIText",
id = "text_whatcanisay_" .. tostring( f5_arg0 ),
properties = {
text = Engine.Localize( f5_arg1 )
},
states = {
default = {
height = CoD.TextSettings.BigFont.Height,
font = CoD.TextSettings.BigFont.Font,
alignment = LUI.Alignment.Left,
width = 600
}
}
}
end
function DescFactory( f6_arg0, f6_arg1 )
return {
type = "UIText",
id = "text_whatcanisay_" .. tostring( f6_arg0 ),
properties = {
text = Engine.Localize( f6_arg1 )
},
states = {
default = {
height = CoD.TextSettings.NormalFont.Height,
font = CoD.TextSettings.NormalFont.Font,
alignment = LUI.Alignment.Left,
width = 600,
red = 0.75,
green = 0.75,
blue = 0.75
}
}
}
end
function GrammarFeeder( f7_arg0 )
local f7_local0 = {}
if Engine.InFrontend() then
local f7_local1 = false
if Kinect.menu_under_what_can_i_say then
if string.lower( Kinect.menu_under_what_can_i_say ) == string.lower( "main_lockout" ) then
f7_local1 = true
elseif string.lower( Kinect.menu_under_what_can_i_say ) == string.lower( "boot_brightness" ) then
f7_local1 = true
elseif string.lower( Kinect.menu_under_what_can_i_say ) == string.lower( "boot_screen_margins" ) then
f7_local1 = true
elseif string.lower( Kinect.menu_under_what_can_i_say ) == string.lower( "no_profile_warning_popmenu" ) then
f7_local1 = true
end
end
if f7_local1 == true then
elseif Kinect.IsKinectGuideUp() then
f7_local0[#f7_local0 + 1] = TitleFactory( #f7_local0, "@SPEECH_SAY_GHOSTS_AND_ONE_OF_THE_FOLLOWING" )
f7_local0[#f7_local0 + 1] = BlankFactory( #f7_local0 )
f7_local0[#f7_local0 + 1] = BlankFactory( #f7_local0 )
f7_local0[#f7_local0 + 1] = BlankFactory( #f7_local0 )
f7_local0[#f7_local0 + 1] = TitleFactory( #f7_local0, "@SPEECH_KINECT_GUIDE_COMMANDS_CAPS" )
f7_local0[#f7_local0 + 1] = BlankFactory( #f7_local0 )
f7_local0[#f7_local0 + 1] = TextFactory( #f7_local0, "@SPEECH_SHORTCUT_1_TO_9", true )
f7_local0[#f7_local0 + 1] = DescFactory( #f7_local0, "@SPEECH_SHORTCUT_1_TO_9_COMMAND" )
f7_local0[#f7_local0 + 1] = TextFactory( #f7_local0, "@SPEECH_CANCEL_BACK", true )
f7_local0[#f7_local0 + 1] = DescFactory( #f7_local0, "@SPEECH_CANCEL_BACK_COMMAND" )
else
f7_local0[#f7_local0 + 1] = TitleFactory( #f7_local0, "@SPEECH_SAY_GHOSTS_AND_ONE_OF_THE_FOLLOWING" )
f7_local0[#f7_local0 + 1] = BlankFactory( #f7_local0 )
f7_local0[#f7_local0 + 1] = BlankFactory( #f7_local0 )
f7_local0[#f7_local0 + 1] = BlankFactory( #f7_local0 )
f7_local0[#f7_local0 + 1] = TitleFactory( #f7_local0, "@SPEECH_GENERAL_COMMANDS_CAPS" )
f7_local0[#f7_local0 + 1] = BlankFactory( #f7_local0 )
f7_local0[#f7_local0 + 1] = TextFactory( #f7_local0, "@SPEECH_SHORTCUTS_1", true )
f7_local0[#f7_local0 + 1] = DescFactory( #f7_local0, "@SPEECH_SHORTCUTS_COMMAND" )
local f7_local2 = false
if Kinect.menu_under_what_can_i_say then
if string.lower( Kinect.menu_under_what_can_i_say ) == string.lower( "menu_xboxlive_lobby" ) then
f7_local2 = true
elseif string.lower( Kinect.menu_under_what_can_i_say ) == string.lower( "menu_xboxlive_privatelobby" ) then
f7_local2 = true
elseif string.lower( Kinect.menu_under_what_can_i_say ) == string.lower( "menu_xboxlive" ) then
f7_local2 = true
end
end
if f7_local2 == true then
f7_local0[#f7_local0 + 1] = BlankFactory( #f7_local0 )
f7_local0[#f7_local0 + 1] = BlankFactory( #f7_local0 )
f7_local0[#f7_local0 + 1] = TitleFactory( #f7_local0, "@SPEECH_LOBBY_COMMANDS_CAPS" )
f7_local0[#f7_local0 + 1] = BlankFactory( #f7_local0 )
if Kinect.DISABLE_CERTAIN_LOBBY_MUTE_AND_COMPARE_OPERATIONS == true then
f7_local0[#f7_local0 + 1] = TextFactory( #f7_local0, "@SPEECH_MUTE_ALL_UNMUTE_ALL", true )
f7_local0[#f7_local0 + 1] = DescFactory( #f7_local0, "@SPEECH_MUTE_ALL_UNMUTE_ALL_COMMAND" )
else
f7_local0[#f7_local0 + 1] = TextFactory( #f7_local0, "@SPEECH_MUTE_UNMUTE", true )
f7_local0[#f7_local0 + 1] = DescFactory( #f7_local0, "@SPEECH_MUTE_UNMUTE_COMMAND" )
f7_local0[#f7_local0 + 1] = TextFactory( #f7_local0, "@SPEECH_MUTE_ALL_UNMUTE_ALL", true )
f7_local0[#f7_local0 + 1] = DescFactory( #f7_local0, "@SPEECH_MUTE_ALL_UNMUTE_ALL_COMMAND" )
f7_local0[#f7_local0 + 1] = TextFactory( #f7_local0, "@SPEECH_MUTE_NON_FRIENDS", true )
f7_local0[#f7_local0 + 1] = DescFactory( #f7_local0, "@SPEECH_MUTE_NON_FRIENDS_COMMAND" )
f7_local0[#f7_local0 + 1] = TextFactory( #f7_local0, "@SPEECH_MUTE_NON_PARTY", true )
f7_local0[#f7_local0 + 1] = DescFactory( #f7_local0, "@SPEECH_MUTE_NON_PARTY_COMMAND" )
f7_local0[#f7_local0 + 1] = TextFactory( #f7_local0, "@SPEECH_COMPARE", true )
f7_local0[#f7_local0 + 1] = DescFactory( #f7_local0, "@SPEECH_COMPARE_COMMAND" )
end
end
end
elseif not Engine.IsMultiplayer() then
f7_local0[#f7_local0 + 1] = TitleFactory( #f7_local0, "@SPEECH_GENERAL_COMMANDS_CAPS" )
f7_local0[#f7_local0 + 1] = BlankFactory( #f7_local0 )
f7_local0[#f7_local0 + 1] = TextFactory( #f7_local0, "@SPEECH_GHOST_PAUSE_GHOST_PLAY", true )
f7_local0[#f7_local0 + 1] = DescFactory( #f7_local0, "@SPEECH_PAUSE_PLAY_COMMAND" )
local f7_local1 = Engine.GetDvarString( "mapname" )
if f7_local1 == "enemyhq" or f7_local1 == "nml" then
f7_local0[#f7_local0 + 1] = BlankFactory( #f7_local0 )
f7_local0[#f7_local0 + 1] = BlankFactory( #f7_local0 )
f7_local0[#f7_local0 + 1] = TextFactory( #f7_local0, "@SPEECH_ATTACK_1", true )
f7_local0[#f7_local0 + 1] = DescFactory( #f7_local0, "@SPEECH_ATTACK_COMMAND" )
f7_local0[#f7_local0 + 1] = TextFactory( #f7_local0, "@SPEECH_CANCEL_1", true )
f7_local0[#f7_local0 + 1] = DescFactory( #f7_local0, "@SPEECH_CANCEL_COMMAND" )
f7_local0[#f7_local0 + 1] = TextFactory( #f7_local0, "@SPEECH_BARK_1", true )
f7_local0[#f7_local0 + 1] = DescFactory( #f7_local0, "@SPEECH_BARK_COMMAND" )
f7_local0[#f7_local0 + 1] = BlankFactory( #f7_local0 )
f7_local0[#f7_local0 + 1] = BlankFactory( #f7_local0 )
f7_local0[#f7_local0 + 1] = TitleFactory( #f7_local0, "@SPEECH_SPECIFIC_COMMMAND_CAPS" )
f7_local0[#f7_local0 + 1] = BlankFactory( #f7_local0 )
f7_local0[#f7_local0 + 1] = DescFactory( #f7_local0, "@SPEECH_LOCATION_COMMAND" )
f7_local0[#f7_local0 + 1] = BlankFactory( #f7_local0 )
f7_local0[#f7_local0 + 1] = TextFactory( #f7_local0, "@SPEECH_DOOR" )
f7_local0[#f7_local0 + 1] = TextFactory( #f7_local0, "@SPEECH_WINDOW" )
if f7_local1 == "enemyhq" then
f7_local0[#f7_local0 + 1] = TextFactory( #f7_local0, "@SPEECH_COUNTER" )
f7_local0[#f7_local0 + 1] = TextFactory( #f7_local0, "@SPEECH_STAIRS" )
f7_local0[#f7_local0 + 1] = TextFactory( #f7_local0, "@SPEECH_STATUE" )
f7_local0[#f7_local0 + 1] = TextFactory( #f7_local0, "@SPEECH_WALKWAY" )
elseif f7_local1 == "nml" then
f7_local0[#f7_local0 + 1] = TextFactory( #f7_local0, "@SPEECH_BALCONY" )
f7_local0[#f7_local0 + 1] = TextFactory( #f7_local0, "@SPEECH_BRIDGE" )
f7_local0[#f7_local0 + 1] = TextFactory( #f7_local0, "@SPEECH_BUILDING" )
f7_local0[#f7_local0 + 1] = TextFactory( #f7_local0, "@SPEECH_CAR" )
f7_local0[#f7_local0 + 1] = TextFactory( #f7_local0, "@SPEECH_GARAGE" )
f7_local0[#f7_local0 + 1] = TextFactory( #f7_local0, "@SPEECH_TRAILER" )
end
end
end
if #f7_local0 == 0 then
if Engine.InFrontend() then
f7_local0[#f7_local0 + 1] = BigTextFactory( #f7_local0, "@SPEECH_NO_VOICE_COMMANDS_FRONT_END" )
else
f7_local0[#f7_local0 + 1] = BigTextFactory( #f7_local0, "@SPEECH_NO_VOICE_COMMANDS_IN_GAME" )
end
end
return f7_local0
end
function OptionsMainCreate( f8_arg0, f8_arg1 )
f8_arg0:processEvent( LUI.ButtonHelperText.CommonEvents.addBackButton )
end
function what_can_i_say_vlist()
return {
type = "UIGrid",
states = {
default = {
leftAnchor = true,
rightAnchor = true,
topAnchor = true,
bottomAnchor = true,
left = 120,
right = -120,
top = 110,
bottom = -60
}
},
properties = {
elementsPerRow = 2,
hSpacing = 10,
rowHeight = 33,
hAlign = LUI.Alignment.Left,
vAlign = LUI.Alignment.Top
},
childrenFeeder = GrammarFeeder
}
end
function WhatCanISayHandleSpeechActionBack( f10_arg0, f10_arg1, f10_arg2 )
if Kinect.IsWhatCanISayMenuUp() then
f0_local0( f10_arg0, f10_arg1 )
LUI.Speech.PerformingSpeechAction()
end
end
if Engine.HasSpeechFeature() then
WhatCanISaySpeechGrammarHandlersArray = {
{
action = "back",
confidence = LUI.Speech.defaultConfidence,
handler = WhatCanISayHandleSpeechActionBack,
extradata = nil
},
{
action = "cancel",
confidence = LUI.Speech.defaultConfidence,
handler = WhatCanISayHandleSpeechActionBack,
extradata = nil
}
}
else
WhatCanISaySpeechGrammarHandlersArray = {}
end
function WhatCanISayHandleSpeechAction( f11_arg0, f11_arg1 )
if Engine.HasSpeechFeature() then
LUI.Speech.ProcessActionEvent( f11_arg0, f11_arg1, WhatCanISaySpeechGrammarHandlersArray )
end
end
function what_can_i_say()
return {
type = "UIElement",
id = "what_can_i_say_id",
states = {
default = {
topAnchor = true,
bottomAnchor = true,
leftAnchor = true,
rightAnchor = true,
top = 0,
bottom = 0,
left = 0,
right = 0
}
},
handlers = {
menu_create = OptionsMainCreate,
speech_action = WhatCanISayHandleSpeechAction
},
children = {
{
type = "UIWorldBlur",
id = "world_blur_id",
states = {
default = {
worldBlur = 5
}
}
},
{
type = "UIImage",
id = "options_background",
states = {
default = {
topAnchor = true,
bottomAnchor = true,
leftAnchor = true,
rightAnchor = true,
top = 0,
bottom = 0,
left = 0,
right = 0,
alpha = 0.95,
material = RegisterMaterial( "black" )
}
}
},
{
type = "generic_menu_title",
properties = {
menu_title = Engine.Localize( "@SPEECH_WHATCANISAY_CAPS" )
}
},
{
type = "what_can_i_say_vlist",
id = "what_can_i_say_vlist_id"
},
{
type = "button_helper_text_main",
id = "button_helper_text_id"
},
{
type = "UIBindButton",
id = "back_button",
handlers = {
button_start = f0_local0,
button_select = f0_local0,
button_secondary = f0_local0
}
}
}
}
end
LUI.MenuBuilder.registerDef( "what_can_i_say_vlist", what_can_i_say_vlist )
LUI.MenuBuilder.registerDef( "what_can_i_say", what_can_i_say )
LockTable( _M )