240 lines
10 KiB
Lua
240 lines
10 KiB
Lua
local f0_local0 = function ( f1_arg0, f1_arg1, f1_arg2, f1_arg3 )
|
|
if f1_arg0 and Cac.Settings.DataLoc.loadouts.baseClassSlots <= f1_arg0 then
|
|
return Engine.TableLookup( "mp/classTable.csv", 0, f1_arg1, 12 )
|
|
elseif f1_arg2 == nil or f1_arg2 == "privateMatchSquadMembers" then
|
|
return Engine.TableLookup( "mp/classTable.csv", 0, f1_arg1, f1_arg0 % 10 + 1 )
|
|
elseif f1_arg3 == 0 then
|
|
return Engine.TableLookup( "mp/classTableAssault.csv", 0, f1_arg1, 1 )
|
|
elseif f1_arg3 == 1 then
|
|
return Engine.TableLookup( "mp/classTableCQB.csv", 0, f1_arg1, 1 )
|
|
elseif f1_arg3 == 2 then
|
|
return Engine.TableLookup( "mp/classTableAssassin.csv", 0, f1_arg1, 1 )
|
|
elseif f1_arg3 == 3 then
|
|
return Engine.TableLookup( "mp/classTableHeavyGunner.csv", 0, f1_arg1, 1 )
|
|
elseif f1_arg3 == 4 then
|
|
return Engine.TableLookup( "mp/classTableSniper.csv", 0, f1_arg1, 1 )
|
|
else
|
|
return Engine.TableLookup( "mp/classTableAssault.csv", 0, f1_arg1, 1 )
|
|
end
|
|
end
|
|
|
|
local f0_local1 = function ( f2_arg0, f2_arg1, f2_arg2 )
|
|
local f2_local0 = {}
|
|
local f2_local1 = 0
|
|
local f2_local2 = Engine.TableLookupByRow( f2_arg0, f2_local1, f2_arg2 )
|
|
while f2_local2 ~= "" do
|
|
if f2_local2 == f2_arg1 then
|
|
f2_local0[#f2_local0 + 1] = f2_local1
|
|
end
|
|
f2_local1 = f2_local1 + 1
|
|
f2_local2 = Engine.TableLookupByRow( f2_arg0, f2_local1, f2_arg2 )
|
|
end
|
|
return f2_local0
|
|
end
|
|
|
|
local f0_local2 = function ( f3_arg0, f3_arg1, f3_arg2, f3_arg3, f3_arg4, f3_arg5 )
|
|
local f3_local0 = f0_local0( f3_arg3, "loadout" .. f3_arg5, f3_arg1, f3_arg2 )
|
|
local f3_local1 = f0_local0( f3_arg3, "loadout" .. f3_arg5 .. "Attachment", f3_arg1, f3_arg2 )
|
|
local f3_local2 = f0_local0( f3_arg3, "loadout" .. f3_arg5 .. "Attachment2", f3_arg1, f3_arg2 )
|
|
local f3_local3 = f0_local0( f3_arg3, "loadout" .. f3_arg5 .. "Attachment3", f3_arg1, f3_arg2 )
|
|
local f3_local4 = f0_local0( f3_arg3, "loadout" .. f3_arg5 .. "Camo", f3_arg1, f3_arg2 )
|
|
Cac.SetCacConfig( f3_arg0, f3_arg1, f3_arg2, "loadouts", f3_arg3, "weaponSetups", f3_arg4, "weapon", f3_local0 )
|
|
Cac.SetCacConfig( f3_arg0, f3_arg1, f3_arg2, "loadouts", f3_arg3, "weaponSetups", f3_arg4, "attachment", 0, f3_local1 )
|
|
Cac.SetCacConfig( f3_arg0, f3_arg1, f3_arg2, "loadouts", f3_arg3, "weaponSetups", f3_arg4, "attachment", 1, f3_local2 )
|
|
Cac.SetCacConfig( f3_arg0, f3_arg1, f3_arg2, "loadouts", f3_arg3, "weaponSetups", f3_arg4, "attachment", 2, f3_local3 )
|
|
Cac.SetCacConfig( f3_arg0, f3_arg1, f3_arg2, "loadouts", f3_arg3, "weaponSetups", f3_arg4, "camo", f3_local4 )
|
|
local f3_local5 = {
|
|
f3_local1,
|
|
f3_local2,
|
|
f3_local3
|
|
}
|
|
local f3_local6 = "none"
|
|
for f3_local10, f3_local11 in ipairs( f3_local5 ) do
|
|
if f3_local11 and f3_local11 ~= "" and Cac.AttachmentHasReticles( f3_local11 ) then
|
|
f3_local6 = Cac.GetReticleDefault( f3_local11 )
|
|
break
|
|
end
|
|
end
|
|
Cac.SetCacConfig( f3_arg0, f3_arg1, f3_arg2, "loadouts", f3_arg3, "weaponSetups", f3_arg4, "reticle", f3_local6 )
|
|
end
|
|
|
|
local f0_local3 = function ( f4_arg0, f4_arg1, f4_arg2, f4_arg3, f4_arg4, f4_arg5 )
|
|
f0_local2( f4_arg0, f4_arg1, f4_arg2, f4_arg3, 0, "Primary" )
|
|
f0_local2( f4_arg0, f4_arg1, f4_arg2, f4_arg3, 1, "Secondary" )
|
|
end
|
|
|
|
local f0_local4 = function ( f5_arg0, f5_arg1, f5_arg2, f5_arg3 )
|
|
local f5_local0 = Cac.GetCacConfig( f5_arg0, f5_arg1, f5_arg2, "loadouts", f5_arg3, "perks", Cac.Indices.Grenade.Primary )
|
|
local f5_local1 = Cac.GetCacConfig( f5_arg0, f5_arg1, f5_arg2, "loadouts", f5_arg3, "perks", Cac.Indices.Grenade.Secondary )
|
|
Cac.SetCacConfig( f5_arg0, f5_arg1, f5_arg2, "loadouts", f5_arg3, "perks", Cac.Indices.Grenade.Primary, f0_local0( f5_arg3, "loadoutEquipment", f5_arg1, f5_arg2 ) )
|
|
Cac.SetCacConfig( f5_arg0, f5_arg1, f5_arg2, "loadouts", f5_arg3, "perks", Cac.Indices.Grenade.Secondary, f0_local0( f5_arg3, "loadoutOffhand", f5_arg1, f5_arg2 ) )
|
|
end
|
|
|
|
local f0_local5 = function ( f6_arg0, f6_arg1, f6_arg2, f6_arg3 )
|
|
for f6_local0 = 1, 8, 1 do
|
|
local f6_local3 = f0_local0( f6_arg3, "loadoutPerk" .. f6_local0, f6_arg1, f6_arg2 )
|
|
if f6_local3 then
|
|
if f6_local3 == "" then
|
|
break
|
|
end
|
|
local f6_local4 = tonumber( string.sub( f6_local3, 1, 1 ) )
|
|
local f6_local5 = tonumber( string.sub( f6_local3, 2, 2 ) )
|
|
if f6_local4 then
|
|
if not f6_local5 then
|
|
break
|
|
end
|
|
Cac.SetCacConfig( f6_arg0, f6_arg1, f6_arg2, "loadouts", f6_arg3, "abilitiesPicked", f6_local4 - 1, f6_local5 - 1, true )
|
|
end
|
|
end
|
|
end
|
|
end
|
|
|
|
local f0_local6 = function ( f7_arg0, f7_arg1, f7_arg2, f7_arg3 )
|
|
for f7_local0 = 0, 5, 1 do
|
|
local f7_local3 = f0_local0( f7_arg3, "loadoutStreak" .. f7_local0, f7_arg1, f7_arg2 )
|
|
local f7_local4 = "assaultStreaks"
|
|
local f7_local5 = f7_local0
|
|
if f7_local0 > 2 then
|
|
f7_local4 = "supportStreaks"
|
|
f7_local5 = f7_local0 - 3
|
|
end
|
|
Cac.SetCacConfig( f7_arg0, f7_arg1, f7_arg2, "loadouts", f7_arg3, f7_local4, f7_local5, f7_local3 )
|
|
end
|
|
end
|
|
|
|
local f0_local7 = function ( f8_arg0, f8_arg1, f8_arg2 )
|
|
for f8_local0 = 0, Cac.Settings.DataLoc.loadouts.baseClassSlots - 1, 1 do
|
|
Cac.SetCacConfig( f8_arg0, f8_arg1, f8_arg2, "loadouts", f8_local0, "name", Engine.Localize( f0_local0( f8_local0, "loadoutName" ) ) )
|
|
f0_local3( f8_arg0, f8_arg1, f8_arg2, f8_local0, 0, "Primary" )
|
|
f0_local3( f8_arg0, f8_arg1, f8_arg2, f8_local0, 1, "Secondary" )
|
|
f0_local4( f8_arg0, f8_arg1, f8_arg2, f8_local0 )
|
|
f0_local5( f8_arg0, f8_arg1, f8_arg2, f8_local0 )
|
|
f0_local6( f8_arg0, f8_arg1, f8_arg2, f8_local0 )
|
|
if f8_arg1 ~= "privateMatchSquadMembers" then
|
|
local f8_local3 = false
|
|
if f8_local0 <= 2 then
|
|
f8_local3 = true
|
|
end
|
|
Cac.SetCacConfig( f8_arg0, f8_arg1, f8_arg2, "loadouts", f8_local0, "inUse", f8_local3 )
|
|
end
|
|
end
|
|
end
|
|
|
|
local f0_local8 = function ( f9_arg0, f9_arg1, f9_arg2, f9_arg3, f9_arg4, f9_arg5 )
|
|
local f9_local0 = {
|
|
0,
|
|
4,
|
|
8,
|
|
12,
|
|
18,
|
|
22,
|
|
26,
|
|
30,
|
|
34,
|
|
40
|
|
}
|
|
local f9_local1 = math.random( 1, #f9_local0 )
|
|
local f9_local2 = {
|
|
0,
|
|
4,
|
|
9,
|
|
13,
|
|
27
|
|
}
|
|
local f9_local3 = math.random( 1, #f9_local2 )
|
|
local f9_local4 = Cac.GetGenderFromBodyRef( f9_local0[f9_local1] )
|
|
local f9_local5 = 0
|
|
if f9_local4 == "m" then
|
|
if math.random( 0, 1 ) == 1 then
|
|
f9_local5 = 0
|
|
else
|
|
f9_local5 = 8
|
|
end
|
|
else
|
|
f9_local5 = 20
|
|
end
|
|
Engine.SetPlayerDataEx( f9_arg0, f9_arg1, f9_arg2, f9_arg3, "name", f9_arg4 )
|
|
Engine.SetPlayerDataEx( f9_arg0, f9_arg1, f9_arg2, f9_arg3, "head", f9_local5 )
|
|
Engine.SetPlayerDataEx( f9_arg0, f9_arg1, f9_arg2, f9_arg3, "helmet", f9_local2[f9_local3] )
|
|
Engine.SetPlayerDataEx( f9_arg0, f9_arg1, f9_arg2, f9_arg3, "body", f9_local0[f9_local1] )
|
|
if f9_arg5 then
|
|
f0_local7( f9_arg0, f9_arg2, f9_arg3 )
|
|
end
|
|
end
|
|
|
|
local f0_local9 = function ( f10_arg0, f10_arg1, f10_arg2, f10_arg3 )
|
|
local f10_local0 = Cac.MaxSquadMemberCount( f10_arg2 )
|
|
local f10_local1 = f0_local1( "mp/namesTable.csv", "american", 0 )
|
|
for f10_local2 = 1, f10_local0, 1 do
|
|
local f10_local5 = math.random( f10_local2, #f10_local1 )
|
|
f10_local1[f10_local5] = f10_local1[f10_local2]
|
|
f10_local1[f10_local2] = f10_local1[f10_local5]
|
|
end
|
|
for f10_local2 = 1, f10_local0, 1 do
|
|
f0_local8( f10_arg0, f10_arg1, f10_arg2, f10_local2 - 1, Engine.TableLookupByRow( "mp/namesTable.csv", f10_local1[f10_local2], 1 ), f10_arg3 )
|
|
end
|
|
end
|
|
|
|
local f0_local10 = function ( f11_arg0, f11_arg1 )
|
|
local f11_local0 = Engine.GetPlayerDataEx( f11_arg0, f11_arg1, "prestige" )
|
|
Engine.SetPlayerDataEx( f11_arg0, f11_arg1, "challengeState", "ch_prestige", f11_local0 + 1 )
|
|
Engine.SetPlayerDataEx( f11_arg0, f11_arg1, "challengeProgress", "ch_prestige", f11_local0 + 1 )
|
|
if f11_local0 == 10 then
|
|
Engine.SetPlayerDataEx( f11_arg0, f11_arg1, "challengeState", "ch_prestige", 2 )
|
|
Engine.SetPlayerDataEx( f11_arg0, f11_arg1, "challengeProgress", "ch_prestige", 1 )
|
|
end
|
|
end
|
|
|
|
function InitPlayerData( f12_arg0, f12_arg1 )
|
|
local f12_local0 = f12_arg1.controller or 0
|
|
f0_local9( f12_local0, CoD.StatsGroup.Ranked, "squadMembers", true )
|
|
f0_local9( f12_local0, CoD.StatsGroup.Private, "privateMatchSquadMembers", true )
|
|
Engine.SetPlayerDataEx( f12_local0, CoD.StatsGroup.Ranked, "squadMembers", 0, "inUse", true )
|
|
Engine.SetPlayerDataEx( f12_local0, CoD.StatsGroup.Ranked, "challengeState", "ch_squad_member1_purchase", 2 )
|
|
for f12_local1 = 0, Cac.MaxSquadMemberCount( "privateMatchSquadMembers" ) - 1, 1 do
|
|
local f12_local4 = f12_local1
|
|
Engine.SetPlayerDataEx( f12_local0, CoD.StatsGroup.Private, "privateMatchSquadMembers", 0, "inUse", true )
|
|
end
|
|
f0_local9( f12_local0, CoD.StatsGroup.Coop, "coopSquadMembers", false )
|
|
f0_local10( f12_local0, CoD.StatsGroup.Ranked )
|
|
Engine.SetPlayerDataEx( f12_local0, CoD.StatsGroup.Common, "enableBattleBuddy", false )
|
|
local f12_local1 = f0_local1( "mp/squadDefaults.csv", "squadname", 0 )
|
|
Engine.SetPlayerDataEx( f12_local0, CoD.StatsGroup.Ranked, "squadHQ", "squad_name", Engine.TableLookupByRow( "mp/squadDefaults.csv", f12_local1[math.random( 1, #f12_local1 )], 1 ) )
|
|
local f12_local4 = f0_local1( "mp/squadDefaults.csv", "mapname", 0 )
|
|
Engine.SetPlayerDataEx( f12_local0, CoD.StatsGroup.Ranked, "squadHQ", "squad_base", Engine.TableLookupByRow( "mp/squadDefaults.csv", f12_local4[math.random( 1, #f12_local4 )], 1 ) )
|
|
Engine.SetPlayerDataEx( f12_local0, CoD.StatsGroup.Ranked, "squadHQ", "squad_mode", "war" )
|
|
for f12_local5 = 0, 9, 1 do
|
|
Engine.SetPlayerDataEx( f12_local0, CoD.StatsGroup.Ranked, "squadHQ", "aiSquadMembers", f12_local5, f12_local5 )
|
|
end
|
|
InitOperationsData( f12_local0 )
|
|
ResetMOTDCounters( f12_local0 )
|
|
end
|
|
|
|
function InitPlayerDataExtended( f13_arg0, f13_arg1 )
|
|
local f13_local0 = {
|
|
"privateMatchSquadMembers",
|
|
"squadMembers"
|
|
}
|
|
local f13_local1 = f13_arg1.controller
|
|
if not f13_local1 then
|
|
return
|
|
end
|
|
for f13_local10, f13_local11 in ipairs( f13_local0 ) do
|
|
local f13_local12 = Cac.MaxSquadMemberCount( f13_local11 )
|
|
local f13_local13 = Cac.Settings.DataLoc.loadouts.baseClassSlots
|
|
local f13_local14 = Cac.Settings.DataLoc.loadouts.maxClassSlots
|
|
for f13_local9 = 0, f13_local12 - 1, 1 do
|
|
for f13_local5 = 0, f13_local14 - f13_local13 - 1, 1 do
|
|
local f13_local8 = f13_local5 + f13_local13
|
|
f0_local3( f13_local1, f13_local11, f13_local9, f13_local8, 0, "Primary" )
|
|
f0_local3( f13_local1, f13_local11, f13_local9, f13_local8, 1, "Secondary" )
|
|
f0_local4( f13_local1, f13_local11, f13_local9, f13_local8 )
|
|
f0_local5( f13_local1, f13_local11, f13_local9, f13_local8 )
|
|
f0_local6( f13_local1, f13_local11, f13_local9, f13_local8 )
|
|
Cac.SetCacConfig( f13_local1, f13_local11, f13_local9, "loadouts", f13_local8, "name", Engine.Localize( "LUA_MENU_EXTRA_LOADOUT", f13_local5 + 1 ) )
|
|
end
|
|
end
|
|
end
|
|
end
|
|
|