diff --git a/Client/AnimationList.lua b/Client/AnimationList.lua index 79dde7f..bf3967b 100644 --- a/Client/AnimationList.lua +++ b/Client/AnimationList.lua @@ -55,6 +55,139 @@ DP.Walks = { ["Wide"] = {"move_m@bag"}, } +DP.Dances = { + ["dancef"] = {"anim@amb@nightclub@dancers@solomun_entourage@", "mi_dance_facedj_17_v1_female^1", "Dance F", AnimationOptions = + { + EmoteLoop = true, + }}, + ["dancef2"] = {"anim@amb@nightclub@mini@dance@dance_solo@female@var_a@", "high_center", "Dance F2", AnimationOptions = + { + EmoteLoop = true, + }}, + ["dancef3"] = {"anim@amb@nightclub@mini@dance@dance_solo@female@var_a@", "high_center_up", "Dance F3", AnimationOptions = + { + EmoteLoop = true, + }}, + ["dancef4"] = {"anim@amb@nightclub@dancers@crowddance_facedj@hi_intensity", "hi_dance_facedj_09_v2_female^1", "Dance F4", AnimationOptions = + { + EmoteLoop = true, + }}, + ["dancef5"] = {"anim@amb@nightclub@dancers@crowddance_facedj@hi_intensity", "hi_dance_facedj_09_v2_female^3", "Dance F5", AnimationOptions = + { + EmoteLoop = true, + }}, + ["dancef6"] = {"anim@amb@nightclub@mini@dance@dance_solo@female@var_a@", "high_center_up", "Dance F6", AnimationOptions = + { + EmoteLoop = true, + }}, + ["danceslow2"] = {"anim@amb@nightclub@mini@dance@dance_solo@female@var_a@", "low_center", "Dance Slow 2", AnimationOptions = + { + EmoteLoop = true, + }}, + ["danceslow3"] = {"anim@amb@nightclub@mini@dance@dance_solo@female@var_a@", "low_center_down", "Dance Slow 3", AnimationOptions = + { + EmoteLoop = true, + }}, + ["danceslow4"] = {"anim@amb@nightclub@mini@dance@dance_solo@female@var_b@", "low_center", "Dance Slow 4", AnimationOptions = + { + EmoteLoop = true, + }}, + ["dance"] = {"anim@amb@nightclub@dancers@podium_dancers@", "hi_dance_facedj_17_v2_male^5", "Dance", AnimationOptions = + { + EmoteLoop = true, + }}, + ["dance2"] = {"anim@amb@nightclub@mini@dance@dance_solo@male@var_b@", "high_center_down", "Dance 2", AnimationOptions = + { + EmoteLoop = true, + }}, + ["dance3"] = {"anim@amb@nightclub@mini@dance@dance_solo@male@var_a@", "high_center", "Dance 3", AnimationOptions = + { + EmoteLoop = true, + }}, + ["dance4"] = {"anim@amb@nightclub@mini@dance@dance_solo@male@var_b@", "high_center_up", "Dance 4", AnimationOptions = + { + EmoteLoop = true, + }}, + ["danceupper"] = {"anim@amb@nightclub@mini@dance@dance_solo@female@var_b@", "high_center", "Dance Upper", AnimationOptions = + { + EmoteLoop = true, + EmoteMoving = true, + }}, + ["danceupper2"] = {"anim@amb@nightclub@mini@dance@dance_solo@female@var_b@", "high_center_up", "Dance Upper 2", AnimationOptions = + { + EmoteLoop = true, + EmoteMoving = true, + }}, + ["danceshy"] = {"anim@amb@nightclub@mini@dance@dance_solo@male@var_a@", "low_center", "Dance Shy", AnimationOptions = + { + EmoteLoop = true, + }}, + ["danceshy2"] = {"anim@amb@nightclub@mini@dance@dance_solo@female@var_b@", "low_center_down", "Dance Shy 2", AnimationOptions = + { + EmoteLoop = true, + }}, + ["danceslow"] = {"anim@amb@nightclub@mini@dance@dance_solo@male@var_b@", "low_center", "Dance Slow", AnimationOptions = + { + EmoteLoop = true, + }}, + ["dancesilly9"] = {"rcmnigel1bnmt_1b", "dance_loop_tyler", "Dance Silly 9", AnimationOptions = + { + EmoteLoop = true, + }}, + ["dance6"] = {"misschinese2_crystalmazemcs1_cs", "dance_loop_tao", "Dance 6", AnimationOptions = + { + EmoteLoop = true, + }}, + ["dance7"] = {"misschinese2_crystalmazemcs1_ig", "dance_loop_tao", "Dance 7", AnimationOptions = + { + EmoteLoop = true, + }}, + ["dance8"] = {"missfbi3_sniping", "dance_m_default", "Dance 8", AnimationOptions = + { + EmoteLoop = true, + }}, + ["dancesilly"] = {"special_ped@mountain_dancer@monologue_3@monologue_3a", "mnt_dnc_buttwag", "Dance Silly", AnimationOptions = + { + EmoteLoop = true, + }}, + ["dancesilly2"] = {"move_clown@p_m_zero_idles@", "fidget_short_dance", "Dance Silly 2", AnimationOptions = + { + EmoteLoop = true, + }}, + ["dancesilly3"] = {"move_clown@p_m_two_idles@", "fidget_short_dance", "Dance Silly 3", AnimationOptions = + { + EmoteLoop = true, + }}, + ["dancesilly4"] = {"anim@amb@nightclub@lazlow@hi_podium@", "danceidle_hi_11_buttwiggle_b_laz", "Dance Silly 4", AnimationOptions = + { + EmoteLoop = true, + }}, + ["dancesilly5"] = {"timetable@tracy@ig_5@idle_a", "idle_a", "Dance Silly 5", AnimationOptions = + { + EmoteLoop = true, + }}, + ["dancesilly6"] = {"timetable@tracy@ig_8@idle_b", "idle_d", "Dance Silly 6", AnimationOptions = + { + EmoteLoop = true, + }}, + ["dance9"] = {"anim@amb@nightclub@mini@dance@dance_solo@female@var_a@", "med_center_up", "Dance 9", AnimationOptions = + { + EmoteLoop = true, + }}, + ["dancesilly8"] = {"anim@mp_player_intcelebrationfemale@the_woogie", "the_woogie", "Dance Silly 8", AnimationOptions = + { + EmoteLoop = true + }}, + ["dancesilly7"] = {"anim@amb@casino@mini@dance@dance_solo@female@var_b@", "high_center", "Dance Silly 7", AnimationOptions = + { + EmoteLoop = true + }}, + ["dance5"] = {"anim@amb@casino@mini@dance@dance_solo@female@var_a@", "med_center", "Dance 5", AnimationOptions = + { + EmoteLoop = true + }}, +} + DP.Emotes = { ["healthkit"] = {"anim@amb@board_room@supervising@", "dissaproval_01_lo_amy_skater_01", "Health Kit", AnimationOptions = { @@ -953,80 +1086,6 @@ DP.Emotes = { { EmoteLoop = true, }}, - ["dancef"] = {"anim@amb@nightclub@dancers@solomun_entourage@", "mi_dance_facedj_17_v1_female^1", "Dance F", AnimationOptions = - { - EmoteLoop = true, - }}, - ["dancef2"] = {"anim@amb@nightclub@mini@dance@dance_solo@female@var_a@", "high_center", "Dance F2", AnimationOptions = - { - EmoteLoop = true, - }}, - ["dancef3"] = {"anim@amb@nightclub@mini@dance@dance_solo@female@var_a@", "high_center_up", "Dance F3", AnimationOptions = - { - EmoteLoop = true, - }}, - ["dancef4"] = {"anim@amb@nightclub@dancers@crowddance_facedj@hi_intensity", "hi_dance_facedj_09_v2_female^1", "Dance F4", AnimationOptions = - { - EmoteLoop = true, - }}, - ["dancef5"] = {"anim@amb@nightclub@dancers@crowddance_facedj@hi_intensity", "hi_dance_facedj_09_v2_female^3", "Dance F5", AnimationOptions = - { - EmoteLoop = true, - }}, - ["dancef6"] = {"anim@amb@nightclub@mini@dance@dance_solo@female@var_a@", "high_center_up", "Dance F6", AnimationOptions = - { - EmoteLoop = true, - }}, - ["dancefslow"] = {"anim@amb@nightclub@mini@dance@dance_solo@female@var_a@", "low_center", "Dance F Slow", AnimationOptions = - { - EmoteLoop = true, - }}, - ["dancefslow2"] = {"anim@amb@nightclub@mini@dance@dance_solo@female@var_a@", "low_center_down", "Dance F Slow 2", AnimationOptions = - { - EmoteLoop = true, - }}, - ["dancefslow3"] = {"anim@amb@nightclub@mini@dance@dance_solo@female@var_b@", "low_center", "Dance F Slow 3", AnimationOptions = - { - EmoteLoop = true, - }}, - ["dance"] = {"anim@amb@nightclub@dancers@podium_dancers@", "hi_dance_facedj_17_v2_male^5", "Dance", AnimationOptions = - { - EmoteLoop = true, - }}, - ["dance2"] = {"anim@amb@nightclub@mini@dance@dance_solo@male@var_b@", "high_center_down", "Dance 2", AnimationOptions = - { - EmoteLoop = true, - }}, - ["dance3"] = {"anim@amb@nightclub@mini@dance@dance_solo@male@var_a@", "high_center", "Dance 3", AnimationOptions = - { - EmoteLoop = true, - }}, - ["dance4"] = {"anim@amb@nightclub@mini@dance@dance_solo@male@var_b@", "high_center_up", "Dance 4", AnimationOptions = - { - EmoteLoop = true, - }}, - ["dance5"] = {"anim@amb@nightclub@mini@dance@dance_solo@female@var_b@", "high_center", "Dance 5", AnimationOptions = - { - EmoteLoop = true, - EmoteMoving = true, - }}, - ["dance6"] = {"anim@amb@nightclub@mini@dance@dance_solo@female@var_b@", "high_center_up", "Dance 6", AnimationOptions = - { - EmoteLoop = true, - EmoteMoving = true, - }}, - ["danceshy"] = {"anim@amb@nightclub@mini@dance@dance_solo@male@var_a@", "low_center", "Dance Shy", AnimationOptions = - { - EmoteLoop = true, - }}, - ["danceshy2"] = {"anim@amb@nightclub@mini@dance@dance_solo@female@var_b@", "low_center_down", "Dance Shy 2", AnimationOptions = - { - EmoteLoop = true, - }}, - ["danceslow"] = {"anim@amb@nightclub@mini@dance@dance_solo@male@var_b@", "low_center", "Dance Slow", AnimationOptions = - { - EmoteLoop = true, - }}, ["crawl"] = {"move_injured_ground", "front_loop", "Crawl", AnimationOptions = { EmoteLoop = true, @@ -1055,50 +1114,6 @@ DP.Emotes = { EmoteLoop = true, EmoteMoving = true, }}, - ["dance7"] = {"rcmnigel1bnmt_1b", "dance_loop_tyler", "Dance 7", AnimationOptions = - { - EmoteLoop = true, - }}, - ["dance8"] = {"misschinese2_crystalmazemcs1_cs", "dance_loop_tao", "Dance 8", AnimationOptions = - { - EmoteLoop = true, - }}, - ["dance9"] = {"misschinese2_crystalmazemcs1_ig", "dance_loop_tao", "Dance 9", AnimationOptions = - { - EmoteLoop = true, - }}, - ["dance10"] = {"missfbi3_sniping", "dance_m_default", "Dance 10", AnimationOptions = - { - EmoteLoop = true, - }}, - ["dance11"] = {"special_ped@mountain_dancer@monologue_3@monologue_3a", "mnt_dnc_buttwag", "Dance 11", AnimationOptions = - { - EmoteLoop = true, - }}, - ["dance12"] = {"move_clown@p_m_zero_idles@", "fidget_short_dance", "Dance 12", AnimationOptions = - { - EmoteLoop = true, - }}, - ["dance13"] = {"move_clown@p_m_two_idles@", "fidget_short_dance", "Dance 13", AnimationOptions = - { - EmoteLoop = true, - }}, - ["dance14"] = {"anim@amb@nightclub@lazlow@hi_podium@", "danceidle_hi_11_buttwiggle_b_laz", "Dance 14", AnimationOptions = - { - EmoteLoop = true, - }}, - ["dance15"] = {"timetable@tracy@ig_5@idle_a", "idle_a", "Dance 15", AnimationOptions = - { - EmoteLoop = true, - }}, - ["dance16"] = {"timetable@tracy@ig_8@idle_b", "idle_d", "Dance 16", AnimationOptions = - { - EmoteLoop = true, - }}, - ["dance17"] = {"anim@amb@nightclub@mini@dance@dance_solo@female@var_a@", "med_center_up", "Dance 17", AnimationOptions = - { - EmoteLoop = true, - }}, ["keyfob"] = {"anim@mp_player_intmenu@key_fob@", "fob_click", "Key Fob", AnimationOptions = { EmoteLoop = false, @@ -1604,16 +1619,4 @@ DP.Emotes = { EmoteLoop = true, EmoteMoving = true, }}, - ["dance18"] = {"anim@mp_player_intcelebrationfemale@the_woogie", "the_woogie", "Dance 18", AnimationOptions = - { - EmoteLoop = true - }}, - ["dance19"] = {"anim@amb@casino@mini@dance@dance_solo@female@var_b@", "high_center", "Dance 19", AnimationOptions = - { - EmoteLoop = true - }}, - ["dance20"] = {"anim@amb@casino@mini@dance@dance_solo@female@var_a@", "med_center", "Dance 20", AnimationOptions = - { - EmoteLoop = true - }}, } \ No newline at end of file diff --git a/Client/Emote.lua b/Client/Emote.lua index fe6243f..bd21f83 100644 --- a/Client/Emote.lua +++ b/Client/Emote.lua @@ -119,26 +119,47 @@ function pairsByKeys (t, f) return iter end -function EmoteMenuStart(args) +function EmoteMenuStart(args, hard) local name = args - if DP.Emotes[name] ~= nil then - if OnEmotePlay(DP.Emotes[name]) then end - else - EmoteChatMessage("'"..name.."' is not a valid emote") + local etype = hard + + if etype == "dances" then + if DP.Dances[name] ~= nil then + if OnEmotePlay(DP.Dances[name]) then end + else + EmoteChatMessage("'"..name.."' is not a valid dance") + end + end + + if etype == "emotes" then + if DP.Emotes[name] ~= nil then + if OnEmotePlay(DP.Emotes[name]) then end + else + if name ~= "(Dances)" then + EmoteChatMessage("'"..name.."' is not a valid emote") + end + end end end function EmoteCommandStart(source, args, raw) if #args > 0 then local name = args[1] - if name == "c" and IsInAnimation then - EmoteCancel() + if name == "c" then + if IsInAnimation then + EmoteCancel() + else + EmoteChatMessage("No emote to cancel") + end return elseif name == "help" then EmotesOnCommand() return end + if DP.Emotes[name] ~= nil then - if OnEmotePlay(DP.Emotes[name]) then end + if OnEmotePlay(DP.Emotes[name]) then end return + elseif DP.Dances[name] ~= nil then + if OnEmotePlay(DP.Dances[name]) then end return else EmoteChatMessage("'"..name.."' is not a valid emote") end diff --git a/Client/EmoteMenu.lua b/Client/EmoteMenu.lua index 4bb2401..f1f1e41 100644 --- a/Client/EmoteMenu.lua +++ b/Client/EmoteMenu.lua @@ -9,6 +9,7 @@ function ShowNotification(text) end local emotetable = {} +local dancetable = {} local walktable = {} function AddWalkMenu(menu) @@ -36,6 +37,8 @@ end function AddEmoteMenu(menu) local submenu = _menuPool:AddSubMenu(menu, "Emotes", "", "", "shopui_title_sm_hangar", "shopui_title_sm_hangar") + local dancemenu = _menuPool:AddSubMenu(submenu, "(Dances)", "", "", "shopui_title_sm_hangar", "shopui_title_sm_hangar") + table.insert(emotetable, "(Dances)") for a,b in pairsByKeys(DP.Emotes) do x,y,z = table.unpack(b) @@ -44,8 +47,19 @@ function AddEmoteMenu(menu) table.insert(emotetable, a) end + for a,b in pairsByKeys(DP.Dances) do + x,y,z = table.unpack(b) + danceitem = NativeUI.CreateItem(z, "/e ("..a..")") + dancemenu:AddItem(danceitem) + table.insert(dancetable, a) + end + + dancemenu.OnItemSelect = function(sender, item, index) + EmoteMenuStart(dancetable[index], "dances") + end + submenu.OnItemSelect = function(sender, item, index) - EmoteMenuStart(emotetable[index]) + EmoteMenuStart(emotetable[index], "emotes") end end