diff --git a/hypnonema.db b/hypnonema.db
index a7e8796f7..a0bbeb059 100644
Binary files a/hypnonema.db and b/hypnonema.db differ
diff --git a/resources/EmoteMenu/Client/AnimationList.lua b/resources/EmoteMenu/Client/AnimationList.lua
index 45bd49027..e6ab0db46 100644
--- a/resources/EmoteMenu/Client/AnimationList.lua
+++ b/resources/EmoteMenu/Client/AnimationList.lua
@@ -1,2052 +1,4016 @@
+-- DPEmotes forked by TayMcKenzieNZ requires you to be on the latest FiveM Gamebuild for all emotes to function.
+-- If an emote does not work, you may be on an older gamebuild.
+-- To get a higher gamebuild, see ReadMe on github repositorty
DP = {}
+-- EXPRESSIONS --
+
DP.Expressions = {
- ["Angry"] = {"Expression", "mood_angry_1"},
- ["Drunk"] = {"Expression", "mood_drunk_1"},
- ["Dumb"] = {"Expression", "pose_injured_1"},
- ["Electrocuted"] = {"Expression", "electrocuted_1"},
- ["Grumpy"] = {"Expression", "effort_1"},
- ["Grumpy2"] = {"Expression", "mood_drivefast_1"},
- ["Grumpy3"] = {"Expression", "pose_angry_1"},
- ["Happy"] = {"Expression", "mood_happy_1"},
- ["Injured"] = {"Expression", "mood_injured_1"},
- ["Joyful"] = {"Expression", "mood_dancing_low_1"},
- ["Mouthbreather"] = {"Expression", "smoking_hold_1"},
- ["Never Blink"] = {"Expression", "pose_normal_1"},
- ["One Eye"] = {"Expression", "pose_aiming_1"},
- ["Shocked"] = {"Expression", "shocked_1"},
- ["Shocked2"] = {"Expression", "shocked_2"},
- ["Sleeping"] = {"Expression", "mood_sleeping_1"},
- ["Sleeping2"] = {"Expression", "dead_1"},
- ["Sleeping3"] = {"Expression", "dead_2"},
- ["Smug"] = {"Expression", "mood_smug_1"},
- ["Speculative"] = {"Expression", "mood_aiming_1"},
- ["Stressed"] = {"Expression", "mood_stressed_1"},
- ["Sulking"] = {"Expression", "mood_sulk_1"},
- ["Weird"] = {"Expression", "effort_2"},
- ["Weird2"] = {"Expression", "effort_3"},
+ ["Angry"] = { "Expression", "mood_angry_1" },
+ ["Drunk"] = { "Expression", "mood_drunk_1" },
+ ["Dumb"] = { "Expression", "pose_injured_1" },
+ ["Electrocuted"] = { "Expression", "electrocuted_1" },
+ ["Grumpy"] = { "Expression", "effort_1" },
+ ["Grumpy2"] = { "Expression", "mood_drivefast_1" },
+ ["Grumpy3"] = { "Expression", "pose_angry_1" },
+ ["Happy"] = { "Expression", "mood_happy_1" },
+ ["Injured"] = { "Expression", "mood_injured_1" },
+ ["Joyful"] = { "Expression", "mood_dancing_low_1" },
+ ["Mouthbreather"] = { "Expression", "smoking_hold_1" },
+ ["Never Blink"] = { "Expression", "pose_normal_1" },
+ ["One Eye"] = { "Expression", "pose_aiming_1" },
+ ["Shocked"] = { "Expression", "shocked_1" },
+ ["Shocked2"] = { "Expression", "shocked_2" },
+ ["Sleeping"] = { "Expression", "mood_sleeping_1" },
+ ["Sleeping2"] = { "Expression", "dead_1" },
+ ["Sleeping3"] = { "Expression", "dead_2" },
+ ["Smug"] = { "Expression", "mood_smug_1" },
+ ["Speculative"] = { "Expression", "mood_aiming_1" },
+ ["Stressed"] = { "Expression", "mood_stressed_1" },
+ ["Sulking"] = { "Expression", "mood_sulk_1" },
+ ["Weird"] = { "Expression", "effort_2" },
+ ["Weird2"] = { "Expression", "effort_3" },
}
+
+--- WALKSTYLES ---
+
+
DP.Walks = {
- ["Alien"] = {"move_m@alien"},
- ["Armored"] = {"anim_group_move_ballistic"},
- ["Arrogant"] = {"move_f@arrogant@a"},
- ["Brave"] = {"move_m@brave"},
- ["Casual"] = {"move_m@casual@a"},
- ["Casual2"] = {"move_m@casual@b"},
- ["Casual3"] = {"move_m@casual@c"},
- ["Casual4"] = {"move_m@casual@d"},
- ["Casual5"] = {"move_m@casual@e"},
- ["Casual6"] = {"move_m@casual@f"},
- ["Chichi"] = {"move_f@chichi"},
- ["Confident"] = {"move_m@confident"},
- ["Cop"] = {"move_m@business@a"},
- ["Cop2"] = {"move_m@business@b"},
- ["Cop3"] = {"move_m@business@c"},
- ["Default Female"] = {"move_f@multiplayer"},
- ["Default Male"] = {"move_m@multiplayer"},
- ["Drunk"] = {"move_m@drunk@a"},
- ["Drunk"] = {"move_m@drunk@slightlydrunk"},
- ["Drunk2"] = {"move_m@buzzed"},
- ["Drunk3"] = {"move_m@drunk@verydrunk"},
- ["Femme"] = {"move_f@femme@"},
- ["Fire"] = {"move_characters@franklin@fire"},
- ["Fire2"] = {"move_characters@michael@fire"},
- ["Fire3"] = {"move_m@fire"},
- ["Flee"] = {"move_f@flee@a"},
- ["Franklin"] = {"move_p_m_one"},
- ["Gangster"] = {"move_m@gangster@generic"},
- ["Gangster2"] = {"move_m@gangster@ng"},
- ["Gangster3"] = {"move_m@gangster@var_e"},
- ["Gangster4"] = {"move_m@gangster@var_f"},
- ["Gangster5"] = {"move_m@gangster@var_i"},
- ["Grooving"] = {"anim@move_m@grooving@"},
- ["Guard"] = {"move_m@prison_gaurd"},
- ["Handcuffs"] = {"move_m@prisoner_cuffed"},
- ["Heels"] = {"move_f@heels@c"},
- ["Heels2"] = {"move_f@heels@d"},
- ["Hiking"] = {"move_m@hiking"},
- ["Hipster"] = {"move_m@hipster@a"},
- ["Hobo"] = {"move_m@hobo@a"},
- ["Hurry"] = {"move_f@hurry@a"},
- ["Janitor"] = {"move_p_m_zero_janitor"},
- ["Janitor2"] = {"move_p_m_zero_slow"},
- ["Jog"] = {"move_m@jog@"},
- ["Lemar"] = {"anim_group_move_lemar_alley"},
- ["Lester"] = {"move_heist_lester"},
- ["Lester2"] = {"move_lester_caneup"},
- ["Maneater"] = {"move_f@maneater"},
- ["Michael"] = {"move_ped_bucket"},
- ["Money"] = {"move_m@money"},
- ["Muscle"] = {"move_m@muscle@a"},
- ["Posh"] = {"move_m@posh@"},
- ["Posh2"] = {"move_f@posh@"},
- ["Quick"] = {"move_m@quick"},
- ["Runner"] = {"female_fast_runner"},
- ["Sad"] = {"move_m@sad@a"},
- ["Sassy"] = {"move_m@sassy"},
- ["Sassy2"] = {"move_f@sassy"},
- ["Scared"] = {"move_f@scared"},
- ["Sexy"] = {"move_f@sexy@a"},
- ["Shady"] = {"move_m@shadyped@a"},
- ["Slow"] = {"move_characters@jimmy@slow@"},
- ["Swagger"] = {"move_m@swagger"},
- ["Tough"] = {"move_m@tough_guy@"},
- ["Tough2"] = {"move_f@tough_guy@"},
- ["Trash"] = {"clipset@move@trash_fast_turn"},
- ["Trash2"] = {"missfbi4prepp1_garbageman"},
- ["Trevor"] = {"move_p_m_two"},
- ["Wide"] = {"move_m@bag"},
- -- I cant get these to work for some reason, if anyone knows a fix lmk
- --["Caution"] = {"move_m@caution"},
- --["Chubby"] = {"anim@move_m@chubby@a"},
- --["Crazy"] = {"move_m@crazy"},
- --["Joy"] = {"move_m@joy@a"},
- --["Power"] = {"move_m@power"},
- --["Sad2"] = {"anim@move_m@depression@a"},
- --["Sad3"] = {"move_m@depression@b"},
- --["Sad4"] = {"move_m@depression@d"},
- --["Wading"] = {"move_m@wading"},
+ ["Alien"] = { "move_m@alien" },
+ ["Armored"] = { "anim_group_move_ballistic" },
+ ["Arrogant"] = { "move_f@arrogant@a" },
+ ["Brave"] = { "move_m@brave" },
+ ["Casual"] = { "move_m@casual@a" },
+ ["Casual 2"] = { "move_m@casual@b" },
+ ["Casual 3"] = { "move_m@casual@c" },
+ ["Casual 4"] = { "move_m@casual@d" },
+ ["Casual 5"] = { "move_m@casual@e" },
+ ["Casual 6"] = { "move_m@casual@f" },
+ ["Chichi"] = { "move_f@chichi" },
+ ["Confident"] = { "move_m@confident" },
+ ["Cop"] = { "move_m@business@a" },
+ ["Cop 2"] = { "move_m@business@b" },
+ ["Cop 3"] = { "move_m@business@c" },
+ ["Default Female"] = { "move_f@multiplayer" },
+ ["Default Male"] = { "move_m@multiplayer" },
+ ["Drunk"] = { "move_m@drunk@a" },
+ ["Drunk"] = { "move_m@drunk@slightlydrunk" },
+ ["Drunk 2"] = { "move_m@buzzed" },
+ ["Drunk 3"] = { "move_m@drunk@verydrunk" },
+ ["Femme"] = { "move_f@femme@" },
+ ["Fire"] = { "move_characters@franklin@fire" },
+ ["Fire2"] = { "move_characters@michael@fire" },
+ ["Fire3"] = { "move_m@fire" },
+ ["Flee"] = { "move_f@flee@a" },
+ ["Franklin"] = { "move_p_m_one" },
+ ["Gangster"] = { "move_m@gangster@generic" },
+ ["Gangster 2"] = { "move_m@gangster@ng" },
+ ["Gangster 3"] = { "move_m@gangster@var_e" },
+ ["Gangster 4"] = { "move_m@gangster@var_f" },
+ ["Gangster 5"] = { "move_m@gangster@var_i" },
+ ["Grooving"] = { "anim@move_m@grooving@" },
+ ["Guard"] = { "move_m@prison_gaurd" },
+ ["Handcuffs"] = { "move_m@prisoner_cuffed" },
+ ["Heels"] = { "move_f@heels@c" },
+ ["Heels 2"] = { "move_f@heels@d" },
+ ["Hiking"] = { "move_m@hiking" },
+ ["Hipster"] = { "move_m@hipster@a" },
+ ["Hobo"] = { "move_m@hobo@a" },
+ ["Hurry"] = { "move_f@hurry@a" },
+ ["Janitor"] = { "move_p_m_zero_janitor" },
+ ["Janitor 2"] = { "move_p_m_zero_slow" },
+ ["Jog"] = { "move_m@jog@" },
+ ["Lemar"] = { "anim_group_move_lemar_alley" },
+ ["Lester"] = { "move_heist_lester" },
+ ["Lester 2"] = { "move_lester_caneup" },
+ ["Maneater"] = { "move_f@maneater" },
+ ["Michael"] = { "move_ped_bucket" },
+ ["Money"] = { "move_m@money" },
+ ["Muscle"] = { "move_m@muscle@a" },
+ ["Posh"] = { "move_m@posh@" },
+ ["Posh 2"] = { "move_f@posh@" },
+ ["Quick"] = { "move_m@quick" },
+ ["Runner"] = { "female_fast_runner" },
+ ["Sad"] = { "move_m@sad@a" },
+ ["Sassy"] = { "move_m@sassy" },
+ ["Sassy 2"] = { "move_f@sassy" },
+ ["Scared"] = { "move_f@scared" },
+ ["Sexy"] = { "move_f@sexy@a" },
+ ["Shady"] = { "move_m@shadyped@a" },
+ ["Slow"] = { "move_characters@jimmy@slow@" },
+ ["Swagger"] = { "move_m@swagger" },
+ ["Tough"] = { "move_m@tough_guy@" },
+ ["Tough 2"] = { "move_f@tough_guy@" },
+ ["Trash"] = { "clipset@move@trash_fast_turn" },
+ ["Trash 2"] = { "missfbi4prepp1_garbageman" },
+ ["Trevor"] = { "move_p_m_two" },
+ ["Wide"] = { "move_m@bag" },
+ ["Chubby Male"] = { "move_chubby" }, --male
+ ["Chubby Female"] = { "move_f@chubby@a" }, --female
+ ["Depressed"] = { "move_m@depressed@a" },
+ ["Depressed 2"] = { "move_m@depressed@b" },
+
+
+
+
+ -- I cant get these to work for some reason, if anyone knows a fix, let me know
+
+
+
+
+ -- ["Caution"] = {"move_m@caution"}, -- breaks menu
+ --["Chubby"] = {"anim@move_m@chubby@a"},-- breaks menu
+ -- ["Crazy"] = {"move_m@crazy"},-- breaks menu
+ -- ["Joy"] = {"move_m@joy@a"},-- breaks menu
+ -- ["Power"] = {"move_m@power"},-- breaks menu
+ -- ["Wading"] = {"move_m@wading"} -- breaks menu
+ -- ["Depressed 3"] = { "move_m@depressed@c" }, -- breaks menu
+ -- ["Depressed 4"] = { "move_m@depressed@d" }, -- breaks menu
+ -- ["Caution"] = { "move_m@caution" },-- breaks menu
+ -- ["Crazy"] = { "move_m@crazy" }, -- breaks menu
+ -- ["Joy"] = { "move_m@joy@a" }, -- breaks menu
+ -- ["Power"] = { "move_m@power" }, -- breaks menu
+ -- ["Power Walk"] = { "move_m@powerwalk" }, -- breaks menu
+ -- ["Tired"] = { "move_m@tired" }, -- breaks menu
+ -- --["Wading"] = {"move_m@wading"},-- breaks menu
}
+
+--- SHARED EMOTES --- I can not figue these out and would love to get custom emotes shared. DullPear doesn't answer his DMs. RIP.
+
DP.Shared = {
- --[emotename] = {dictionary, animation, displayname, targetemotename, additionalanimationoptions}
- -- you dont have to specify targetemoteanem, if you do dont it will just play the same animation on both.
- -- targetemote is used for animations that have a corresponding animation to the other player.
- ["handshake"] = {"mp_ped_interaction", "handshake_guy_a", "Handshake", "handshake2", AnimationOptions =
- {
- EmoteMoving = true,
- EmoteDuration = 3000,
- SyncOffsetFront = 0.9
- }},
- ["handshake2"] = {"mp_ped_interaction", "handshake_guy_b", "Handshake 2", "handshake", AnimationOptions =
- {
- EmoteMoving = true,
- EmoteDuration = 3000
- }},
- ["hug"] = {"mp_ped_interaction", "kisses_guy_a", "Hug", "hug2", AnimationOptions =
- {
- EmoteMoving = false,
- EmoteDuration = 5000,
- SyncOffsetFront = 1.05,
- }},
- ["hug2"] = {"mp_ped_interaction", "kisses_guy_b", "Hug 2", "hug", AnimationOptions =
- {
- EmoteMoving = false,
- EmoteDuration = 5000,
- SyncOffsetFront = 1.13
- }},
- ["bro"] = {"mp_ped_interaction", "hugs_guy_a", "Bro", "bro2", AnimationOptions =
- {
+ --[emotename] = {dictionary, animation, displayname, targetemotename, additionalanimationoptions}
+ -- you dont have to specify targetemoteanem, if you do dont it will just play the same animation on both.
+ -- targetemote is used for animations that have a corresponding animation to the other player.
+ ["handshake"] = { "mp_ped_interaction", "handshake_guy_a", "Handshake", "Handshake2", AnimationOptions = {
+ EmoteMoving = true,
+ EmoteDuration = 3000,
+ SyncOffsetFront = 0.9
+ }},
+ ["handshake2"] = { "mp_ped_interaction", "handshake_guy_b", "Handshake 2", "handshake", AnimationOptions = {
+ EmoteMoving = true,
+ EmoteDuration = 3000
+ }},
+ ["hug"] = { "mp_ped_interaction", "kisses_guy_a", "Hug", "hug2", AnimationOptions = {
+ EmoteMoving = false,
+ EmoteDuration = 5000,
+ SyncOffsetFront = 1.05,
+ }},
+ ["hug2"] = { "mp_ped_interaction", "kisses_guy_b", "Hug 2", "hug", AnimationOptions = {
+ EmoteMoving = false,
+ EmoteDuration = 5000,
+ SyncOffsetFront = 1.13
+ }},
+ ["hug3"] = { "misscarsteal2chad_goodbye", "chad_armsaround_chad", "Hug 3", "hug4", AnimationOptions = {
+ EmoteMoving = false,
+ EmoteLoop = true,
+ SyncOffsetFront = 0.05,
+ }},
+ ["hug4"] = { "misscarsteal2chad_goodbye", "chad_armsaround_girl", "Hug 4", "hug3", AnimationOptions = {
+ EmoteMoving = false,
+ EmoteLoop = true,
+ SyncOffsetFront = 0.13
+ }},
+ ["kiss"] = { "mp_ped_interaction", "kisses_guy_a", "Kiss", "kiss2", AnimationOptions = {
+ EmoteMoving = false,
+ EmoteDuration = 5000,
+ SyncOffsetFront = 1.05,
+ }},
+ ["kiss2"] = { "mp_ped_interaction", "kisses_guy_b", "Kiss 2", "kiss", AnimationOptions = {
+ EmoteMoving = false,
+ EmoteDuration = 5000,
+ SyncOffsetFront = 1.13
+ }},
+ ["bro"] = { "mp_ped_interaction", "hugs_guy_a", "Bro", "bro2", AnimationOptions = {
SyncOffsetFront = 1.14
- }},
- ["bro2"] = {"mp_ped_interaction", "hugs_guy_b", "Bro 2", "bro", AnimationOptions =
- {
+ }},
+ ["bro2"] = { "mp_ped_interaction", "hugs_guy_b", "Bro 2", "bro", AnimationOptions = {
SyncOffsetFront = 1.14
- }},
- ["give"] = {"mp_common", "givetake1_a", "Give", "give2", AnimationOptions =
- {
- EmoteMoving = true,
- EmoteDuration = 2000
- }},
- ["give2"] = {"mp_common", "givetake1_b", "Give 2", "give", AnimationOptions =
- {
- EmoteMoving = true,
- EmoteDuration = 2000
- }},
- ["baseball"] = {"anim@arena@celeb@flat@paired@no_props@", "baseball_a_player_a", "Baseball", "baseballthrow"},
- ["baseballthrow"] = {"anim@arena@celeb@flat@paired@no_props@", "baseball_a_player_b", "Baseball Throw", "baseball"},
- ["stickup"] = {"random@countryside_gang_fight", "biker_02_stickup_loop", "Stick Up", "stickupscared", AnimationOptions =
- {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["stickupscared"] = {"missminuteman_1ig_2", "handsup_base", "Stickup Scared", "stickup", AnimationOptions =
- {
- EmoteMoving = true,
- EmoteLoop = true,
- }},
- ["punch"] = {"melee@unarmed@streamed_variations", "plyr_takedown_rear_lefthook", "Punch", "punched"},
- ["punched"] = {"melee@unarmed@streamed_variations", "victim_takedown_front_cross_r", "Punched", "punch"},
- ["headbutt"] = {"melee@unarmed@streamed_variations", "plyr_takedown_front_headbutt", "Headbutt", "headbutted"},
- ["headbutted"] = {"melee@unarmed@streamed_variations", "victim_takedown_front_headbutt", "Headbutted", "headbutt"},
- ["slap2"] = {"melee@unarmed@streamed_variations", "plyr_takedown_front_backslap", "Slap 2", "slapped2", AnimationOptions =
- {
- EmoteLoop = true,
- EmoteMoving = true,
- EmoteDuration = 2000,
- }},
- ["slap"] = {"melee@unarmed@streamed_variations", "plyr_takedown_front_slap", "Slap", "slapped", AnimationOptions =
- {
- EmoteLoop = true,
- EmoteMoving = true,
- EmoteDuration = 2000,
- }},
- ["slapped"] = {"melee@unarmed@streamed_variations", "victim_takedown_front_slap", "Slapped", "slap"},
- ["slapped2"] = {"melee@unarmed@streamed_variations", "victim_takedown_front_backslap", "Slapped 2", "slap2"},
+ }},
+ ["give"] = { "mp_common", "givetake1_a", "Give", "give2", AnimationOptions = {
+ EmoteMoving = true,
+ EmoteDuration = 2000
+ }},
+ ["give2"] = { "mp_common", "givetake1_b", "Give 2", "give", AnimationOptions = {
+ EmoteMoving = true,
+ EmoteDuration = 2000
+ }},
+ ["baseball"] = { "anim@arena@celeb@flat@paired@no_props@", "baseball_a_player_a", "Baseball", "baseballthrow" },
+ ["baseballthrow"] = { "anim@arena@celeb@flat@paired@no_props@", "baseball_a_player_b", "Baseball Throw", "baseball" },
+ ["stickup"] = { "random@countryside_gang_fight", "biker_02_stickup_loop", "Stick Up", "stickupscared", AnimationOptions = {
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["stickupscared"] = { "missminuteman_1ig_2", "handsup_base", "Stickup Scared", "stickup", AnimationOptions = {
+ EmoteMoving = true,
+ EmoteLoop = true,
+ }},
+ ["punch"] = { "melee@unarmed@streamed_variations", "plyr_takedown_rear_lefthook", "Punch", "punched" },
+ ["punched"] = { "melee@unarmed@streamed_variations", "victim_takedown_front_cross_r", "Punched", "punch" },
+ ["headbutt"] = { "melee@unarmed@streamed_variations", "plyr_takedown_front_headbutt", "Headbutt", "headbutted" },
+ ["headbutted"] = { "melee@unarmed@streamed_variations", "victim_takedown_front_headbutt", "Headbutted", "headbutt" },
+ ["slap2"] = { "melee@unarmed@streamed_variations", "plyr_takedown_front_backslap", "Slap 2", "slapped2", AnimationOptions = {
+ EmoteLoop = true,
+ EmoteMoving = true,
+ EmoteDuration = 2000,
+ }},
+ ["slap"] = { "melee@unarmed@streamed_variations", "plyr_takedown_front_slap", "Slap", "slapped", AnimationOptions = {
+ EmoteLoop = true,
+ EmoteMoving = true,
+ EmoteDuration = 2000,
+ }},
+ ["slapped"] = { "melee@unarmed@streamed_variations", "victim_takedown_front_slap", "Slapped", "slap" },
+ ["slapped2"] = { "melee@unarmed@streamed_variations", "victim_takedown_front_backslap", "Slapped 2", "slap2" },
+ ["receiveblowjob"] = { "misscarsteal2pimpsex", "pimpsex_punter", "Receive Blowjob", "giveblowjob", AnimationOptions = {
+ EmoteMoving = false,
+ EmoteDuration = 30000,
+ SyncOffsetFront = 0.63
+ }},
+ ["giveblowjob"] = { "misscarsteal2pimpsex", "pimpsex_hooker", "Give Blowjob", "receiveblowjob", AnimationOptions = {
+ EmoteMoving = false,
+ EmoteDuration = 30000,
+ SyncOffsetFront = 0.63
+ }},
+ ["streetsexmale"] = { "misscarsteal2pimpsex", "shagloop_pimp", "Street Sex Male", "streetsexfemale", AnimationOptions = {
+ EmoteMoving = false,
+ EmoteLoop = true,
+ SyncOffsetFront = 0.50
+ }},
+ ["streetsexfemale"] = { "misscarsteal2pimpsex", "shagloop_hooker", "Street Sex Female", "streetsexmale", AnimationOptions = {
+ EmoteMoving = false,
+ EmoteLoop = true,
+ SyncOffsetFront = 0.50
+ }},
+ ["carry"] = { "missfinale_c2mcs_1", "fin_c2_mcs_1_camman", "Carry", "carry2", AnimationOptions = {
+ EmoteMoving = true,
+ EmoteLoop = true,
+ } },
+ ["carry2"] = { "nm", "firemans_carry", "Be carried", "carry", AnimationOptions = {
+ EmoteMoving = false,
+ EmoteLoop = true,
+ Attachto = true,
+ bone = 0,
+ xPos = 0.27,
+ yPos = 0.10,
+ zPos = 0.60,
+ xRot = 0.0,
+ yRot = 0.0,
+ zRot = 10.0,
+ } },
}
+
+--- DANCING EMOTES, SOME WITH PROPS ---
+
+
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
- }},
- ["danceglowstick"] = {"anim@amb@nightclub@lazlow@hi_railing@", "ambclub_13_mi_hi_sexualgriding_laz", "Dance Glowsticks", AnimationOptions =
- {
- Prop = 'ba_prop_battle_glowstick_01',
- PropBone = 28422,
- PropPlacement = {0.0700,0.1400,0.0,-80.0,20.0},
- SecondProp = 'ba_prop_battle_glowstick_01',
- SecondPropBone = 60309,
- SecondPropPlacement = {0.0700,0.0900,0.0,-120.0,-20.0},
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["danceglowstick2"] = {"anim@amb@nightclub@lazlow@hi_railing@", "ambclub_12_mi_hi_bootyshake_laz", "Dance Glowsticks 2", AnimationOptions =
- {
- Prop = 'ba_prop_battle_glowstick_01',
- PropBone = 28422,
- PropPlacement = {0.0700,0.1400,0.0,-80.0,20.0},
- SecondProp = 'ba_prop_battle_glowstick_01',
- SecondPropBone = 60309,
- SecondPropPlacement = {0.0700,0.0900,0.0,-120.0,-20.0},
- EmoteLoop = true,
- }},
- ["danceglowstick3"] = {"anim@amb@nightclub@lazlow@hi_railing@", "ambclub_09_mi_hi_bellydancer_laz", "Dance Glowsticks 3", AnimationOptions =
- {
- Prop = 'ba_prop_battle_glowstick_01',
- PropBone = 28422,
- PropPlacement = {0.0700,0.1400,0.0,-80.0,20.0},
- SecondProp = 'ba_prop_battle_glowstick_01',
- SecondPropBone = 60309,
- SecondPropPlacement = {0.0700,0.0900,0.0,-120.0,-20.0},
- EmoteLoop = true,
- }},
- ["dancehorse"] = {"anim@amb@nightclub@lazlow@hi_dancefloor@", "dancecrowd_li_15_handup_laz", "Dance Horse", AnimationOptions =
- {
- Prop = "ba_prop_battle_hobby_horse",
- PropBone = 28422,
- PropPlacement = {0.0, 0.0, 0.0, 0.0, 0.0, 0.0},
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["dancehorse2"] = {"anim@amb@nightclub@lazlow@hi_dancefloor@", "crowddance_hi_11_handup_laz", "Dance Horse 2", AnimationOptions =
- {
- Prop = "ba_prop_battle_hobby_horse",
- PropBone = 28422,
- PropPlacement = {0.0, 0.0, 0.0, 0.0, 0.0, 0.0},
- EmoteLoop = true,
- }},
- ["dancehorse3"] = {"anim@amb@nightclub@lazlow@hi_dancefloor@", "dancecrowd_li_11_hu_shimmy_laz", "Dance Horse 3", AnimationOptions =
- {
- Prop = "ba_prop_battle_hobby_horse",
- PropBone = 28422,
- PropPlacement = {0.0, 0.0, 0.0, 0.0, 0.0, 0.0},
- 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@casino@mini@dance@dance_solo@female@var_a@", "med_center", "Dance 5", 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,
+ }},
+ ["dance9"] = { "anim@amb@nightclub@mini@dance@dance_solo@female@var_a@", "med_center_up", "Dance 9", AnimationOptions = {
+ 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,
+ }},
+ ["danceclub"] = { "anim@amb@nightclub_island@dancers@beachdance@", "hi_idle_a_m03", "Dance Club", AnimationOptions = {
+ EmoteLoop = true
+ }},
+ ["danceclubb"] = { "anim@amb@nightclub_island@dancers@beachdance@", "hi_idle_a_m05", "Dance Club 2", AnimationOptions = {
+ EmoteLoop = true
+ }},
+ ["danceclubc"] = { "anim@amb@nightclub_island@dancers@beachdance@", "hi_idle_a_m02", "Dance Club 3", AnimationOptions = {
+ EmoteLoop = true
+ }},
+ ["danceclubd"] = { "anim@amb@nightclub_island@dancers@beachdance@", "hi_idle_b_f01", "Dance Club 4", AnimationOptions = {
+ EmoteLoop = true
+ }},
+ ["danceclube"] = { "anim@amb@nightclub_island@dancers@club@", "hi_idle_a_f02", "Dance Club 5", AnimationOptions = {
+ EmoteLoop = true
+ }},
+ ["danceclubf"] = { "anim@amb@nightclub_island@dancers@club@", "hi_idle_b_m03", "Dance Club 6", AnimationOptions = {
+ EmoteLoop = true
+ }},
+ ["danceclubg"] = { "anim@amb@nightclub_island@dancers@club@", "hi_idle_d_f01", "Dance Club 7", AnimationOptions = {
+ EmoteLoop = true
+ }},
+ ["danceclubh"] = { "anim@amb@nightclub_island@dancers@crowddance_facedj@", "mi_dance_facedj_17_v2_male^4", "Dance Club 8 ", AnimationOptions = {
+ EmoteLoop = true,
+ }},
+ ["danceclubi"] = { "anim@amb@nightclub_island@dancers@crowddance_single_props@", "mi_dance_prop_13_v1_male^3", "Dance Club 9 ", AnimationOptions = {
+ EmoteLoop = true,
+ }},
+ ["danceclubj"] = { "anim@amb@nightclub_island@dancers@crowddance_groups@groupd@", "mi_dance_crowd_13_v2_male^1", "Dance Club 10 ", AnimationOptions = {
+ EmoteLoop = true,
+ }},
+ ["danceclubk"] = { "anim@amb@nightclub_island@dancers@crowddance_facedj@", "mi_dance_facedj_15_v2_male^4", "Dance Club 11 ", AnimationOptions = {
+ EmoteLoop = true,
+ }},
+ ["danceclubl"] = { "anim@amb@nightclub@mini@dance@dance_solo@female@var_a@", "high_center_up", "Dance Club 12", AnimationOptions = {
+ EmoteLoop = true,
+ }},
+ ["danceclubm"] = { "anim@amb@nightclub_island@dancers@crowddance_facedj@", "hi_dance_facedj_hu_15_v2_male^5", "Dance Club 13 ", AnimationOptions = {
+ EmoteLoop = true,
+ }},
+ ["danceclubn"] = { "anim@amb@nightclub_island@dancers@crowddance_facedj@", "hi_dance_facedj_hu_17_male^5", "Dance Club 14 ", AnimationOptions = {
+ EmoteLoop = true,
+ }},
+ ["danceclubo"] = { "anim@amb@nightclub@mini@dance@dance_solo@shuffle@", "high_center", "Dance Club 15 ", AnimationOptions = {
+ EmoteLoop = true,
+ }},
+ ["danceclubp"] = { "anim@amb@nightclub@mini@dance@dance_solo@shuffle@", "high_left_down", "Dance Club 16 ", AnimationOptions = {
+ EmoteLoop = true,
+ }},
+ ["dancedrink"] = { "anim@amb@nightclub_island@dancers@beachdanceprop@", "mi_idle_c_m01", "Dance Drink (Beer)", AnimationOptions = {
+ Prop = 'prop_beer_amopen',
+ PropBone = 28422,
+ PropPlacement = { 0.0, 0.00, 0.0, 0.0, 0.0, 20.00 },
+ EmoteLoop = true,
+ EmoteMoving = false,
+ }},
+ ["dancedrink2"] = { "anim@amb@nightclub_island@dancers@beachdanceprop@", "mi_loop_f1", "Dance Drink 2 (Wine)", AnimationOptions = {
+ Prop = 'p_wine_glass_s',
+ PropBone = 28422,
+ PropPlacement = { 0.0, 0.0, -0.0900, 0.0, 0.0, 0.00 },
+ EmoteLoop = true,
+ EmoteMoving = false,
+ }},
+ ["dancedrink3"] = { "anim@amb@nightclub_island@dancers@beachdanceprop@", "mi_loop_m04", "Dance Drink 3 (Whiskey)", AnimationOptions = {
+ Prop = 'ba_prop_battle_whiskey_opaque_s',
+ PropBone = 28422,
+ PropPlacement = { -0.0100, 0.00, 0.0, 0.0, 0.0, 10.00 },
+ EmoteLoop = true,
+ EmoteMoving = false,
+ }},
+ ["dancedrink4"] = { "anim@amb@nightclub_island@dancers@beachdanceprops@male@", "mi_idle_b_m04", "Dance Drink 4 (Whiskey)", AnimationOptions = {
+ Prop = 'ba_prop_battle_whiskey_opaque_s',
+ PropBone = 28422,
+ PropPlacement = { -0.0100, 0.00, 0.0, 0.0, 0.0, 10.00 },
+ EmoteLoop = true,
+ EmoteMoving = false,
+ }},
+ ["dancedrink5"] = { "anim@amb@nightclub_island@dancers@crowddance_single_props@", "hi_dance_prop_09_v1_female^3", "Dance Drink 5 (Wine)", AnimationOptions = {
+ Prop = 'p_wine_glass_s',
+ PropBone = 28422,
+ PropPlacement = { 0.0, 0.0, -0.0900, 0.0, 0.0, 0.00 },
+ EmoteLoop = true,
+ EmoteMoving = false,
+ }},
+ ["dancedrink6"] = { "anim@amb@nightclub_island@dancers@crowddance_single_props@", "hi_dance_prop_09_v1_male^3", "Dance Drink 6 (Beer)", AnimationOptions = {
+ Prop = 'prop_beer_logopen',
+ PropBone = 28422,
+ PropPlacement = { 0.0090, 0.0010, -0.0310, 180.0, 180.0, -69.99 },
+ EmoteLoop = true,
+ EmoteMoving = false,
+ }},
+ ["dancedrink7"] = { "anim@amb@nightclub_island@dancers@crowddance_single_props@", "hi_dance_prop_11_v1_female^3", "Dance Drink 7 (Wine)", AnimationOptions = {
+ Prop = 'p_wine_glass_s',
+ PropBone = 28422,
+ PropPlacement = { 0.0, 0.0, -0.0900, 0.0, 0.0, 0.00 },
+ EmoteLoop = true,
+ EmoteMoving = false,
+ }},
+ ["dancedrink8"] = { "anim@amb@nightclub_island@dancers@crowddance_single_props@", "hi_dance_prop_11_v1_female^1", "Dance Drink 8 (Wine)", AnimationOptions = {
+ Prop = 'p_wine_glass_s',
+ PropBone = 28422,
+ PropPlacement = { 0.0, 0.0, -0.0900, 0.0, 0.0, 0.00 },
+ EmoteLoop = true,
+ EmoteMoving = false,
+ }},
+ ["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,
+ }},
+ ["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,
+ }},
+ ["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,
+ }},
+ ["dancesilly7"] = { "anim@amb@casino@mini@dance@dance_solo@female@var_b@", "med_center", "Dance Silly 7", AnimationOptions = {
+ EmoteLoop = true
+ }},
+ ["dancesilly8"] = { "anim@amb@casino@mini@dance@dance_solo@female@var_b@", "high_center", "Dance Silly 8", AnimationOptions = {
+ EmoteLoop = true
+ }},
+ ["dancesilly9"] = { "anim@mp_player_intcelebrationfemale@the_woogie", "the_woogie", "Dance Silly 9", AnimationOptions = {
+ EmoteLoop = true
+ }},
+ ["danceglowstick"] = { "anim@amb@nightclub@lazlow@hi_railing@", "ambclub_13_mi_hi_sexualgriding_laz", "Dance Glowsticks", AnimationOptions = {
+ Prop = 'ba_prop_battle_glowstick_01',
+ PropBone = 28422,
+ PropPlacement = { 0.0700, 0.1400, 0.0, -80.0, 20.0 },
+ SecondProp = 'ba_prop_battle_glowstick_01',
+ SecondPropBone = 60309,
+ SecondPropPlacement = { 0.0700, 0.0900, 0.0, -120.0, -20.0 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["danceglowstick2"] = { "anim@amb@nightclub@lazlow@hi_railing@", "ambclub_12_mi_hi_bootyshake_laz", "Dance Glowsticks 2", AnimationOptions = {
+ Prop = 'ba_prop_battle_glowstick_01',
+ PropBone = 28422,
+ PropPlacement = { 0.0700, 0.1400, 0.0, -80.0, 20.0 },
+ SecondProp = 'ba_prop_battle_glowstick_01',
+ SecondPropBone = 60309,
+ SecondPropPlacement = { 0.0700, 0.0900, 0.0, -120.0, -20.0 },
+ EmoteLoop = true,
+ }},
+ ["danceglowstick3"] = { "anim@amb@nightclub@lazlow@hi_railing@", "ambclub_09_mi_hi_bellydancer_laz", "Dance Glowsticks 3", AnimationOptions = {
+ Prop = 'ba_prop_battle_glowstick_01',
+ PropBone = 28422,
+ PropPlacement = { 0.0700, 0.1400, 0.0, -80.0, 20.0 },
+ SecondProp = 'ba_prop_battle_glowstick_01',
+ SecondPropBone = 60309,
+ SecondPropPlacement = { 0.0700, 0.0900, 0.0, -120.0, -20.0 },
+ EmoteLoop = true,
+ }},
+ ["dancehorse"] = { "anim@amb@nightclub@lazlow@hi_dancefloor@", "dancecrowd_li_15_handup_laz", "Dance Horse", AnimationOptions = {
+ Prop = "ba_prop_battle_hobby_horse",
+ PropBone = 28422,
+ PropPlacement = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["dancehorse2"] = { "anim@amb@nightclub@lazlow@hi_dancefloor@", "crowddance_hi_11_handup_laz", "Dance Horse 2", AnimationOptions = {
+ Prop = "ba_prop_battle_hobby_horse",
+ PropBone = 28422,
+ PropPlacement = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 },
+ EmoteLoop = true,
+ }},
+ ["dancehorse3"] = { "anim@amb@nightclub@lazlow@hi_dancefloor@", "dancecrowd_li_11_hu_shimmy_laz", "Dance Horse 3", AnimationOptions = {
+ Prop = "ba_prop_battle_hobby_horse",
+ PropBone = 28422,
+ PropPlacement = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 },
+ EmoteLoop = true,
+ }},
+ ["dj"] = { "anim@amb@nightclub@djs@dixon@", "dixn_dance_cntr_open_dix", "DJ", AnimationOptions = {
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["dj2"] = { "anim@amb@nightclub@djs@solomun@", "sol_idle_ctr_mid_a_sol", "DJ 2", AnimationOptions = {
+ EmoteLoop = true,
+ EmoteMoving = false,
+ }},
+ ["dj3"] = { "anim@amb@nightclub@djs@solomun@", "sol_dance_l_sol", "DJ 3", AnimationOptions = {
+ EmoteLoop = true,
+ EmoteMoving = false,
+ }},
+ ["dj4"] = { "anim@amb@nightclub@djs@black_madonna@", "dance_b_idle_a_blamadon", "DJ 4", AnimationOptions = {
+ EmoteLoop = true,
+ EmoteMoving = false,
+ }},
+ ["dj5"] = { "anim@amb@nightclub@djs@dixon@", "dixn_end_dix", "DJ 5", AnimationOptions = {
+ EmoteLoop = true,
+ EmoteMoving = false,
+ }},
+ ["dj5"] = { "anim@amb@nightclub@djs@dixon@", "dixn_idle_cntr_a_dix", "DJ 5", AnimationOptions = {
+ EmoteLoop = true,
+ EmoteMoving = false,
+ }},
+ ["dj6"] = { "anim@amb@nightclub@djs@dixon@", "dixn_idle_cntr_b_dix", "DJ 6", AnimationOptions = {
+ EmoteLoop = true,
+ EmoteMoving = false,
+ }},
+ ["dj7"] = { "anim@amb@nightclub@djs@dixon@", "dixn_idle_cntr_g_dix", "DJ 7", AnimationOptions = {
+ EmoteLoop = true,
+ EmoteMoving = false,
+ }},
+ ["dj8"] = { "anim@amb@nightclub@djs@dixon@", "dixn_idle_cntr_gb_dix", "DJ 8", AnimationOptions = {
+ EmoteLoop = true,
+ EmoteMoving = false,
+ }},
+ ["dj9"] = { "anim@amb@nightclub@djs@dixon@", "dixn_sync_cntr_j_dix", "DJ 9", AnimationOptions = {
+ EmoteLoop = true,
+ EmoteMoving = false,
+ }},
+ ["twerk"] = { "switch@trevor@mocks_lapdance", "001443_01_trvs_28_idle_stripper", "Twerk", AnimationOptions = {
+ EmoteLoop = true,
+ }},
+ ["lapdance"] = { "mp_safehouse", "lap_dance_girl", "Lapdance" },
+ ["lapdance2"] = { "mini@strip_club@private_dance@idle", "priv_dance_idle", "Lapdance 2", AnimationOptions = {
+ EmoteLoop = true,
+ }},
+ ["lapdance3"] = { "mini@strip_club@private_dance@part1", "priv_dance_p1", "Lapdance 3", AnimationOptions = {
+ EmoteLoop = true,
+ }},
+ ["lapdance4"] = { "mini@strip_club@private_dance@part2", "priv_dance_p2", "Lapdance 4", AnimationOptions = {
+ EmoteLoop = true,
+ }},
+ ["lapdance5"] = { "mini@strip_club@private_dance@part3", "priv_dance_p3", "Lapdance 5", AnimationOptions = {
+ EmoteLoop = true,
+ }},
+ ["lapdance6"] = { "oddjobs@assassinate@multi@yachttarget@lapdance", "yacht_ld_f", "Lapdance 6", AnimationOptions = {
+ EmoteLoop = true,
+ }},
+ ["lapdancewith"] = { "mini@strip_club@lap_dance_2g@ld_2g_p3", "ld_2g_p3_s2", "Lapdance With", AnimationOptions = {
+ EmoteLoop = true,
+ }},
+ ["lapdancewith2"] = { "mini@strip_club@lap_dance_2g@ld_2g_p2", "ld_2g_p2_s2", "Lapdance With2", AnimationOptions = {
+ EmoteLoop = true,
+ }},
+ ["lapdancewith3"] = { "mini@strip_club@lap_dance_2g@ld_2g_p1", "ld_2g_p1_s2", "Lapdance With3", AnimationOptions = {
+ EmoteLoop = true,
+ }},
+ ["lapchair"] = { "mini@strip_club@lap_dance@ld_girl_a_song_a_p1", "ld_girl_a_song_a_p1_f", "Lap Chair", AnimationOptions = {
+ EmoteLoop = true,
+ }},
+ ["lapchair2"] = { "mini@strip_club@lap_dance@ld_girl_a_song_a_p2", "ld_girl_a_song_a_p2_f", "Lap Chair2", AnimationOptions = {
+ EmoteLoop = true,
+ }},
+ ["lapchair3"] = { "mini@strip_club@lap_dance@ld_girl_a_song_a_p3", "ld_girl_a_song_a_p3_f", "Lap Chair3", AnimationOptions = {
+ EmoteLoop = true,
+ }},
+ ["salsa"] = { "anim@mp_player_intuppersalsa_roll", "idle_a", "Salso Roll", AnimationOptions = {
+ EmoteLoop = true,
+ }},
+ ["dancecrankdat"] = { "anim@amb@nightclub@mini@dance@dance_solo@shuffle@", "high_right_up", "Dance Crank Dat", AnimationOptions = {
+ EmoteLoop = true,
+ }},
+ ["dancecrankdat2"] = { "anim@amb@nightclub@mini@dance@dance_solo@shuffle@", "high_right_down", "Dance Crank Dat 2", AnimationOptions = {
+ EmoteLoop = true,
+ }},
+ ["dancemonkey"] = { "anim@amb@nightclub@mini@dance@dance_solo@techno_monkey@", "high_center", "Monkey Dance ", AnimationOptions = {
+ EmoteLoop = true,
+ }},
+ ["dancemonkey2"] = { "anim@amb@nightclub@mini@dance@dance_solo@techno_monkey@", "high_center_down", "Monkey Dance 2 ", AnimationOptions = {
+ EmoteLoop = true,
+ }},
+ ["dancemonkey3"] = { "anim@amb@nightclub@mini@dance@dance_solo@techno_monkey@", "med_center_down", "Monkey Dance 3 ", AnimationOptions = {
+ EmoteLoop = true,
+ }},
+ ["boxdance"] = { "anim@amb@nightclub@mini@dance@dance_solo@beach_boxing@", "med_right_down", "Boxing Dance Solo ", AnimationOptions = {
+ EmoteLoop = true,
+ }},
+ ["dancehiphop"] = { "anim@amb@nightclub@mini@dance@dance_paired@dance_d@", "ped_a_dance_idle", "Hip Hop Dance ", AnimationOptions = {
+ EmoteLoop = true,
+ }},
+ ["dancehiphop2"] = { "anim@amb@nightclub@mini@dance@dance_paired@dance_b@", "ped_a_dance_idle", "Hip Hop Dance 2 ", AnimationOptions = {
+ EmoteLoop = true,
+ }},
+ ["dancehiphop3"] = { "anim@amb@nightclub@mini@dance@dance_paired@dance_a@", "ped_a_dance_idle", "Hip Hop Dance 3 ", AnimationOptions = {
+ EmoteLoop = true,
+ }},
+ ["dancepride"] = { "anim@amb@nightclub@lazlow@hi_railing@", "ambclub_09_mi_hi_bellydancer_laz", "Dance Pride A", AnimationOptions = {
+ Prop = 'lilprideflag1', --- Rainbow
+ PropBone = 18905,
+ PropPlacement = { 0.0900, 0.0000, 0.0300, -39.911, 93.9166, -5.8062 },
+ SecondProp = 'lilprideflag1',
+ SecondPropBone = 57005,
+ SecondPropPlacement = { 0.0900, -0.0200, -0.0300, -90.2454, 5.7068, -28.7797 },
+ EmoteLoop = true,
+ EmoteMoving = false,
+ }},
+ ["danceprideb"] = { "anim@amb@nightclub@lazlow@hi_railing@", "ambclub_09_mi_hi_bellydancer_laz", "Dance Pride B - LGBTQIA", AnimationOptions = {
+ Prop = 'lilprideflag2', --- LGBTQIA
+ PropBone = 18905,
+ PropPlacement = { 0.0900, 0.0000, 0.0300, -39.911, 93.9166, -5.8062 },
+ SecondProp = 'lilprideflag2',
+ SecondPropBone = 57005,
+ SecondPropPlacement = { 0.0900, -0.0200, -0.0300, -90.2454, 5.7068, -28.7797 },
+ EmoteLoop = true,
+ EmoteMoving = false,
+ }},
+ ["dancepridec"] = { "anim@amb@nightclub@lazlow@hi_railing@", "ambclub_09_mi_hi_bellydancer_laz", "Dance Pride C - Bisexual", AnimationOptions = {
+ Prop = 'lilprideflag3', --- Bisexual
+ PropBone = 18905,
+ PropPlacement = { 0.0900, 0.0000, 0.0300, -39.911, 93.9166, -5.8062 },
+ SecondProp = 'lilprideflag3',
+ SecondPropBone = 57005,
+ SecondPropPlacement = { 0.0900, -0.0200, -0.0300, -90.2454, 5.7068, -28.7797 },
+ EmoteLoop = true,
+ EmoteMoving = false,
+ }},
+ ["dancepridec"] = { "anim@amb@nightclub@lazlow@hi_railing@", "ambclub_09_mi_hi_bellydancer_laz", "Dance Pride C - Lesbian", AnimationOptions = {
+ Prop = 'lilprideflag4', --- Lesbian
+ PropBone = 18905,
+ PropPlacement = { 0.0900, 0.0000, 0.0300, -39.911, 93.9166, -5.8062 },
+ SecondProp = 'lilprideflag4',
+ SecondPropBone = 57005,
+ SecondPropPlacement = { 0.0900, -0.0200, -0.0300, -90.2454, 5.7068, -28.7797 },
+ EmoteLoop = true,
+ EmoteMoving = false,
+ }},
+ ["danceprided"] = { "anim@amb@nightclub@lazlow@hi_railing@", "ambclub_09_mi_hi_bellydancer_laz", "Dance Pride D - Pansexual", AnimationOptions = {
+ Prop = 'lilprideflag5', --- Pansexual
+ PropBone = 18905,
+ PropPlacement = { 0.0900, 0.0000, 0.0300, -39.911, 93.9166, -5.8062 },
+ SecondProp = 'lilprideflag5',
+ SecondPropBone = 57005,
+ SecondPropPlacement = { 0.0900, -0.0200, -0.0300, -90.2454, 5.7068, -28.7797 },
+ EmoteLoop = true,
+ EmoteMoving = false,
+ }},
+ ["dancepridee"] = { "anim@amb@nightclub@lazlow@hi_railing@", "ambclub_09_mi_hi_bellydancer_laz", "Dance Pride E - Transexual", AnimationOptions = {
+ Prop = 'lilprideflag6', --- Transexual
+ PropBone = 18905,
+ PropPlacement = { 0.0900, 0.0000, 0.0300, -39.911, 93.9166, -5.8062 },
+ SecondProp = 'lilprideflag6',
+ SecondPropBone = 57005,
+ SecondPropPlacement = { 0.0900, -0.0200, -0.0300, -90.2454, 5.7068, -28.7797 },
+ EmoteLoop = true,
+ EmoteMoving = false,
+ }},
+ ["dancepridef"] = { "anim@amb@nightclub@lazlow@hi_railing@", "ambclub_09_mi_hi_bellydancer_laz", "Dance Pride F - Non Binary", AnimationOptions = {
+ Prop = 'lilprideflag7', --- Lesbian
+ PropBone = 18905,
+ PropPlacement = { 0.0900, 0.0000, 0.0300, -39.911, 93.9166, -5.8062 },
+ SecondProp = 'lilprideflag7',
+ SecondPropBone = 57005,
+ SecondPropPlacement = { 0.0900, -0.0200, -0.0300, -90.2454, 5.7068, -28.7797 },
+ EmoteLoop = true,
+ EmoteMoving = false,
+ }},
+ ["danceprideg"] = { "anim@amb@nightclub@lazlow@hi_railing@", "ambclub_09_mi_hi_bellydancer_laz", "Dance Pride G - Asexual", AnimationOptions = {
+ Prop = 'lilprideflag8', --- Asexual
+ PropBone = 18905,
+ PropPlacement = { 0.0900, 0.0000, 0.0300, -39.911, 93.9166, -5.8062 },
+ SecondProp = 'lilprideflag8',
+ SecondPropBone = 57005,
+ SecondPropPlacement = { 0.0900, -0.0200, -0.0300, -90.2454, 5.7068, -28.7797 },
+ EmoteLoop = true,
+ EmoteMoving = false,
+ }},
+ ["danceprideh"] = { "anim@amb@nightclub@lazlow@hi_railing@", "ambclub_09_mi_hi_bellydancer_laz", "Dance Pride H - Straight Ally", AnimationOptions = {
+ Prop = 'lilprideflag9', --- Straight Ally
+ PropBone = 18905,
+ PropPlacement = { 0.0900, 0.0000, 0.0300, -39.911, 93.9166, -5.8062 },
+ SecondProp = 'lilprideflag9',
+ SecondPropBone = 57005,
+ SecondPropPlacement = { 0.0900, -0.0200, -0.0300, -90.2454, 5.7068, -28.7797 },
+ EmoteLoop = true,
+ EmoteMoving = false,
+ }},
}
+
+---- ANIMAL EMOTES ----
+---- BIG DOG ----
+
+DP.AnimalEmotes = {
+ ["bdogbark"] = { "creatures@rottweiler@amb@world_dog_barking@idle_a", "idle_a", "Bark (big dog)", AnimationOptions = {
+ EmoteLoop = true
+ }},
+ ["bdogbeg"] = { "creatures@rottweiler@tricks@", "beg_loop", "Beg (big dog)", AnimationOptions = {
+ EmoteLoop = true
+ }},
+ ["bdogbeg2"] = { "creatures@rottweiler@tricks@", "paw_right_loop", "Beg 2 (big dog)", AnimationOptions = {
+ EmoteLoop = true
+ }},
+ ["bdogdump"] = { "creatures@rottweiler@move", "dump_loop", "Dump (big dog)", AnimationOptions = {
+ Prop = 'prop_big_shit_02',
+ PropBone = 51826,
+ PropPlacement = { 0.0, 0.2000, -0.4600, 0.0, -20.00, 0.0 },
+ EmoteLoop = true,
+ EmoteMoving = false,
+ }},
+ ["bdogitch"] = { "creatures@rottweiler@amb@world_dog_sitting@idle_a", "idle_a", "Itch (big dog)", AnimationOptions = {
+ EmoteDuration = 2000
+ }},
+ ["bdogsleep"] = { "creatures@rottweiler@amb@sleep_in_kennel@", "sleep_in_kennel", "Sleep (big dog)", AnimationOptions = {
+ EmoteLoop = true
+ }},
+ ["bdogsit"] = { "creatures@rottweiler@amb@world_dog_sitting@base", "base", "Sit (big dog)", AnimationOptions = {
+ EmoteLoop = true
+ }},
+ ["bdogpee"] = { "creatures@rottweiler@move", "pee_left_idle", "Pee (big dog)", AnimationOptions = {
+ EmoteLoop = false
+ }},
+ ["bdogpee2"] = { "creatures@rottweiler@move", "pee_right_idle", "Pee 2 (big dog)", AnimationOptions = {
+ EmoteLoop = false
+ }},
+ ["sdogbark"] = { "creatures@pug@amb@world_dog_barking@idle_a", "idle_a", "Bark (small dog)", AnimationOptions = {
+ EmoteLoop = true
+ }},
+ ["bdogglowa"] = { "creatures@rottweiler@amb@world_dog_sitting@base", "nill", "Glow Stick (big dog)", AnimationOptions = {
+ Prop = 'ba_prop_battle_glowstick_01',
+ PropBone = 31086,
+ PropPlacement = { 0.2000, 0.000, -0.0600, 90.00, 0.00, 0.00 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["bdogglowb"] = { "creatures@rottweiler@amb@world_dog_sitting@base", "base", "Glow Stick Sitting (big dog)", AnimationOptions = {
+ Prop = 'ba_prop_battle_glowstick_01',
+ PropBone = 31086,
+ PropPlacement = { 0.2000, 0.000, -0.0600, 90.00, 0.00, 0.00 },
+ EmoteLoop = true,
+ EmoteMoving = false,
+ }},
+ ["bdogpridea"] = { "creatures@rottweiler@amb@world_dog_sitting@base", "base", "Sit Pride A (big dog)", AnimationOptions = {
+ Prop = 'lilprideflag1', ---Rainbow
+ PropBone = 31086,
+ PropPlacement = { 0.1900, 0.0000, -0.0500, 100.0000, 90.0000, 0.0000 },
+ SecondProp = 'lilprideflag1',
+ SecondPropBone = 31086,
+ SecondPropPlacement = { 0.1940, 0.020, -0.0500, -90.0000, -90.0000, 0.0000 },
+ EmoteLoop = true,
+ EmoteMoving = false,
+ }},
+ ["bdogprideb"] = { "creatures@rottweiler@amb@world_dog_sitting@base", "base", "Sit Pride B - LGBTQIA (big dog)", AnimationOptions = {
+ Prop = 'lilprideflag2', --LGBTQIA
+ PropBone = 31086,
+ PropPlacement = { 0.1900, 0.0000, -0.0500, 100.0000, 90.0000, 0.0000 },
+ SecondProp = 'lilprideflag2',
+ SecondPropBone = 31086,
+ SecondPropPlacement = { 0.1940, 0.020, -0.0500, -90.0000, -90.0000, 0.0000 },
+ EmoteLoop = true,
+ EmoteMoving = false,
+ }},
+ ["bdogpridec"] = { "creatures@rottweiler@amb@world_dog_sitting@base", "base", "Sit Pride C - Bisexual (big dog)", AnimationOptions = {
+ Prop = 'lilprideflag3', --Bisexual
+ PropBone = 31086,
+ PropPlacement = { 0.1900, 0.0000, -0.0500, 100.0000, 90.0000, 0.0000 },
+ SecondProp = 'lilprideflag3',
+ SecondPropBone = 31086,
+ SecondPropPlacement = { 0.1940, 0.020, -0.0500, -90.0000, -90.0000, 0.0000 },
+ EmoteLoop = true,
+ EmoteMoving = false,
+ }},
+ ["bdogprided"] = { "creatures@rottweiler@amb@world_dog_sitting@base", "base", "Sit Pride D - Lesbian (big dog)", AnimationOptions = {
+ Prop = 'lilprideflag4', --Lesbian
+ PropBone = 31086,
+ PropPlacement = { 0.1900, 0.0000, -0.0500, 100.0000, 90.0000, 0.0000 },
+ SecondProp = 'lilprideflag4',
+ SecondPropBone = 31086,
+ SecondPropPlacement = { 0.1940, 0.020, -0.0500, -90.0000, -90.0000, 0.0000 },
+ EmoteLoop = true,
+ EmoteMoving = false,
+ }},
+ ["bdogpridee"] = { "creatures@rottweiler@amb@world_dog_sitting@base", "base", "Sit Pride E - Pansexual (big dog)", AnimationOptions = {
+ Prop = 'lilprideflag5', --Pansexual
+ PropBone = 31086,
+ PropPlacement = { 0.1900, 0.0000, -0.0500, 100.0000, 90.0000, 0.0000 },
+ SecondProp = 'lilprideflag5',
+ SecondPropBone = 31086,
+ SecondPropPlacement = { 0.1940, 0.020, -0.0500, -90.0000, -90.0000, 0.0000 },
+ EmoteLoop = true,
+ EmoteMoving = false,
+ }},
+ ["bdogpridef"] = { "creatures@rottweiler@amb@world_dog_sitting@base", "base", "Sit Pride F - Transexual (big dog)", AnimationOptions = {
+ Prop = 'lilprideflag6', --Transexual
+ PropBone = 31086,
+ PropPlacement = { 0.1900, 0.0000, -0.0500, 100.0000, 90.0000, 0.0000 },
+ SecondProp = 'lilprideflag6',
+ SecondPropBone = 31086,
+ SecondPropPlacement = { 0.1940, 0.020, -0.0500, -90.0000, -90.0000, 0.0000 },
+ EmoteLoop = true,
+ EmoteMoving = false,
+ }},
+ ["bdogprideg"] = { "creatures@rottweiler@amb@world_dog_sitting@base", "base", "Sit Pride G - Non Binary (big dog)", AnimationOptions = {
+ Prop = 'lilprideflag7', --Non Binary
+ PropBone = 31086,
+ PropPlacement = { 0.1900, 0.0000, -0.0500, 100.0000, 90.0000, 0.0000 },
+ SecondProp = 'lilprideflag7',
+ SecondPropBone = 31086,
+ SecondPropPlacement = { 0.1940, 0.020, -0.0500, -90.0000, -90.0000, 0.0000 },
+ EmoteLoop = true,
+ EmoteMoving = false,
+ }},
+ ["bdogprideh"] = { "creatures@rottweiler@amb@world_dog_sitting@base", "base", "Sit Pride H - Asexual (big dog)", AnimationOptions = {
+ Prop = 'lilprideflag8', --Non Binary
+ PropBone = 31086,
+ PropPlacement = { 0.1900, 0.0000, -0.0500, 100.0000, 90.0000, 0.0000 },
+ SecondProp = 'lilprideflag8',
+ SecondPropBone = 31086,
+ SecondPropPlacement = { 0.1940, 0.020, -0.0500, -90.0000, -90.0000, 0.0000 },
+ EmoteLoop = true,
+ EmoteMoving = false,
+ }},
+ ["bdogpridei"] = { "creatures@rottweiler@amb@world_dog_sitting@base", "base", "Sit Pride I - Straight Ally (big dog)", AnimationOptions = {
+ Prop = 'lilprideflag9', --Straight Ally
+ PropBone = 31086,
+ PropPlacement = { 0.1900, 0.0000, -0.0500, 100.0000, 90.0000, 0.0000 },
+ SecondProp = 'lilprideflag9',
+ SecondPropBone = 31086,
+ SecondPropPlacement = { 0.1940, 0.020, -0.0500, -90.0000, -90.0000, 0.0000 },
+ EmoteLoop = true,
+ EmoteMoving = false,
+
+
+---- ANIMAL EMOTES ----
+---- SMALL DOG ----
+
+
+ }},
+ ["sdogitch"] = { "creatures@pug@amb@world_dog_sitting@idle_a", "idle_a", "Itch (small dog)", AnimationOptions = {
+ EmoteDuration = 2000
+ }},
+ ["sdogsit"] = { "creatures@pug@amb@world_dog_sitting@idle_a", "idle_b", "Sit (small dog)", AnimationOptions = {
+ EmoteLoop = true
+ }},
+ ["sdogld"] = { "misssnowie@little_doggy_lying_down", "base", "Lay Down (small dog)", AnimationOptions = {
+ EmoteLoop = true,
+ EmoteMoving = false,
+ }},
+ ["sdogshake"] = { "creatures@pug@amb@world_dog_barking@idle_a", "idle_c", "Shake (small dog)", AnimationOptions = {
+ EmoteLoop = true
+ }},
+ ["sdogdance"] = { "creatures@pug@move", "idle_turn_0", "Dance (small dog)", AnimationOptions = {
+ Prop = 'ba_prop_battle_glowstick_01',
+ PropBone = 31086,
+ PropPlacement = { 0.1500, -0.0300, 0.0, 0.0, 0.0 },
+ EmoteLoop = true,
+ EmoteMoving = false,
+ }},
+ ["sdogdance2"] = { "creatures@pug@move", "idle_turn_0", "Dance 2 (small dog)", AnimationOptions = {
+ Prop = 'ba_prop_battle_glowstick_01',
+ PropBone = 31086,
+ PropPlacement = { 0.1500, -0.0300, 0.0, 0.0, 0.0 },
+ SecondProp = 'prop_cs_sol_glasses',
+ SecondPropBone = 31086,
+ SecondPropPlacement = { 0.0500, 0.0300, 0.000, -100.0000003, 90.00, 0.00 },
+ EmoteLoop = true,
+ EmoteMoving = false,
+ }},
+ ["sdogdancepridea"] = { "creatures@pug@move", "idle_turn_0", "Dance Pride A (small dog)", AnimationOptions = {
+ Prop = 'lilprideflag1',
+ PropBone = 31086,
+ PropPlacement = { 0.1240, -0.0080, 0.000, 0.0, 0.0, -74.6999 },
+ SecondProp = 'prop_cs_sol_glasses',
+ SecondPropBone = 31086,
+ SecondPropPlacement = { 0.0500, 0.0300, 0.000, -100.0000003, 90.00, 0.00 },
+ EmoteLoop = true,
+ EmoteMoving = false,
+ }},
+ ["sdogdanceprideb"] = { "creatures@pug@move", "idle_turn_0", "Dance Pride B - LGBTQIA (small dog)", AnimationOptions = {
+ Prop = 'lilprideflag2', --LGBTQIA
+ PropBone = 31086,
+ PropPlacement = { 0.1240, -0.0080, 0.000, 0.0, 0.0, -74.6999 },
+ SecondProp = 'prop_cs_sol_glasses',
+ SecondPropBone = 31086,
+ SecondPropPlacement = { 0.0500, 0.0300, 0.000, -100.0000003, 90.00, 0.00 },
+ EmoteLoop = true,
+ EmoteMoving = false,
+ }},
+ ["sdogdancepridec"] = { "creatures@pug@move", "idle_turn_0", "Dance Pride C - Bisexual (small dog)", AnimationOptions = {
+ Prop = 'lilprideflag3', --Bisexual
+ PropBone = 31086,
+ PropPlacement = { 0.1240, -0.0080, 0.000, 0.0, 0.0, -74.6999 },
+ SecondProp = 'prop_cs_sol_glasses',
+ SecondPropBone = 31086,
+ SecondPropPlacement = { 0.0500, 0.0300, 0.000, -100.0000003, 90.00, 0.00 },
+ EmoteLoop = true,
+ EmoteMoving = false,
+ }},
+ ["sdogdanceprided"] = { "creatures@pug@move", "idle_turn_0", "Dance Pride D - Lesbian (small dog)", AnimationOptions = {
+ Prop = 'lilprideflag4', --Lesbian
+ PropBone = 31086,
+ PropPlacement = { 0.1240, -0.0080, 0.000, 0.0, 0.0, -74.6999 },
+ SecondProp = 'prop_cs_sol_glasses',
+ SecondPropBone = 31086,
+ SecondPropPlacement = { 0.0500, 0.0300, 0.000, -100.0000003, 90.00, 0.00 },
+ EmoteLoop = true,
+ EmoteMoving = false,
+ }},
+ ["sdogdancepridee"] = { "creatures@pug@move", "idle_turn_0", "Dance Pride E - Pansexual (small dog)", AnimationOptions = {
+ Prop = 'lilprideflag5', --Pansexual
+ PropBone = 31086,
+ PropPlacement = { 0.1240, -0.0080, 0.000, 0.0, 0.0, -74.6999 },
+ SecondProp = 'prop_cs_sol_glasses',
+ SecondPropBone = 31086,
+ SecondPropPlacement = { 0.0500, 0.0300, 0.000, -100.0000003, 90.00, 0.00 },
+ EmoteLoop = true,
+ EmoteMoving = false,
+ }},
+ ["sdogdancepridef"] = { "creatures@pug@move", "idle_turn_0", "Dance Pride F - Transexual (small dog)", AnimationOptions = {
+ Prop = 'lilprideflag6', --Transexual
+ PropBone = 31086,
+ PropPlacement = { 0.1240, -0.0080, 0.000, 0.0, 0.0, -74.6999 },
+ SecondProp = 'prop_cs_sol_glasses',
+ SecondPropBone = 31086,
+ SecondPropPlacement = { 0.0500, 0.0300, 0.000, -100.0000003, 90.00, 0.00 },
+ EmoteLoop = true,
+ EmoteMoving = false,
+ }},
+ ["sdogdanceprideg"] = { "creatures@pug@move", "idle_turn_0", "Dance Pride G - Non Binary (small dog)", AnimationOptions = {
+ Prop = 'lilprideflag7', --Non Binary
+ PropBone = 31086,
+ PropPlacement = { 0.1240, -0.0080, 0.000, 0.0, 0.0, -74.6999 },
+ SecondProp = 'prop_cs_sol_glasses',
+ SecondPropBone = 31086,
+ SecondPropPlacement = { 0.0500, 0.0300, 0.000, -100.0000003, 90.00, 0.00 },
+ EmoteLoop = true,
+ EmoteMoving = false,
+ }},
+ ["sdogdanceprideh"] = { "creatures@pug@move", "idle_turn_0", "Dance Pride H - Asexual (small dog)", AnimationOptions = {
+ Prop = 'lilprideflag8', --Asexual
+ PropBone = 31086,
+ PropPlacement = { 0.1240, -0.0080, 0.000, 0.0, 0.0, -74.6999 },
+ SecondProp = 'prop_cs_sol_glasses',
+ SecondPropBone = 31086,
+ SecondPropPlacement = { 0.0500, 0.0300, 0.000, -100.0000003, 90.00, 0.00 },
+ EmoteLoop = true,
+ EmoteMoving = false,
+ }},
+ ["sdogdancepridei"] = { "creatures@pug@move", "idle_turn_0", "Dance Pride I - Straight Ally (small dog)", AnimationOptions = {
+ Prop = 'lilprideflag9', --Straight Ally
+ PropBone = 31086,
+ PropPlacement = { 0.1240, -0.0080, 0.000, 0.0, 0.0, -74.6999 },
+ SecondProp = 'prop_cs_sol_glasses',
+ SecondPropBone = 31086,
+ SecondPropPlacement = { 0.0500, 0.0300, 0.000, -100.0000003, 90.00, 0.00 },
+ EmoteLoop = true,
+ EmoteMoving = false,
+ }},
+ ["sdogbb"] = { "creatures@pug@move", "nill", "Baseball (small dog)", AnimationOptions = {
+ Prop = 'w_am_baseball',
+ PropBone = 31086,
+ PropPlacement = { 0.1500, -0.0500, 0.0, 0.0, 0.0 },
+ EmoteLoop = true,
+ EmoteMoving = false,
+ }},
+ ["sdogburger"] = { "creatures@pug@move", "nill", "Burger (small dog)", AnimationOptions = {
+ Prop = 'prop_cs_burger_01',
+ PropBone = 31086,
+ PropPlacement = { 0.1500, -0.0400, 0.0000, -90.0, 0.0 },
+ EmoteLoop = true,
+ EmoteMoving = false,
+ }},
+ ["sdogcontroller"] = { "creatures@pug@move", "nill", "Controller (small dog)", AnimationOptions = {
+ Prop = 'prop_controller_01',
+ PropBone = 31086,
+ PropPlacement = { 0.1800, -0.0300, 0.0000, -180.000, 90.0000, 0.0000 },
+ EmoteLoop = true,
+ EmoteMoving = false,
+ }},
+ ["sdogdolla"] = { "creatures@pug@move", "nill", "Dollar Bill (small dog)", AnimationOptions = {
+ Prop = 'p_banknote_onedollar_s',
+ PropBone = 31086,
+ PropPlacement = { 0.1700, -0.0100, 0.0000, 90.0000, 0.0000, 0.000 },
+ EmoteLoop = true,
+ EmoteMoving = false,
+ }},
+ ["sdogdolla2"] = { "creatures@pug@move", "nill", "Dollar Bill Scrunched (small dog)", AnimationOptions = {
+ Prop = 'bkr_prop_scrunched_moneypage',
+ PropBone = 31086,
+ PropPlacement = { 0.1700, 0.000, 0.0000, 90.0000, 00.0000, 00.0000 },
+ EmoteLoop = true,
+ EmoteMoving = false,
+ }},
+ ["sdogdolla3"] = { "creatures@pug@move", "nill", "Money Stack (small dog)", AnimationOptions = {
+ Prop = 'bkr_prop_money_wrapped_01',
+ PropBone = 31086,
+ PropPlacement = { 0.1700, -0.0100, 0.0000, 90.0000, 0.0000, 0.000 },
+ EmoteLoop = true,
+ EmoteMoving = false,
+ }},
+ ["sdogdolla4"] = { "creatures@pug@move", "nill", "Money Bag (small dog)", AnimationOptions = {
+ Prop = 'ch_prop_ch_moneybag_01a',
+ PropBone = 31086,
+ PropPlacement = { 0.1200, -0.2000, 0.0000, -79.9999997, 90.00, 0.0000 },
+ EmoteLoop = true,
+ EmoteMoving = false,
+ }},
+ ["sdogmic"] = { "creatures@pug@move", "nill", "Microphone (small dog)", AnimationOptions = {
+ Prop = 'p_ing_microphonel_01',
+ PropBone = 31086,
+ PropPlacement = { 0.1500, -0.0170, 0.0300, 0.000, 0.0000, 0.0000 },
+ EmoteLoop = true,
+ EmoteMoving = false,
+ }},
+ ["sdogteddy"] = { "creatures@pug@move", "nill", "Teddy (small dog)", AnimationOptions = {
+ Prop = 'v_ilev_mr_rasberryclean',
+ PropBone = 31086,
+ PropPlacement = { 0.1500, -0.1100, -0.23, 0.000, 0.0000, 0.0000 },
+ EmoteLoop = true,
+ EmoteMoving = false,
+ }},
+ ["sdogteddy2"] = { "creatures@pug@amb@world_dog_sitting@idle_a", "idle_b", "Teddy 2 (small dog)", AnimationOptions = {
+ Prop = 'v_ilev_mr_rasberryclean',
+ PropBone = 31086,
+ PropPlacement = { 0.1500, -0.1100, -0.23, 0.000, 0.0000, 0.0000 },
+ EmoteLoop = true,
+ EmoteMoving = false,
+ }},
+ ["sdogtennis"] = { "creatures@pug@move", "nill", "Tennis Ball (small dog)", AnimationOptions = {
+ Prop = 'prop_tennis_ball',
+ PropBone = 31086,
+ PropPlacement = { 0.1500, -0.0600, 0.0, 0.0, 0.0, 0.0 },
+ EmoteLoop = true,
+ EmoteMoving = false,
+ }},
+ ["sdogtennisr"] = { "creatures@pug@move", "nill", "Tennis Racket (small dog)", AnimationOptions = {
+ Prop = 'prop_tennis_rack_01',
+ PropBone = 31086,
+ PropPlacement = { 0.1500, -0.0200, 0.00, 0.000, 0.0000, -28.0000 },
+ EmoteLoop = true,
+ EmoteMoving = false,
+ }},
+ ["sdogrose"] = { "creatures@pug@move", "nill", "Rose (small dog)", AnimationOptions = {
+ Prop = 'prop_single_rose',
+ PropBone = 12844,
+ PropPlacement = { 0.1090, -0.0140, 0.0500, 0.0, 0.0, 0.0 },
+ EmoteLoop = true,
+ EmoteMoving = false,
+ }},
+ ["sdogrose2"] = { "creatures@pug@amb@world_dog_sitting@idle_a", "idle_b", "Rose Sit (small dog)", AnimationOptions = {
+ Prop = 'prop_single_rose',
+ PropBone = 12844,
+ PropPlacement = { 0.1090, -0.0140, 0.0500, 0.0, 0.0, 0.0 },
+ EmoteLoop = true,
+ EmoteMoving = false,
+ }},
+ ["sdogggun"] = { "creatures@pug@move", "nill", "Gun Gold (small dog)", AnimationOptions = {
+ Prop = 'w_pi_pistol_luxe',
+ PropBone = 12844,
+ PropPlacement = { 0.2010, -0.0080, 0.0, 0.0, 0.0, 0.0 },
+ EmoteLoop = true,
+ EmoteMoving = false,
+ }},
+ ["sdoggun2"] = { "creatures@pug@amb@world_dog_sitting@idle_a", "idle_b", "Gun Gold Sit (small dog)", AnimationOptions = {
+ Prop = 'w_pi_pistol_luxe',
+ PropBone = 12844,
+ PropPlacement = { 0.2010, -0.0080, 0.0, 0.0, 0.0, 0.0 },
+ EmoteLoop = true,
+ EmoteMoving = false,
+ }},
+ ["sdogstun"] = { "creatures@pug@move", "nill", "Stun Gun (small dog)", AnimationOptions = {
+ Prop = 'w_pi_stungun',
+ PropBone = 12844,
+ PropPlacement = { 0.1400, -0.0100, 0.0, 0.0, 0.0, 0.0 },
+ EmoteLoop = true,
+ EmoteMoving = false,
+ PtfxAsset = "core",
+ PtfxName = "blood_stungun",
+ PtfxPlacement = { 0.208, 0.0, 0.0, 0.0, 0.0, 0.0, 1.0 },
+ PtfxInfo = Config.Languages[Config.MenuLanguage]['stun'],
+ PtfxWait = 200,
+ }},
+ ["sdoggl1"] = { "creatures@pug@move", "nill", "Aviators (small dog)", AnimationOptions = {
+ Prop = 'prop_aviators_01',
+ PropBone = 31086,
+ PropPlacement = { 0.0500, 0.0400, 0.000, -90.00, 90.00, 0.00 },
+ EmoteLoop = true,
+ EmoteMoving = false,
+ }},
+ ["sdoggl2"] = { "creatures@pug@amb@world_dog_sitting@idle_a", "idle_b", "Aviators Sitting (small dog)", AnimationOptions = {
+ Prop = 'prop_aviators_01',
+ PropBone = 31086,
+ PropPlacement = { 0.0500, 0.0400, 0.000, -90.00, 90.00, 0.00 },
+ EmoteLoop = true,
+ EmoteMoving = false,
+ }},
+ ["sdoggl3"] = { "creatures@pug@move", "nill", "Sunglasses (small dog)", AnimationOptions = {
+ Prop = 'prop_cs_sol_glasses',
+ PropBone = 31086,
+ PropPlacement = { 0.0500, 0.0300, 0.000, -100.0000003, 90.00, 0.00 },
+ EmoteLoop = true,
+ EmoteMoving = false,
+ }},
+ ["sdoggl4"] = { "creatures@pug@amb@world_dog_sitting@idle_a", "idle_b", "Sunglasses Sitting (small dog)", AnimationOptions = {
+ Prop = 'prop_cs_sol_glasses',
+ PropBone = 31086,
+ PropPlacement = { 0.0500, 0.0300, 0.000, -100.0000003, 90.00, 0.00 },
+ EmoteLoop = true,
+ EmoteMoving = false,
+ }},
+ ["sdoghd1"] = { "creatures@pug@move", "nill", "Hot Dog (small dog)", AnimationOptions = {
+ Prop = 'prop_cs_hotdog_01',
+ PropBone = 31086,
+ PropPlacement = { 0.1300, -0.0250, 0.000, -88.272053, -9.8465858, -0.1488562 },
+ EmoteLoop = true,
+ EmoteMoving = false,
+ }},
+ ["sdoghd2"] = { "creatures@pug@amb@world_dog_sitting@idle_a", "idle_b", "Hot Dog Sitting (small dog)", AnimationOptions = {
+ Prop = 'prop_cs_hotdog_01',
+ PropBone = 31086,
+ PropPlacement = { 0.1300, -0.0250, 0.000, -88.272053, -9.8465858, -0.1488562 },
+ EmoteLoop = true,
+ EmoteMoving = false,
+ }},
+ ["sdoghlmt1"] = { "creatures@pug@move", "nill", "Helmet 1 (small dog)", AnimationOptions = {
+ Prop = 'ba_prop_battle_sports_helmet',
+ PropBone = 31086,
+ PropPlacement = { 0.00, -0.0200, 0.000, -90.00, 90.00, 0.00 },
+ EmoteLoop = true,
+ EmoteMoving = false,
+ }},
+ ["sdoghlmt2"] = { "creatures@pug@move", "nill", "Helmet 2 (small dog)", AnimationOptions = {
+ Prop = 'prop_hard_hat_01',
+ PropBone = 31086,
+ PropPlacement = { 0.00, 0.1300, 0.000, -90.00, 90.00, 0.00 },
+ EmoteLoop = true,
+ EmoteMoving = false,
+ }},
+ ["sdoghat"] = { "creatures@pug@move", "nill", "Hat 1 (small dog)", AnimationOptions = {
+ Prop = 'prop_proxy_hat_01',
+ PropBone = 31086,
+ PropPlacement = { 0.0, 0.1200, 0.000, -99.8510766, 80.1489234, 1.7279411 },
+ SecondProp = 'prop_aviators_01',
+ SecondPropBone = 31086,
+ SecondPropPlacement = { 0.0500, 0.0400, 0.000, -90.00, 90.00, 0.00 },
+ EmoteLoop = true,
+ EmoteMoving = false,
+ }},
+ ["sdoghat2"] = { "creatures@pug@amb@world_dog_sitting@idle_a", "idle_b", "Hat 2 Sitting (small dog)", AnimationOptions = {
+ Prop = 'prop_proxy_hat_01',
+ PropBone = 31086,
+ PropPlacement = { 0.0, 0.1200, 0.000, -99.8510766, 80.1489234, 1.7279411 },
+ SecondProp = 'prop_aviators_01',
+ SecondPropBone = 31086,
+ SecondPropPlacement = { 0.0500, 0.0400, 0.000, -90.00, 90.00, 0.00 },
+ EmoteLoop = true,
+ EmoteMoving = false,
+ }},
+ ["sdogsteak"] = { "creatures@pug@move", "nill", "Steak (small dog)", AnimationOptions = {
+ Prop = 'prop_cs_steak',
+ PropBone = 31086,
+ PropPlacement = { 0.1800, -0.0200, 0.000, 90.00, 0.00, 0.00 },
+ EmoteLoop = true,
+ EmoteMoving = false,
+ }},
+ ["sdogsteak2"] = { "creatures@pug@amb@world_dog_sitting@idle_a", "idle_c", "Steak 2 Lay Down (small dog)", AnimationOptions = {
+ Prop = 'prop_cs_steak',
+ PropBone = 31086,
+ PropPlacement = { 0.1800, -0.0200, 0.000, 90.00, 0.00, 0.00 },
+ EmoteLoop = true,
+ EmoteMoving = false,
+ }},
+ ["sdogpridea"] = { "creatures@pug@move", "nill", "Pride A (small dog)", AnimationOptions = {
+ Prop = 'lilprideflag1',
+ PropBone = 31086,
+ PropPlacement = { 0.1240, -0.0080, 0.000, 0.0, 0.0, -74.6999 },
+ EmoteLoop = true,
+ EmoteMoving = false,
+ }},
+ ["sdogprideb"] = { "creatures@pug@move", "nill", "Pride B - LGBTQIA (small dog)", AnimationOptions = {
+ Prop = 'lilprideflag2',--LGBTQIA
+ PropBone = 31086,
+ PropPlacement = { 0.1240, -0.0080, 0.000, 0.0, 0.0, -74.6999 },
+ EmoteLoop = true,
+ EmoteMoving = false,
+ }},
+ ["sdogpridec"] = { "creatures@pug@move", "nill", "Pride C - Bisexual (small dog)", AnimationOptions = {
+ Prop = 'lilprideflag3',--Bisexual
+ PropBone = 31086,
+ PropPlacement = { 0.1240, -0.0080, 0.000, 0.0, 0.0, -74.6999 },
+ EmoteLoop = true,
+ EmoteMoving = false,
+ }},
+ ["sdogprided"] = { "creatures@pug@move", "nill", "Pride D - Lesbian (small dog)", AnimationOptions = {
+ Prop = 'lilprideflag4',--Lesbian
+ PropBone = 31086,
+ PropPlacement = { 0.1240, -0.0080, 0.000, 0.0, 0.0, -74.6999 },
+ EmoteLoop = true,
+ EmoteMoving = false,
+ }},
+ ["sdogpridee"] = { "creatures@pug@move", "nill", "Pride E - Pansexual (small dog)", AnimationOptions = {
+ Prop = 'lilprideflag5',--Pansexual
+ PropBone = 31086,
+ PropPlacement = { 0.1240, -0.0080, 0.000, 0.0, 0.0, -74.6999 },
+ EmoteLoop = true,
+ EmoteMoving = false,
+ }},
+ ["sdogpridef"] = { "creatures@pug@move", "nill", "Pride F - Transexual (small dog)", AnimationOptions = {
+ Prop = 'lilprideflag6',--Transexual
+ PropBone = 31086,
+ PropPlacement = { 0.1240, -0.0080, 0.000, 0.0, 0.0, -74.6999 },
+ EmoteLoop = true,
+ EmoteMoving = false,
+ }},
+ ["sdogpridef"] = { "creatures@pug@move", "nill", "Pride F - Transexual (small dog)", AnimationOptions = {
+ Prop = 'lilprideflag6',--Transexual
+ PropBone = 31086,
+ PropPlacement = { 0.1240, -0.0080, 0.000, 0.0, 0.0, -74.6999 },
+ EmoteLoop = true,
+ EmoteMoving = false,
+ }},
+ ["sdogprideg"] = { "creatures@pug@move", "nill", "Pride G - Non Binary (small dog)", AnimationOptions = {
+ Prop = 'lilprideflag6',--Non Binary
+ PropBone = 31086,
+ PropPlacement = { 0.1240, -0.0080, 0.000, 0.0, 0.0, -74.6999 },
+ EmoteLoop = true,
+ EmoteMoving = false,
+ }},
+ ["sdogprideh"] = { "creatures@pug@move", "nill", "Pride H - Non Binary (small dog)", AnimationOptions = {
+ Prop = 'lilprideflag7',--Non Binary
+ PropBone = 31086,
+ PropPlacement = { 0.1240, -0.0080, 0.000, 0.0, 0.0, -74.6999 },
+ EmoteLoop = true,
+ EmoteMoving = false,
+ }},
+ ["sdogpridei"] = { "creatures@pug@move", "nill", "Pride I - Asexual (small dog)", AnimationOptions = {
+ Prop = 'lilprideflag8',--Asexual
+ PropBone = 31086,
+ PropPlacement = { 0.1240, -0.0080, 0.000, 0.0, 0.0, -74.6999 },
+ EmoteLoop = true,
+ EmoteMoving = false,
+ }},
+ ["sdogpridesita"] = { "creatures@pug@amb@world_dog_sitting@idle_a", "idle_b", "Pride A Sit (small dog)", AnimationOptions = {
+ Prop = 'lilprideflag1',
+ PropBone = 31086,
+ PropPlacement = { 0.1240, -0.0080, 0.000, 0.0, 0.0, -74.6999 },
+ EmoteLoop = true,
+ EmoteMoving = false,
+ }},
+ ["sdogpridesitb"] = { "creatures@pug@amb@world_dog_sitting@idle_a", "idle_b", "Pride B Sit LGBTQIA (small dog)", AnimationOptions = {
+ Prop = 'lilprideflag2', --LGBTQIA
+ PropBone = 31086,
+ PropPlacement = { 0.1240, -0.0080, 0.000, 0.0, 0.0, -74.6999 },
+ EmoteLoop = true,
+ EmoteMoving = false,
+ }},
+ ["sdogpridesitc"] = { "creatures@pug@amb@world_dog_sitting@idle_a", "idle_b", "Pride C Sit Bisexual (small dog)", AnimationOptions = {
+ Prop = 'lilprideflag3', --Bisexual
+ PropBone = 31086,
+ PropPlacement = { 0.1240, -0.0080, 0.000, 0.0, 0.0, -74.6999 },
+ EmoteLoop = true,
+ EmoteMoving = false,
+ }},
+ ["sdogpridesitd"] = { "creatures@pug@amb@world_dog_sitting@idle_a", "idle_b", "Pride D Sit Lesbian (small dog)", AnimationOptions = {
+ Prop = 'lilprideflag4', --Lesbian
+ PropBone = 31086,
+ PropPlacement = { 0.1240, -0.0080, 0.000, 0.0, 0.0, -74.6999 },
+ EmoteLoop = true,
+ EmoteMoving = false,
+ }},
+ ["sdogpridesite"] = { "creatures@pug@amb@world_dog_sitting@idle_a", "idle_b", "Pride E Sit Pansexual (small dog)", AnimationOptions = {
+ Prop = 'lilprideflag5', --Pansexual
+ PropBone = 31086,
+ PropPlacement = { 0.1240, -0.0080, 0.000, 0.0, 0.0, -74.6999 },
+ EmoteLoop = true,
+ EmoteMoving = false,
+ }},
+ ["sdogpridesitf"] = { "creatures@pug@amb@world_dog_sitting@idle_a", "idle_b", "Pride F Sit Transexual (small dog)", AnimationOptions = {
+ Prop = 'lilprideflag6', --Transexual
+ PropBone = 31086,
+ PropPlacement = { 0.1240, -0.0080, 0.000, 0.0, 0.0, -74.6999 },
+ EmoteLoop = true,
+ EmoteMoving = false,
+ }},
+ ["sdogpridesitg"] = { "creatures@pug@amb@world_dog_sitting@idle_a", "idle_b", "Pride G Sit Non Binary (small dog)", AnimationOptions = {
+ Prop = 'lilprideflag7', --Non Binary
+ PropBone = 31086,
+ PropPlacement = { 0.1240, -0.0080, 0.000, 0.0, 0.0, -74.6999 },
+ EmoteLoop = true,
+ EmoteMoving = false,
+ }},
+ ["sdogpridesith"] = { "creatures@pug@amb@world_dog_sitting@idle_a", "idle_b", "Pride H Sit Asexual (small dog)", AnimationOptions = {
+ Prop = 'lilprideflag8', --Asexual
+ PropBone = 31086,
+ PropPlacement = { 0.1240, -0.0080, 0.000, 0.0, 0.0, -74.6999 },
+ EmoteLoop = true,
+ EmoteMoving = false,
+ }},
+ ["sdogpridesiti"] = { "creatures@pug@amb@world_dog_sitting@idle_a", "idle_b", "Pride I Sit Straight Ally (small dog)", AnimationOptions = {
+ Prop = 'lilprideflag9', --Straight Ally
+ PropBone = 31086,
+ PropPlacement = { 0.1240, -0.0080, 0.000, 0.0, 0.0, -74.6999 },
+ EmoteLoop = true,
+ EmoteMoving = false,
+ }},
+}
+
+
+
+--- EMOTES NO PROPS ---
+
DP.Emotes = {
- ["drink"] = {"mp_player_inteat@pnq", "loop", "Drink", AnimationOptions =
- {
- EmoteMoving = true,
- EmoteDuration = 2500,
- }},
- ["beast"] = {"anim@mp_fm_event@intro", "beast_transform", "Beast", AnimationOptions =
- {
- EmoteMoving = true,
- EmoteDuration = 5000,
- }},
- ["chill"] = {"switch@trevor@scares_tramp", "trev_scares_tramp_idle_tramp", "Chill", AnimationOptions =
- {
- EmoteLoop = true,
- }},
- ["cloudgaze"] = {"switch@trevor@annoys_sunbathers", "trev_annoys_sunbathers_loop_girl", "Cloudgaze", AnimationOptions =
- {
- EmoteLoop = true,
- }},
- ["cloudgaze2"] = {"switch@trevor@annoys_sunbathers", "trev_annoys_sunbathers_loop_guy", "Cloudgaze 2", AnimationOptions =
- {
- EmoteLoop = true,
- }},
- ["prone"] = {"missfbi3_sniping", "prone_dave", "Prone", AnimationOptions =
- {
- EmoteLoop = true,
- }},
- ["pullover"] = {"misscarsteal3pullover", "pull_over_right", "Pullover", AnimationOptions =
- {
- EmoteMoving = true,
- EmoteDuration = 1300,
- }},
- ["idle"] = {"anim@heists@heist_corona@team_idles@male_a", "idle", "Idle", AnimationOptions =
- {
- EmoteLoop = true,
- }},
- ["idle8"] = {"amb@world_human_hang_out_street@male_b@idle_a", "idle_b", "Idle 8"},
- ["idle9"] = {"friends@fra@ig_1", "base_idle", "Idle 9", AnimationOptions =
- {
- EmoteLoop = true,
- }},
- ["idle10"] = {"mp_move@prostitute@m@french", "idle", "Idle 10", AnimationOptions =
- {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["idle11"] = {"random@countrysiderobbery", "idle_a", "Idle 11", AnimationOptions =
- {
- EmoteLoop = true,
- }},
- ["idle2"] = {"anim@heists@heist_corona@team_idles@female_a", "idle", "Idle 2", AnimationOptions =
- {
- EmoteLoop = true,
- }},
- ["idle3"] = {"anim@heists@humane_labs@finale@strip_club", "ped_b_celebrate_loop", "Idle 3", AnimationOptions =
- {
- EmoteLoop = true,
- }},
- ["idle4"] = {"anim@mp_celebration@idles@female", "celebration_idle_f_a", "Idle 4", AnimationOptions =
- {
- EmoteLoop = true,
- }},
- ["idle5"] = {"anim@mp_corona_idles@female_b@idle_a", "idle_a", "Idle 5", AnimationOptions =
- {
- EmoteLoop = true,
- }},
- ["idle6"] = {"anim@mp_corona_idles@male_c@idle_a", "idle_a", "Idle 6", AnimationOptions =
- {
- EmoteLoop = true,
- }},
- ["idle7"] = {"anim@mp_corona_idles@male_d@idle_a", "idle_a", "Idle 7", AnimationOptions =
- {
- EmoteLoop = true,
- }},
- ["wait3"] = {"amb@world_human_hang_out_street@female_hold_arm@idle_a", "idle_a", "Wait 3", AnimationOptions =
- {
- EmoteLoop = true,
- }},
- ["idledrunk"] = {"random@drunk_driver_1", "drunk_driver_stand_loop_dd1", "Idle Drunk", AnimationOptions =
- {
- EmoteLoop = true,
- }},
- ["idledrunk2"] = {"random@drunk_driver_1", "drunk_driver_stand_loop_dd2", "Idle Drunk 2", AnimationOptions =
- {
- EmoteLoop = true,
- }},
- ["idledrunk3"] = {"missarmenian2", "standing_idle_loop_drunk", "Idle Drunk 3", AnimationOptions =
- {
- EmoteLoop = true,
- }},
- ["airguitar"] = {"anim@mp_player_intcelebrationfemale@air_guitar", "air_guitar", "Air Guitar"},
- ["airsynth"] = {"anim@mp_player_intcelebrationfemale@air_synth", "air_synth", "Air Synth"},
- ["argue"] = {"misscarsteal4@actor", "actor_berating_loop", "Argue", AnimationOptions =
- {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["argue2"] = {"oddjobs@assassinate@vice@hooker", "argue_a", "Argue 2", AnimationOptions =
- {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["bartender"] = {"anim@amb@clubhouse@bar@drink@idle_a", "idle_a_bartender", "Bartender", AnimationOptions =
- {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["blowkiss"] = {"anim@mp_player_intcelebrationfemale@blow_kiss", "blow_kiss", "Blow Kiss"},
- ["blowkiss2"] = {"anim@mp_player_intselfieblow_kiss", "exit", "Blow Kiss 2", AnimationOptions =
- {
- EmoteMoving = true,
- EmoteDuration = 2000
- }},
- ["curtsy"] = {"anim@mp_player_intcelebrationpaired@f_f_sarcastic", "sarcastic_left", "Curtsy"},
- ["bringiton"] = {"misscommon@response", "bring_it_on", "Bring It On", AnimationOptions =
- {
- EmoteMoving = true,
- EmoteDuration = 3000
- }},
- ["comeatmebro"] = {"mini@triathlon", "want_some_of_this", "Come at me bro", AnimationOptions =
- {
- EmoteMoving = true,
- EmoteDuration = 2000
- }},
- ["cop2"] = {"anim@amb@nightclub@peds@", "rcmme_amanda1_stand_loop_cop", "Cop 2", AnimationOptions =
- {
- EmoteLoop = true,
- }},
- ["cop3"] = {"amb@code_human_police_investigate@idle_a", "idle_b", "Cop 3", AnimationOptions =
- {
- EmoteLoop = true,
- }},
- ["crossarms"] = {"amb@world_human_hang_out_street@female_arms_crossed@idle_a", "idle_a", "Crossarms", AnimationOptions =
- {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["crossarms2"] = {"amb@world_human_hang_out_street@male_c@idle_a", "idle_b", "Crossarms 2", AnimationOptions =
- {
- EmoteMoving = true,
- }},
- ["crossarms3"] = {"anim@heists@heist_corona@single_team", "single_team_loop_boss", "Crossarms 3", AnimationOptions =
- {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["crossarms4"] = {"random@street_race", "_car_b_lookout", "Crossarms 4", AnimationOptions =
- {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["crossarms5"] = {"anim@amb@nightclub@peds@", "rcmme_amanda1_stand_loop_cop", "Crossarms 5", AnimationOptions =
- {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["foldarms2"] = {"anim@amb@nightclub@peds@", "rcmme_amanda1_stand_loop_cop", "Fold Arms 2", AnimationOptions =
- {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["crossarms6"] = {"random@shop_gunstore", "_idle", "Crossarms 6", AnimationOptions =
- {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["foldarms"] = {"anim@amb@business@bgen@bgen_no_work@", "stand_phone_phoneputdown_idle_nowork", "Fold Arms", AnimationOptions =
- {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["crossarmsside"] = {"rcmnigel1a_band_groupies", "base_m2", "Crossarms Side", AnimationOptions =
- {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["damn"] = {"gestures@m@standing@casual", "gesture_damn", "Damn", AnimationOptions =
- {
- EmoteMoving = true,
- EmoteDuration = 1000
- }},
- ["damn2"] = {"anim@am_hold_up@male", "shoplift_mid", "Damn 2", AnimationOptions =
- {
- EmoteMoving = true,
- EmoteDuration = 1000
- }},
- ["pointdown"] = {"gestures@f@standing@casual", "gesture_hand_down", "Point Down", AnimationOptions =
- {
- EmoteMoving = true,
- EmoteDuration = 1000
- }},
- ["surrender"] = {"random@arrests@busted", "idle_a", "Surrender", AnimationOptions =
- {
- EmoteLoop = true,
- }},
- ["facepalm2"] = {"anim@mp_player_intcelebrationfemale@face_palm", "face_palm", "Facepalm 2", AnimationOptions =
- {
- EmoteMoving = true,
- EmoteDuration = 8000
- }},
- ["facepalm"] = {"random@car_thief@agitated@idle_a", "agitated_idle_a", "Facepalm", AnimationOptions =
- {
- EmoteMoving = true,
- EmoteDuration = 8000
- }},
- ["facepalm3"] = {"missminuteman_1ig_2", "tasered_2", "Facepalm 3", AnimationOptions =
- {
- EmoteMoving = true,
- EmoteDuration = 8000
- }},
- ["facepalm4"] = {"anim@mp_player_intupperface_palm", "idle_a", "Facepalm 4", AnimationOptions =
- {
- EmoteMoving = true,
- EmoteLoop = true,
- }},
- ["fallover"] = {"random@drunk_driver_1", "drunk_fall_over", "Fall Over"},
- ["fallover2"] = {"mp_suicide", "pistol", "Fall Over 2"},
- ["fallover3"] = {"mp_suicide", "pill", "Fall Over 3"},
- ["fallover4"] = {"friends@frf@ig_2", "knockout_plyr", "Fall Over 4"},
- ["fallover5"] = {"anim@gangops@hostage@", "victim_fail", "Fall Over 5"},
- ["fallasleep"] = {"mp_sleep", "sleep_loop", "Fall Asleep", AnimationOptions =
- {
- EmoteMoving = true,
- EmoteLoop = true,
- }},
- ["fightme"] = {"anim@deathmatch_intros@unarmed", "intro_male_unarmed_c", "Fight Me"},
- ["fightme2"] = {"anim@deathmatch_intros@unarmed", "intro_male_unarmed_e", "Fight Me 2"},
- ["finger"] = {"anim@mp_player_intselfiethe_bird", "idle_a", "Finger", AnimationOptions =
- {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["finger2"] = {"anim@mp_player_intupperfinger", "idle_a_fp", "Finger 2", AnimationOptions =
- {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["handshake"] = {"mp_ped_interaction", "handshake_guy_a", "Handshake", AnimationOptions =
- {
- EmoteMoving = true,
- EmoteDuration = 3000
- }},
- ["handshake2"] = {"mp_ped_interaction", "handshake_guy_b", "Handshake 2", AnimationOptions =
- {
- EmoteMoving = true,
- EmoteDuration = 3000
- }},
- ["wait4"] = {"amb@world_human_hang_out_street@Female_arm_side@idle_a", "idle_a", "Wait 4", AnimationOptions =
- {
- EmoteLoop = true,
- }},
- ["wait5"] = {"missclothing", "idle_storeclerk", "Wait 5", AnimationOptions =
- {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["wait6"] = {"timetable@amanda@ig_2", "ig_2_base_amanda", "Wait 6", AnimationOptions =
- {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["wait7"] = {"rcmnigel1cnmt_1c", "base", "Wait 7", AnimationOptions =
- {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["wait8"] = {"rcmjosh1", "idle", "Wait 8", AnimationOptions =
- {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["wait9"] = {"rcmjosh2", "josh_2_intp1_base", "Wait 9", AnimationOptions =
- {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["wait10"] = {"timetable@amanda@ig_3", "ig_3_base_tracy", "Wait 10", AnimationOptions =
- {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["wait11"] = {"misshair_shop@hair_dressers", "keeper_base", "Wait 11", AnimationOptions =
- {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["hiking"] = {"move_m@hiking", "idle", "Hiking", AnimationOptions =
- {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["hug"] = {"mp_ped_interaction", "kisses_guy_a", "Hug"},
- ["hug2"] = {"mp_ped_interaction", "kisses_guy_b", "Hug 2"},
- ["hug3"] = {"mp_ped_interaction", "hugs_guy_a", "Hug 3"},
- ["inspect"] = {"random@train_tracks", "idle_e", "Inspect"},
- ["jazzhands"] = {"anim@mp_player_intcelebrationfemale@jazz_hands", "jazz_hands", "Jazzhands", AnimationOptions =
- {
- EmoteMoving = true,
- EmoteDuration = 6000,
- }},
- ["jog2"] = {"amb@world_human_jog_standing@male@idle_a", "idle_a", "Jog 2", AnimationOptions =
- {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["jog3"] = {"amb@world_human_jog_standing@female@idle_a", "idle_a", "Jog 3", AnimationOptions =
- {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["jog4"] = {"amb@world_human_power_walker@female@idle_a", "idle_a", "Jog 4", AnimationOptions =
- {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["jog5"] = {"move_m@joy@a", "walk", "Jog 5", AnimationOptions =
- {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["jumpingjacks"] = {"timetable@reunited@ig_2", "jimmy_getknocked", "Jumping Jacks", AnimationOptions =
- {
- EmoteLoop = true,
- }},
- ["kneel2"] = {"rcmextreme3", "idle", "Kneel 2", AnimationOptions =
- {
- EmoteLoop = true,
- }},
- ["kneel3"] = {"amb@world_human_bum_wash@male@low@idle_a", "idle_a", "Kneel 3", AnimationOptions =
- {
- EmoteLoop = true,
- }},
- ["knock"] = {"timetable@jimmy@doorknock@", "knockdoor_idle", "Knock", AnimationOptions =
- {
- EmoteMoving = true,
- EmoteLoop = true,
- }},
- ["knock2"] = {"missheistfbi3b_ig7", "lift_fibagent_loop", "Knock 2", AnimationOptions =
- {
- EmoteLoop = true,
- }},
- ["knucklecrunch"] = {"anim@mp_player_intcelebrationfemale@knuckle_crunch", "knuckle_crunch", "Knuckle Crunch", AnimationOptions =
- {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["lapdance"] = {"mp_safehouse", "lap_dance_girl", "Lapdance"},
- ["lean2"] = {"amb@world_human_leaning@female@wall@back@hand_up@idle_a", "idle_a", "Lean 2", AnimationOptions =
- {
- EmoteLoop = true,
- }},
- ["lean3"] = {"amb@world_human_leaning@female@wall@back@holding_elbow@idle_a", "idle_a", "Lean 3", AnimationOptions =
- {
- EmoteLoop = true,
- }},
- ["lean4"] = {"amb@world_human_leaning@male@wall@back@foot_up@idle_a", "idle_a", "Lean 4", AnimationOptions =
- {
- EmoteLoop = true,
- }},
- ["lean5"] = {"amb@world_human_leaning@male@wall@back@hands_together@idle_b", "idle_b", "Lean 5", AnimationOptions =
- {
- EmoteLoop = true,
- }},
- ["leanflirt"] = {"random@street_race", "_car_a_flirt_girl", "Lean Flirt", AnimationOptions =
- {
- EmoteLoop = true,
- }},
- ["leanbar2"] = {"amb@prop_human_bum_shopping_cart@male@idle_a", "idle_c", "Lean Bar 2", AnimationOptions =
- {
- EmoteLoop = true,
- }},
- ["leanbar3"] = {"anim@amb@nightclub@lazlow@ig1_vip@", "clubvip_base_laz", "Lean Bar 3", AnimationOptions =
- {
- EmoteLoop = true,
- }},
- ["leanbar4"] = {"anim@heists@prison_heist", "ped_b_loop_a", "Lean Bar 4", AnimationOptions =
- {
- EmoteLoop = true,
- }},
- ["leanhigh"] = {"anim@mp_ferris_wheel", "idle_a_player_one", "Lean High", AnimationOptions =
- {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["leanhigh2"] = {"anim@mp_ferris_wheel", "idle_a_player_two", "Lean High 2", AnimationOptions =
- {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["leanside"] = {"timetable@mime@01_gc", "idle_a", "Leanside", AnimationOptions =
- {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["leanside2"] = {"misscarstealfinale", "packer_idle_1_trevor", "Leanside 2", AnimationOptions =
- {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["leanside3"] = {"misscarstealfinalecar_5_ig_1", "waitloop_lamar", "Leanside 3", AnimationOptions =
- {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["leanside4"] = {"misscarstealfinalecar_5_ig_1", "waitloop_lamar", "Leanside 4", AnimationOptions =
- {
- EmoteLoop = true,
- EmoteMoving = false,
- }},
- ["leanside5"] = {"rcmjosh2", "josh_2_intp1_base", "Leanside 5", AnimationOptions =
- {
- EmoteLoop = true,
- EmoteMoving = false,
- }},
- ["me"] = {"gestures@f@standing@casual", "gesture_me_hard", "Me", AnimationOptions =
- {
- EmoteMoving = true,
- EmoteDuration = 1000
- }},
- ["mechanic"] = {"mini@repair", "fixing_a_ped", "Mechanic", AnimationOptions =
- {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["mechanic2"] = {"amb@world_human_vehicle_mechanic@male@base", "idle_a", "Mechanic 2", AnimationOptions =
- {
- EmoteLoop = true,
- }},
- ["mechanic3"] = {"anim@amb@clubhouse@tutorial@bkr_tut_ig3@", "machinic_loop_mechandplayer", "Mechanic 3", AnimationOptions =
- {
- EmoteLoop = true,
- }},
- ["mechanic4"] = {"anim@amb@clubhouse@tutorial@bkr_tut_ig3@", "machinic_loop_mechandplayer", "Mechanic 4", AnimationOptions =
- {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["medic2"] = {"amb@medic@standing@tendtodead@base", "base", "Medic 2", AnimationOptions =
- {
- EmoteLoop = true,
- }},
- ["meditate"] = {"rcmcollect_paperleadinout@", "meditiate_idle", "Meditiate", AnimationOptions = -- CHANGE ME
- {
- EmoteLoop = true,
- }},
- ["meditate2"] = {"rcmepsilonism3", "ep_3_rcm_marnie_meditating", "Meditiate 2", AnimationOptions = -- CHANGE ME
- {
- EmoteLoop = true,
- }},
- ["meditate3"] = {"rcmepsilonism3", "base_loop", "Meditiate 3", AnimationOptions = -- CHANGE ME
- {
- EmoteLoop = true,
- }},
- ["metal"] = {"anim@mp_player_intincarrockstd@ps@", "idle_a", "Metal", AnimationOptions = -- CHANGE ME
- {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["no"] = {"anim@heists@ornate_bank@chat_manager", "fail", "No", AnimationOptions =
- {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["no2"] = {"mp_player_int_upper_nod", "mp_player_int_nod_no", "No 2", AnimationOptions =
- {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["nosepick"] = {"anim@mp_player_intcelebrationfemale@nose_pick", "nose_pick", "Nose Pick", AnimationOptions =
- {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["noway"] = {"gestures@m@standing@casual", "gesture_no_way", "No Way", AnimationOptions =
- {
- EmoteDuration = 1500,
- EmoteMoving = true,
- }},
- ["ok"] = {"anim@mp_player_intselfiedock", "idle_a", "OK", AnimationOptions =
- {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["outofbreath"] = {"re@construction", "out_of_breath", "Out of Breath", AnimationOptions =
- {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["pickup"] = {"random@domestic", "pickup_low", "Pickup"},
- ["push"] = {"missfinale_c2ig_11", "pushcar_offcliff_f", "Push", AnimationOptions =
- {
- EmoteLoop = true,
- }},
- ["push2"] = {"missfinale_c2ig_11", "pushcar_offcliff_m", "Push 2", AnimationOptions =
- {
- EmoteLoop = true,
- }},
- ["point"] = {"gestures@f@standing@casual", "gesture_point", "Point", AnimationOptions =
- {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["pushup"] = {"amb@world_human_push_ups@male@idle_a", "idle_d", "Pushup", AnimationOptions =
- {
- EmoteLoop = true,
- }},
- ["countdown"] = {"random@street_race", "grid_girl_race_start", "Countdown", AnimationOptions =
- {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["pointright"] = {"mp_gun_shop_tut", "indicate_right", "Point Right", AnimationOptions =
- {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["salute"] = {"anim@mp_player_intincarsalutestd@ds@", "idle_a", "Salute", AnimationOptions =
- {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["salute2"] = {"anim@mp_player_intincarsalutestd@ps@", "idle_a", "Salute 2", AnimationOptions =
- {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["salute3"] = {"anim@mp_player_intuppersalute", "idle_a", "Salute 3", AnimationOptions =
- {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["scared"] = {"random@domestic", "f_distressed_loop", "Scared", AnimationOptions =
- {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["scared2"] = {"random@homelandsecurity", "knees_loop_girl", "Scared 2", AnimationOptions =
- {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["screwyou"] = {"misscommon@response", "screw_you", "Screw You", AnimationOptions =
- {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["shakeoff"] = {"move_m@_idles@shake_off", "shakeoff_1", "Shake Off", AnimationOptions =
- {
- EmoteMoving = true,
- EmoteDuration = 3500,
- }},
- ["shot"] = {"random@dealgonewrong", "idle_a", "Shot", AnimationOptions =
- {
- EmoteLoop = true,
- }},
- ["sleep"] = {"timetable@tracy@sleep@", "idle_c", "Sleep", AnimationOptions =
- {
- EmoteLoop = true,
- }},
- ["shrug"] = {"gestures@f@standing@casual", "gesture_shrug_hard", "Shrug", AnimationOptions =
- {
- EmoteMoving = true,
- EmoteDuration = 1000,
- }},
- ["shrug2"] = {"gestures@m@standing@casual", "gesture_shrug_hard", "Shrug 2", AnimationOptions =
- {
- EmoteMoving = true,
- EmoteDuration = 1000,
- }},
- ["sit"] = {"anim@amb@business@bgen@bgen_no_work@", "sit_phone_phoneputdown_idle_nowork", "Sit", AnimationOptions =
- {
- EmoteLoop = true,
- }},
- ["sit2"] = {"rcm_barry3", "barry_3_sit_loop", "Sit 2", AnimationOptions =
- {
- EmoteLoop = true,
- }},
- ["sit3"] = {"amb@world_human_picnic@male@idle_a", "idle_a", "Sit 3", AnimationOptions =
- {
- EmoteLoop = true,
- }},
- ["sit4"] = {"amb@world_human_picnic@female@idle_a", "idle_a", "Sit 4", AnimationOptions =
- {
- EmoteLoop = true,
- }},
- ["sit5"] = {"anim@heists@fleeca_bank@ig_7_jetski_owner", "owner_idle", "Sit 5", AnimationOptions =
- {
- EmoteLoop = true,
- }},
- ["sit6"] = {"timetable@jimmy@mics3_ig_15@", "idle_a_jimmy", "Sit 6", AnimationOptions =
- {
- EmoteLoop = true,
- }},
- ["sit7"] = {"anim@amb@nightclub@lazlow@lo_alone@", "lowalone_base_laz", "Sit 7", AnimationOptions =
- {
- EmoteLoop = true,
- }},
- ["sit8"] = {"timetable@jimmy@mics3_ig_15@", "mics3_15_base_jimmy", "Sit 8", AnimationOptions =
- {
- EmoteLoop = true,
- }},
- ["sit9"] = {"amb@world_human_stupor@male@idle_a", "idle_a", "Sit 9", AnimationOptions =
- {
- EmoteLoop = true,
- }},
- ["sitlean"] = {"timetable@tracy@ig_14@", "ig_14_base_tracy", "Sit Lean", AnimationOptions =
- {
- EmoteLoop = true,
- }},
- ["sitsad"] = {"anim@amb@business@bgen@bgen_no_work@", "sit_phone_phoneputdown_sleeping-noworkfemale", "Sit Sad", AnimationOptions =
- {
- EmoteLoop = true,
- }},
- ["sitscared"] = {"anim@heists@ornate_bank@hostages@hit", "hit_loop_ped_b", "Sit Scared", AnimationOptions =
- {
- EmoteLoop = true,
- }},
- ["sitscared2"] = {"anim@heists@ornate_bank@hostages@ped_c@", "flinch_loop", "Sit Scared 2", AnimationOptions =
- {
- EmoteLoop = true,
- }},
- ["sitscared3"] = {"anim@heists@ornate_bank@hostages@ped_e@", "flinch_loop", "Sit Scared 3", AnimationOptions =
- {
- EmoteLoop = true,
- }},
- ["sitdrunk"] = {"timetable@amanda@drunk@base", "base", "Sit Drunk", AnimationOptions =
- {
- EmoteLoop = true,
- }},
- ["sitchair2"] = {"timetable@ron@ig_5_p3", "ig_5_p3_base", "Sit Chair 2", AnimationOptions =
- {
- EmoteLoop = true,
- }},
- ["sitchair3"] = {"timetable@reunited@ig_10", "base_amanda", "Sit Chair 3", AnimationOptions =
- {
- EmoteLoop = true,
- }},
- ["sitchair4"] = {"timetable@ron@ig_3_couch", "base", "Sit Chair 4", AnimationOptions =
- {
- EmoteLoop = true,
- }},
- ["sitchair5"] = {"timetable@jimmy@mics3_ig_15@", "mics3_15_base_tracy", "Sit Chair 5", AnimationOptions =
- {
- EmoteLoop = true,
- }},
- ["sitchair6"] = {"timetable@maid@couch@", "base", "Sit Chair 6", AnimationOptions =
- {
- EmoteLoop = true,
- }},
- ["sitchairside"] = {"timetable@ron@ron_ig_2_alt1", "ig_2_alt1_base", "Sit Chair Side", AnimationOptions =
- {
- EmoteLoop = true,
- }},
- ["situp"] = {"amb@world_human_sit_ups@male@idle_a", "idle_a", "Sit Up", AnimationOptions =
- {
- EmoteLoop = true,
- }},
- ["clapangry"] = {"anim@arena@celeb@flat@solo@no_props@", "angry_clap_a_player_a", "Clap Angry", AnimationOptions =
- {
- EmoteLoop = true,
- }},
- ["slowclap3"] = {"anim@mp_player_intupperslow_clap", "idle_a", "Slow Clap 3", AnimationOptions =
- {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["clap"] = {"amb@world_human_cheering@male_a", "base", "Clap", AnimationOptions =
- {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["slowclap"] = {"anim@mp_player_intcelebrationfemale@slow_clap", "slow_clap", "Slow Clap", AnimationOptions =
- {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["slowclap2"] = {"anim@mp_player_intcelebrationmale@slow_clap", "slow_clap", "Slow Clap 2", AnimationOptions =
- {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["smell"] = {"move_p_m_two_idles@generic", "fidget_sniff_fingers", "Smell", AnimationOptions =
- {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["stickup"] = {"random@countryside_gang_fight", "biker_02_stickup_loop", "Stick Up", AnimationOptions =
- {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["stumble"] = {"misscarsteal4@actor", "stumble", "Stumble", AnimationOptions =
- {
- EmoteLoop = true,
- }},
- ["stunned"] = {"stungun@standing", "damage", "Stunned", AnimationOptions =
- {
- EmoteLoop = true,
- }},
- ["sunbathe"] = {"amb@world_human_sunbathe@male@back@base", "base", "Sunbathe", AnimationOptions =
- {
- EmoteLoop = true,
- }},
- ["sunbathe2"] = {"amb@world_human_sunbathe@female@back@base", "base", "Sunbathe 2", AnimationOptions =
- {
- EmoteLoop = true,
- }},
- ["t"] = {"missfam5_yoga", "a2_pose", "T", AnimationOptions =
- {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["t2"] = {"mp_sleep", "bind_pose_180", "T 2", AnimationOptions =
- {
- EmoteLoop = true,
- }},
- ["think5"] = {"mp_cp_welcome_tutthink", "b_think", "Think 5", AnimationOptions =
- {
- EmoteMoving = true,
- EmoteDuration = 2000,
- }},
- ["think"] = {"misscarsteal4@aliens", "rehearsal_base_idle_director", "Think", AnimationOptions =
- {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["think3"] = {"timetable@tracy@ig_8@base", "base", "Think 3", AnimationOptions =
- {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
+ ["beast"] = { "anim@mp_fm_event@intro", "beast_transform", "Beast", AnimationOptions = {
+ EmoteMoving = true,
+ EmoteDuration = 5000,
+ }},
+ ["chill"] = { "switch@trevor@scares_tramp", "trev_scares_tramp_idle_tramp", "Chill", AnimationOptions = {
+ EmoteLoop = true,
+ }},
+ ["cloudgaze"] = { "switch@trevor@annoys_sunbathers", "trev_annoys_sunbathers_loop_girl", "Cloudgaze", AnimationOptions = {
+ EmoteLoop = true,
+ }},
+ ["cloudgaze2"] = { "switch@trevor@annoys_sunbathers", "trev_annoys_sunbathers_loop_guy", "Cloudgaze 2", AnimationOptions = {
+ EmoteLoop = true,
+ }},
+ ["prone"] = { "missfbi3_sniping", "prone_dave", "Prone", AnimationOptions = {
+ EmoteLoop = true,
+ }},
+ ["pullover"] = { "misscarsteal3pullover", "pull_over_right", "Pullover", AnimationOptions = {
+ EmoteMoving = true,
+ EmoteDuration = 1300,
+ }},
+ ["idle"] = { "anim@heists@heist_corona@team_idles@male_a", "idle", "Idle", AnimationOptions = {
+ EmoteLoop = true,
+ }},
+ ["idle8"] = { "amb@world_human_hang_out_street@male_b@idle_a", "idle_b", "Idle 8" },
+ ["idle9"] = { "friends@fra@ig_1", "base_idle", "Idle 9", AnimationOptions = {
+ EmoteLoop = true,
+ }},
+ ["idle10"] = { "mp_move@prostitute@m@french", "idle", "Idle 10", AnimationOptions = {
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["idle11"] = { "random@countrysiderobbery", "idle_a", "Idle 11", AnimationOptions = {
+ EmoteLoop = true,
+ }},
+ ["idle2"] = { "anim@heists@heist_corona@team_idles@female_a", "idle", "Idle 2", AnimationOptions = {
+ EmoteLoop = true,
+ }},
+ ["idle3"] = { "anim@heists@humane_labs@finale@strip_club", "ped_b_celebrate_loop", "Idle 3", AnimationOptions = {
+ EmoteLoop = true,
+ }},
+ ["idle4"] = { "anim@mp_celebration@idles@female", "celebration_idle_f_a", "Idle 4", AnimationOptions = {
+ EmoteLoop = true,
+ }},
+ ["idle5"] = { "anim@mp_corona_idles@female_b@idle_a", "idle_a", "Idle 5", AnimationOptions = {
+ EmoteLoop = true,
+ }},
+ ["idle6"] = { "anim@mp_corona_idles@male_c@idle_a", "idle_a", "Idle 6", AnimationOptions = {
+ EmoteLoop = true,
+ }},
+ ["idle7"] = { "anim@mp_corona_idles@male_d@idle_a", "idle_a", "Idle 7", AnimationOptions = {
+ EmoteLoop = true,
+ }},
+ ["idledrunk"] = { "random@drunk_driver_1", "drunk_driver_stand_loop_dd1", "Idle Drunk", AnimationOptions = {
+ EmoteLoop = true,
+ }},
+ ["idledrunk2"] = { "random@drunk_driver_1", "drunk_driver_stand_loop_dd2", "Idle Drunk 2", AnimationOptions = {
+ EmoteLoop = true,
+ }},
+ ["idledrunk3"] = { "missarmenian2", "standing_idle_loop_drunk", "Idle Drunk 3", AnimationOptions = {
+ EmoteLoop = true,
+ }},
+ ["airguitar"] = { "anim@mp_player_intcelebrationfemale@air_guitar", "air_guitar", "Air Guitar" },
+ ["airsynth"] = { "anim@mp_player_intcelebrationfemale@air_synth", "air_synth", "Air Synth" },
+ ["argue"] = { "misscarsteal4@actor", "actor_berating_loop", "Argue", AnimationOptions = {
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["argue2"] = { "oddjobs@assassinate@vice@hooker", "argue_a", "Argue 2", AnimationOptions = {
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["bartender"] = { "anim@amb@clubhouse@bar@drink@idle_a", "idle_a_bartender", "Bartender", AnimationOptions = {
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["blowkiss"] = { "anim@mp_player_intcelebrationfemale@blow_kiss", "blow_kiss", "Blow Kiss" },
+ ["blowkiss2"] = { "anim@mp_player_intselfieblow_kiss", "exit", "Blow Kiss 2", AnimationOptions = {
+ EmoteMoving = true,
+ EmoteDuration = 2000
- ["think2"] = {"missheist_jewelleadinout", "jh_int_outro_loop_a", "Think 2", AnimationOptions =
- {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["thumbsup3"] = {"anim@mp_player_intincarthumbs_uplow@ds@", "enter", "Thumbs Up 3", AnimationOptions =
- {
- EmoteMoving = true,
- EmoteDuration = 3000,
- }},
- ["thumbsup2"] = {"anim@mp_player_intselfiethumbs_up", "idle_a", "Thumbs Up 2", AnimationOptions =
- {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["thumbsup"] = {"anim@mp_player_intupperthumbs_up", "idle_a", "Thumbs Up", AnimationOptions =
- {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["type"] = {"anim@heists@prison_heiststation@cop_reactions", "cop_b_idle", "Type", AnimationOptions =
- {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["type2"] = {"anim@heists@prison_heistig1_p1_guard_checks_bus", "loop", "Type 2", AnimationOptions =
- {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["type3"] = {"mp_prison_break", "hack_loop", "Type 3", AnimationOptions =
- {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["type4"] = {"mp_fbi_heist", "loop", "Type 4", AnimationOptions =
- {
- EmoteLoop = true,
- }},
- ["warmth"] = {"amb@world_human_stand_fire@male@idle_a", "idle_a", "Warmth", AnimationOptions =
- {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["wave4"] = {"random@mugging5", "001445_01_gangintimidation_1_female_idle_b", "Wave 4", AnimationOptions =
- {
- EmoteMoving = true,
- EmoteDuration = 3000,
- }},
- ["wave2"] = {"anim@mp_player_intcelebrationfemale@wave", "wave", "Wave 2", AnimationOptions =
- {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["wave3"] = {"friends@fra@ig_1", "over_here_idle_a", "Wave 3", AnimationOptions =
- {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["wave"] = {"friends@frj@ig_1", "wave_a", "Wave", AnimationOptions =
- {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["wave5"] = {"friends@frj@ig_1", "wave_b", "Wave 5", AnimationOptions =
- {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["wave6"] = {"friends@frj@ig_1", "wave_c", "Wave 6", AnimationOptions =
- {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["wave7"] = {"friends@frj@ig_1", "wave_d", "Wave 7", AnimationOptions =
- {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["wave8"] = {"friends@frj@ig_1", "wave_e", "Wave 8", AnimationOptions =
- {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["wave9"] = {"gestures@m@standing@casual", "gesture_hello", "Wave 9", AnimationOptions =
- {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["whistle"] = {"taxi_hail", "hail_taxi", "Whistle", AnimationOptions =
- {
- EmoteMoving = true,
- EmoteDuration = 1300,
- }},
- ["whistle2"] = {"rcmnigel1c", "hailing_whistle_waive_a", "Whistle 2", AnimationOptions =
- {
- EmoteMoving = true,
- EmoteDuration = 2000,
- }},
- ["yeah"] = {"anim@mp_player_intupperair_shagging", "idle_a", "Yeah", AnimationOptions =
- {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["lift"] = {"random@hitch_lift", "idle_f", "Lift", AnimationOptions =
- {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["lol"] = {"anim@arena@celeb@flat@paired@no_props@", "laugh_a_player_b", "LOL", AnimationOptions =
- {
- EmoteLoop = true,
- }},
- ["lol2"] = {"anim@arena@celeb@flat@solo@no_props@", "giggle_a_player_b", "LOL 2", AnimationOptions =
- {
- EmoteLoop = true,
- }},
- ["statue2"] = {"fra_0_int-1", "cs_lamardavis_dual-1", "Statue 2", AnimationOptions =
- {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["statue3"] = {"club_intro2-0", "csb_englishdave_dual-0", "Statue 3", AnimationOptions =
- {
- EmoteLoop = true,
- }},
- ["gangsign"] = {"mp_player_int_uppergang_sign_a", "mp_player_int_gang_sign_a", "Gang Sign", AnimationOptions =
- {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["gangsign2"] = {"mp_player_int_uppergang_sign_b", "mp_player_int_gang_sign_b", "Gang Sign 2", AnimationOptions =
- {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["passout"] = {"missarmenian2", "drunk_loop", "Passout", AnimationOptions =
- {
- EmoteLoop = true,
- }},
- ["passout2"] = {"missarmenian2", "corpse_search_exit_ped", "Passout 2", AnimationOptions =
- {
- EmoteLoop = true,
- }},
- ["passout3"] = {"anim@gangops@morgue@table@", "body_search", "Passout 3", AnimationOptions =
- {
- EmoteLoop = true,
- }},
- ["passout4"] = {"mini@cpr@char_b@cpr_def", "cpr_pumpchest_idle", "Passout 4", AnimationOptions =
- {
- EmoteLoop = true,
- }},
- ["passout5"] = {"random@mugging4", "flee_backward_loop_shopkeeper", "Passout 5", AnimationOptions =
- {
- EmoteLoop = true,
- }},
- ["petting"] = {"creatures@rottweiler@tricks@", "petting_franklin", "Petting", AnimationOptions =
- {
- EmoteLoop = true,
- }},
- ["crawl"] = {"move_injured_ground", "front_loop", "Crawl", AnimationOptions =
- {
- EmoteLoop = true,
- }},
- ["flip2"] = {"anim@arena@celeb@flat@solo@no_props@", "cap_a_player_a", "Flip 2"},
- ["flip"] = {"anim@arena@celeb@flat@solo@no_props@", "flip_a_player_a", "Flip"},
- ["slide"] = {"anim@arena@celeb@flat@solo@no_props@", "slide_a_player_a", "Slide"},
- ["slide2"] = {"anim@arena@celeb@flat@solo@no_props@", "slide_b_player_a", "Slide 2"},
- ["slide3"] = {"anim@arena@celeb@flat@solo@no_props@", "slide_c_player_a", "Slide 3"},
- ["slugger"] = {"anim@arena@celeb@flat@solo@no_props@", "slugger_a_player_a", "Slugger"},
- ["flipoff"] = {"anim@arena@celeb@podium@no_prop@", "flip_off_a_1st", "Flip Off", AnimationOptions =
- {
- EmoteMoving = true,
- }},
- ["flipoff2"] = {"anim@arena@celeb@podium@no_prop@", "flip_off_c_1st", "Flip Off 2", AnimationOptions =
- {
- EmoteMoving = true,
- }},
- ["bow"] = {"anim@arena@celeb@podium@no_prop@", "regal_c_1st", "Bow", AnimationOptions =
- {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["bow2"] = {"anim@arena@celeb@podium@no_prop@", "regal_a_1st", "Bow 2", AnimationOptions =
- {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["keyfob"] = {"anim@mp_player_intmenu@key_fob@", "fob_click", "Key Fob", AnimationOptions =
- {
- EmoteLoop = false,
- EmoteMoving = true,
- EmoteDuration = 1000,
- }},
- ["golfswing"] = {"rcmnigel1d", "swing_a_mark", "Golf Swing"},
- ["eat"] = {"mp_player_inteat@burger", "mp_player_int_eat_burger", "Eat", AnimationOptions =
- {
- EmoteMoving = true,
- EmoteDuration = 3000,
- }},
- ["reaching"] = {"move_m@intimidation@cop@unarmed", "idle", "Reaching", AnimationOptions =
- {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["wait"] = {"random@shop_tattoo", "_idle_a", "Wait", AnimationOptions =
- {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["wait2"] = {"missbigscore2aig_3", "wait_for_van_c", "Wait 2", AnimationOptions =
- {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["wait12"] = {"rcmjosh1", "idle", "Wait 12", AnimationOptions =
- {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["wait13"] = {"rcmnigel1a", "base", "Wait 13", AnimationOptions =
- {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["lapdance2"] = {"mini@strip_club@private_dance@idle", "priv_dance_idle", "Lapdance 2", AnimationOptions =
- {
- EmoteLoop = true,
- }},
- ["lapdance3"] = {"mini@strip_club@private_dance@part2", "priv_dance_p2", "Lapdance 3", AnimationOptions =
- {
- EmoteLoop = true,
- }},
- ["lapdance3"] = {"mini@strip_club@private_dance@part3", "priv_dance_p3", "Lapdance 3", AnimationOptions =
- {
- EmoteLoop = true,
- }},
- ["twerk"] = {"switch@trevor@mocks_lapdance", "001443_01_trvs_28_idle_stripper", "Twerk", AnimationOptions =
- {
- EmoteLoop = true,
- }},
- ["slap"] = {"melee@unarmed@streamed_variations", "plyr_takedown_front_slap", "Slap", AnimationOptions =
- {
- EmoteLoop = true,
- EmoteMoving = true,
- EmoteDuration = 2000,
- }},
- ["headbutt"] = {"melee@unarmed@streamed_variations", "plyr_takedown_front_headbutt", "Headbutt"},
- ["fishdance"] = {"anim@mp_player_intupperfind_the_fish", "idle_a", "Fish Dance", AnimationOptions =
- {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["peace"] = {"mp_player_int_upperpeace_sign", "mp_player_int_peace_sign", "Peace", AnimationOptions =
- {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["peace2"] = {"anim@mp_player_intupperpeace", "idle_a", "Peace 2", AnimationOptions =
- {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["cpr"] = {"mini@cpr@char_a@cpr_str", "cpr_pumpchest", "CPR", AnimationOptions =
- {
- EmoteLoop = true,
- }},
- ["cpr2"] = {"mini@cpr@char_a@cpr_str", "cpr_pumpchest", "CPR 2", AnimationOptions =
- {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["ledge"] = {"missfbi1", "ledge_loop", "Ledge", AnimationOptions =
- {
- EmoteLoop = true,
- }},
- ["airplane"] = {"missfbi1", "ledge_loop", "Air Plane", AnimationOptions =
- {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["peek"] = {"random@paparazzi@peek", "left_peek_a", "Peek", AnimationOptions =
- {
- EmoteLoop = true,
- }},
- ["cough"] = {"timetable@gardener@smoking_joint", "idle_cough", "Cough", AnimationOptions =
- {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["stretch"] = {"mini@triathlon", "idle_e", "Stretch", AnimationOptions =
- {
- EmoteLoop = true,
- }},
- ["stretch2"] = {"mini@triathlon", "idle_f", "Stretch 2", AnimationOptions =
- {
- EmoteLoop = true,
- }},
- ["stretch3"] = {"mini@triathlon", "idle_d", "Stretch 3", AnimationOptions =
- {
- EmoteLoop = true,
- }},
- ["stretch4"] = {"rcmfanatic1maryann_stretchidle_b", "idle_e", "Stretch 4", AnimationOptions =
- {
- EmoteLoop = true,
- }},
- ["celebrate"] = {"rcmfanatic1celebrate", "celebrate", "Celebrate", AnimationOptions =
- {
- EmoteLoop = true,
- }},
- ["punching"] = {"rcmextreme2", "loop_punching", "Punching", AnimationOptions =
- {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["superhero"] = {"rcmbarry", "base", "Superhero", AnimationOptions =
- {
- EmoteLoop = true,
- }},
- ["superhero2"] = {"rcmbarry", "base", "Superhero 2", AnimationOptions =
- {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["mindcontrol"] = {"rcmbarry", "mind_control_b_loop", "Mind Control", AnimationOptions =
- {
- EmoteLoop = true,
- }},
- ["mindcontrol2"] = {"rcmbarry", "bar_1_attack_idle_aln", "Mind Control 2", AnimationOptions =
- {
- EmoteLoop = true,
- }},
- ["clown"] = {"rcm_barry2", "clown_idle_0", "Clown", AnimationOptions =
- {
- EmoteLoop = true,
- }},
- ["clown2"] = {"rcm_barry2", "clown_idle_1", "Clown 2", AnimationOptions =
- {
- EmoteLoop = true,
- }},
- ["clown3"] = {"rcm_barry2", "clown_idle_2", "Clown 3", AnimationOptions =
- {
- EmoteLoop = true,
- }},
- ["clown4"] = {"rcm_barry2", "clown_idle_3", "Clown 4", AnimationOptions =
- {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["clown5"] = {"rcm_barry2", "clown_idle_6", "Clown 5", AnimationOptions =
- {
- EmoteLoop = true,
- }},
- ["tryclothes"] = {"mp_clothing@female@trousers", "try_trousers_neutral_a", "Try Clothes", AnimationOptions =
- {
- EmoteLoop = true,
- }},
- ["tryclothes2"] = {"mp_clothing@female@shirt", "try_shirt_positive_a", "Try Clothes 2", AnimationOptions =
- {
- EmoteLoop = true,
- }},
- ["tryclothes3"] = {"mp_clothing@female@shoes", "try_shoes_positive_a", "Try Clothes 3", AnimationOptions =
- {
- EmoteLoop = true,
- }},
- ["nervous2"] = {"mp_missheist_countrybank@nervous", "nervous_idle", "Nervous 2", AnimationOptions =
- {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["nervous"] = {"amb@world_human_bum_standing@twitchy@idle_a", "idle_c", "Nervous", AnimationOptions =
- {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["nervous3"] = {"rcmme_tracey1", "nervous_loop", "Nervous 3", AnimationOptions =
- {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["uncuff"] = {"mp_arresting", "a_uncuff", "Uncuff", AnimationOptions =
- {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["namaste"] = {"timetable@amanda@ig_4", "ig_4_base", "Namaste", AnimationOptions =
- {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["dj"] = {"anim@amb@nightclub@djs@dixon@", "dixn_dance_cntr_open_dix", "DJ", AnimationOptions =
- {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["threaten"] = {"random@atmrobberygen", "b_atm_mugging", "Threaten", AnimationOptions =
- {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["radio"] = {"random@arrests", "generic_radio_chatter", "Radio", AnimationOptions =
- {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["pull"] = {"random@mugging4", "struggle_loop_b_thief", "Pull", AnimationOptions =
- {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["bird"] = {"random@peyote@bird", "wakeup", "Bird"},
- ["chicken"] = {"random@peyote@chicken", "wakeup", "Chicken", AnimationOptions =
- {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["bark"] = {"random@peyote@dog", "wakeup", "Bark"},
- ["rabbit"] = {"random@peyote@rabbit", "wakeup", "Rabbit"},
- ["spiderman"] = {"missexile3", "ex03_train_roof_idle", "Spider-Man", AnimationOptions =
- {
- EmoteLoop = true,
- }},
- ["boi"] = {"special_ped@jane@monologue_5@monologue_5c", "brotheradrianhasshown_2", "BOI", AnimationOptions =
- {
- EmoteMoving = true,
- EmoteDuration = 3000,
- }},
- ["adjust"] = {"missmic4", "michael_tux_fidget", "Adjust", AnimationOptions =
- {
- EmoteMoving = true,
- EmoteDuration = 4000,
- }},
- ["handsup"] = {"missminuteman_1ig_2", "handsup_base", "Hands Up", AnimationOptions =
- {
- EmoteMoving = true,
- EmoteLoop = true,
- }},
- ["pee"] = {"misscarsteal2peeing", "peeing_loop", "Pee", AnimationOptions =
- {
- EmoteStuck = true,
- PtfxAsset = "scr_amb_chop",
- PtfxName = "ent_anim_dog_peeing",
- PtfxNoProp = true,
- PtfxPlacement = {-0.05, 0.3, 0.0, 0.0, 90.0, 90.0, 1.0},
- PtfxInfo = Config.Languages[Config.MenuLanguage]['pee'],
- PtfxWait = 3000,
- }},
+ }},
+ ["curtsy"] = { "anim@mp_player_intcelebrationpaired@f_f_sarcastic", "sarcastic_left", "Curtsy" },
+ ["bringiton"] = { "misscommon@response", "bring_it_on", "Bring It On", AnimationOptions = {
+ EmoteMoving = true,
+ EmoteDuration = 3000
+ }},
+ ["comeatmebro"] = { "mini@triathlon", "want_some_of_this", "Come at me bro", AnimationOptions = {
+ EmoteMoving = true,
+ EmoteDuration = 2000
+ }},
+ ["cop2"] = { "anim@amb@nightclub@peds@", "rcmme_amanda1_stand_loop_cop", "Cop 2", AnimationOptions = {
+ EmoteLoop = true,
+ }},
+ ["cop3"] = { "amb@code_human_police_investigate@idle_a", "idle_b", "Cop 3", AnimationOptions = {
+ EmoteLoop = true,
+ }},
+ ["crossarms"] = { "amb@world_human_hang_out_street@female_arms_crossed@idle_a", "idle_a", "Crossarms", AnimationOptions = {
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["crossarms2"] = { "amb@world_human_hang_out_street@male_c@idle_a", "idle_b", "Crossarms 2", AnimationOptions = {
+ EmoteMoving = true,
+ }},
+ ["crossarms3"] = { "anim@heists@heist_corona@single_team", "single_team_loop_boss", "Crossarms 3", AnimationOptions = {
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["crossarms4"] = { "random@street_race", "_car_b_lookout", "Crossarms 4", AnimationOptions = {
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["crossarms5"] = { "anim@amb@nightclub@peds@", "rcmme_amanda1_stand_loop_cop", "Crossarms 5", AnimationOptions = {
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["foldarms2"] = { "anim@amb@nightclub@peds@", "rcmme_amanda1_stand_loop_cop", "Fold Arms 2", AnimationOptions = {
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["crossarms6"] = { "random@shop_gunstore", "_idle", "Crossarms 6", AnimationOptions = {
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["foldarms"] = { "anim@amb@business@bgen@bgen_no_work@", "stand_phone_phoneputdown_idle_nowork", "Fold Arms", AnimationOptions = {
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["crossarmsside"] = { "rcmnigel1a_band_groupies", "base_m2", "Crossarms Side", AnimationOptions = {
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["damn"] = { "gestures@m@standing@casual", "gesture_damn", "Damn", AnimationOptions = {
+ EmoteMoving = true,
+ EmoteDuration = 1000
+ }},
+ ["damn2"] = { "anim@am_hold_up@male", "shoplift_mid", "Damn 2", AnimationOptions = {
+ EmoteMoving = true,
+ EmoteDuration = 1000
+ }},
+ ["pointdown"] = { "gestures@f@standing@casual", "gesture_hand_down", "Point Down", AnimationOptions = {
+ EmoteMoving = true,
+ EmoteDuration = 1000
+ }},
+ ["surrender"] = { "random@arrests@busted", "idle_a", "Surrender", AnimationOptions = {
+ EmoteMoving = false,
+ EmoteLoop = true,
+ }},
+ ["surrender2"] = { "mp_bank_heist_1", "f_cower_02", "Surrender 2", AnimationOptions = {
+ EmoteMoving = false,
+ EmoteLoop = true,
+ }},
+ ["surrender3"] = { "mp_bank_heist_1", "m_cower_01", "Surrender 3", AnimationOptions = {
+ EmoteMoving = false,
+ EmoteLoop = true,
+ }},
+ ["surrender4"] = { "mp_bank_heist_1", "m_cower_02", "Surrender 4", AnimationOptions = {
+ EmoteMoving = false,
+ EmoteLoop = true,
+ }},
+ ["surrender5"] = { "random@arrests", "kneeling_arrest_idle", "Surrender 5", AnimationOptions = {
+ EmoteMoving = false,
+ EmoteLoop = true,
+ }},
+ ["surrender6"] = { "rcmbarry", "m_cower_01", "Surrender 6", AnimationOptions = {
+ EmoteMoving = false,
+ EmoteLoop = true,
+ }},
+ ["facepalm2"] = { "anim@mp_player_intcelebrationfemale@face_palm", "face_palm", "Facepalm 2", AnimationOptions = {
+ EmoteMoving = true,
+ EmoteDuration = 8000
+ }},
+ ["facepalm"] = { "random@car_thief@agitated@idle_a", "agitated_idle_a", "Facepalm", AnimationOptions = {
+ EmoteMoving = true,
+ EmoteDuration = 8000
+ }},
+ ["facepalm3"] = { "missminuteman_1ig_2", "tasered_2", "Facepalm 3", AnimationOptions = {
+ EmoteMoving = true,
+ EmoteDuration = 8000
+ }},
+ ["facepalm4"] = { "anim@mp_player_intupperface_palm", "idle_a", "Facepalm 4", AnimationOptions = {
+ EmoteMoving = true,
+ EmoteLoop = true,
+ }},
+ ["fallover"] = { "random@drunk_driver_1", "drunk_fall_over", "Fall Over" },
+ ["fallover2"] = { "mp_suicide", "pistol", "Fall Over 2" },
+ ["fallover3"] = { "mp_suicide", "pill", "Fall Over 3" },
+ ["fallover4"] = { "friends@frf@ig_2", "knockout_plyr", "Fall Over 4" },
+ ["fallover5"] = { "anim@gangops@hostage@", "victim_fail", "Fall Over 5" },
+ ["fallasleep"] = { "mp_sleep", "sleep_loop", "Fall Asleep", AnimationOptions = {
+ EmoteMoving = true,
+ EmoteLoop = true,
+ }},
+ ["fightme"] = { "anim@deathmatch_intros@unarmed", "intro_male_unarmed_c", "Fight Me" },
+ ["fightme2"] = { "anim@deathmatch_intros@unarmed", "intro_male_unarmed_e", "Fight Me 2" },
+ ["finger"] = { "anim@mp_player_intselfiethe_bird", "idle_a", "Finger", AnimationOptions = {
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["finger2"] = { "anim@mp_player_intupperfinger", "idle_a_fp", "Finger 2", AnimationOptions = {
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["handshake"] = { "mp_ped_interaction", "handshake_guy_a", "Handshake", AnimationOptions = {
+ EmoteMoving = true,
+ EmoteDuration = 3000
+ }},
+ ["handshake2"] = { "mp_ped_interaction", "handshake_guy_b", "Handshake 2", AnimationOptions = {
+ EmoteMoving = true,
+ EmoteDuration = 3000
+ }},
+ ["wait"] = { "random@shop_tattoo", "_idle_a", "Wait", AnimationOptions = {
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["waitb"] = { "missbigscore2aig_3", "wait_for_van_c", "Wait B", AnimationOptions = {
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["waitc"] = { "amb@world_human_hang_out_street@female_hold_arm@idle_a", "idle_a", "Wait C", AnimationOptions = {
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["waitd"] = { "amb@world_human_hang_out_street@Female_arm_side@idle_a", "idle_a", "Wait D", AnimationOptions = {
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["waite"] = { "missclothing", "idle_storeclerk", "Wait E", AnimationOptions = {
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["waitf"] = { "timetable@amanda@ig_2", "ig_2_base_amanda", "Wait F", AnimationOptions = {
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["waitg"] = { "rcmnigel1cnmt_1c", "base", "Wait G", AnimationOptions = {
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["waith"] = { "rcmjosh1", "idle", "Wait H", AnimationOptions = {
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["waiti"] = { "rcmjosh2", "josh_2_intp1_base", "Wait I", AnimationOptions = {
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["waitj"] = { "timetable@amanda@ig_3", "ig_3_base_tracy", "Wait J", AnimationOptions = {
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["waitk"] = { "misshair_shop@hair_dressers", "keeper_base", "Wait K", AnimationOptions = {
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["waitl"] = { "rcmjosh1", "keeper_base", "Wait L", AnimationOptions = {
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["waitm"] = { "rcmnigel1a", "base", "Wait M", AnimationOptions = {
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["hiking"] = { "move_m@hiking", "idle", "Hiking", AnimationOptions = {
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["hug"] = { "mp_ped_interaction", "kisses_guy_a", "Hug" },
+ ["hug2"] = { "mp_ped_interaction", "kisses_guy_b", "Hug 2" },
+ ["hug3"] = { "mp_ped_interaction", "hugs_guy_a", "Hug 3" },
+ ["inspect"] = { "random@train_tracks", "idle_e", "Inspect" },
+ ["jazzhands"] = { "anim@mp_player_intcelebrationfemale@jazz_hands", "jazz_hands", "Jazzhands", AnimationOptions = {
+ EmoteMoving = true,
+ EmoteDuration = 6000,
+ }},
+ ["jog2"] = { "amb@world_human_jog_standing@male@idle_a", "idle_a", "Jog 2", AnimationOptions = {
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["jog3"] = { "amb@world_human_jog_standing@female@idle_a", "idle_a", "Jog 3", AnimationOptions = {
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["jog4"] = { "amb@world_human_power_walker@female@idle_a", "idle_a", "Jog 4", AnimationOptions = {
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["jog5"] = { "move_m@joy@a", "walk", "Jog 5", AnimationOptions = {
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["jumpingjacks"] = { "timetable@reunited@ig_2", "jimmy_getknocked", "Jumping Jacks", AnimationOptions = {
+ EmoteLoop = true,
+ }},
+ ["kneel2"] = { "rcmextreme3", "idle", "Kneel 2", AnimationOptions = {
+ EmoteLoop = true,
+ }},
+ ["kneel3"] = { "amb@world_human_bum_wash@male@low@idle_a", "idle_a", "Kneel 3", AnimationOptions = {
+ EmoteLoop = true,
+ }},
+ ["knock"] = { "timetable@jimmy@doorknock@", "knockdoor_idle", "Knock", AnimationOptions = {
+ EmoteMoving = true,
+ EmoteLoop = true,
+ }},
+ ["knock2"] = { "missheistfbi3b_ig7", "lift_fibagent_loop", "Knock 2", AnimationOptions = {
+ EmoteLoop = true,
+ }},
+ ["knucklecrunch"] = { "anim@mp_player_intcelebrationfemale@knuckle_crunch", "knuckle_crunch", "Knuckle Crunch", AnimationOptions = {
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["lean2"] = { "amb@world_human_leaning@female@wall@back@hand_up@idle_a", "idle_a", "Lean 2", AnimationOptions = {
+ EmoteLoop = true,
+ }},
+ ["lean3"] = { "amb@world_human_leaning@female@wall@back@holding_elbow@idle_a", "idle_a", "Lean 3", AnimationOptions = {
+ EmoteLoop = true,
+ }},
+ ["lean4"] = { "amb@world_human_leaning@male@wall@back@foot_up@idle_a", "idle_a", "Lean 4", AnimationOptions = {
+ EmoteLoop = true,
+ }},
+ ["lean5"] = { "amb@world_human_leaning@male@wall@back@hands_together@idle_b", "idle_b", "Lean 5", AnimationOptions = {
+ EmoteLoop = true,
+ }},
+ ["leanflirt"] = { "random@street_race", "_car_a_flirt_girl", "Lean Flirt", AnimationOptions = {
+ EmoteLoop = true,
+ }},
+ ["leanbar2"] = { "amb@prop_human_bum_shopping_cart@male@idle_a", "idle_c", "Lean Bar 2", AnimationOptions = {
+ EmoteLoop = true,
+ }},
+ ["leanbar3"] = { "anim@amb@nightclub@lazlow@ig1_vip@", "clubvip_base_laz", "Lean Bar 3", AnimationOptions = {
+ EmoteLoop = true,
+ }},
+ ["leanbar4"] = { "anim@heists@prison_heist", "ped_b_loop_a", "Lean Bar 4", AnimationOptions = {
+ EmoteLoop = true,
+ }},
+ ["leanhigh"] = { "anim@mp_ferris_wheel", "idle_a_player_one", "Lean High", AnimationOptions = {
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["leanhigh2"] = { "anim@mp_ferris_wheel", "idle_a_player_two", "Lean High 2", AnimationOptions = {
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["leanside"] = { "timetable@mime@01_gc", "idle_a", "Leanside", AnimationOptions = {
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["leanside2"] = { "misscarstealfinale", "packer_idle_1_trevor", "Leanside 2", AnimationOptions = {
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["leanside3"] = { "misscarstealfinalecar_5_ig_1", "waitloop_lamar", "Leanside 3", AnimationOptions = {
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["leanside4"] = { "misscarstealfinalecar_5_ig_1", "waitloop_lamar", "Leanside 4", AnimationOptions = {
+ EmoteLoop = true,
+ EmoteMoving = false,
+ }},
+ ["leanside5"] = { "rcmjosh2", "josh_2_intp1_base", "Leanside 5", AnimationOptions = {
+ EmoteLoop = true,
+ EmoteMoving = false,
+ }},
+ ["me"] = { "gestures@f@standing@casual", "gesture_me_hard", "Me", AnimationOptions = {
+ EmoteMoving = true,
+ EmoteDuration = 1000
+ }},
+ ["mechanic"] = { "mini@repair", "fixing_a_ped", "Mechanic", AnimationOptions = {
+ EmoteLoop = true,
+ }},
+ ["mechanic2"] = { "mini@repair", "fixing_a_player", "Mechanic 2", AnimationOptions = {
+ EmoteLoop = true,
+ }},
+ ["mechanic3"] = { "amb@world_human_vehicle_mechanic@male@base", "base", "Mechanic 3", AnimationOptions = {
+ EmoteLoop = true,
+ EmoteMoving = false,
+ }},
+ ["mechanic4"] = { "anim@amb@clubhouse@tutorial@bkr_tut_ig3@", "machinic_loop_mechandplayer", "Mechanic 4", AnimationOptions = {
+ EmoteLoop = true,
+ }},
+ ["mechanic5"] = { "amb@prop_human_movie_bulb@idle_a", "idle_b", "Mechanic 5", AnimationOptions = {
+ EmoteLoop = true,
+ }},
+ ["medic2"] = { "amb@medic@standing@tendtodead@base", "base", "Medic 2", AnimationOptions = {
+ EmoteLoop = true,
+ }},
+ ["meditate"] = { "rcmcollect_paperleadinout@", "meditiate_idle", "Meditiate", AnimationOptions = { -- CHANGE ME
+ EmoteLoop = true,
+ }},
+ ["meditate2"] = { "rcmepsilonism3", "ep_3_rcm_marnie_meditating", "Meditiate 2", AnimationOptions = { -- CHANGE ME
+ EmoteLoop = true,
+ }},
+ ["meditate3"] = { "rcmepsilonism3", "base_loop", "Meditiate 3", AnimationOptions = { -- CHANGE ME
+ EmoteLoop = true,
+ }},
+ ["metal"] = { "anim@mp_player_intincarrockstd@ps@", "idle_a", "Metal", AnimationOptions = { -- CHANGE ME
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["no"] = { "anim@heists@ornate_bank@chat_manager", "fail", "No", AnimationOptions = {
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["no2"] = { "mp_player_int_upper_nod", "mp_player_int_nod_no", "No 2", AnimationOptions = {
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["nosepick"] = { "anim@mp_player_intcelebrationfemale@nose_pick", "nose_pick", "Nose Pick", AnimationOptions = {
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["noway"] = { "gestures@m@standing@casual", "gesture_no_way", "No Way", AnimationOptions = {
+ EmoteDuration = 1500,
+ EmoteMoving = true,
+ }},
+ ["ok"] = { "anim@mp_player_intselfiedock", "idle_a", "OK", AnimationOptions = {
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["dock"] = { "anim@mp_player_intincardockstd@rds@", "idle_a", "Dock", AnimationOptions = {
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["outofbreath"] = { "re@construction", "out_of_breath", "Out of Breath", AnimationOptions = {
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["pickup"] = { "random@domestic", "pickup_low", "Pickup" },
+ ["push"] = { "missfinale_c2ig_11", "pushcar_offcliff_f", "Push", AnimationOptions = {
+ EmoteLoop = true,
+ }},
+ ["push2"] = { "missfinale_c2ig_11", "pushcar_offcliff_m", "Push 2", AnimationOptions = {
+ EmoteLoop = true,
+ }},
+ ["point"] = { "gestures@f@standing@casual", "gesture_point", "Point", AnimationOptions = {
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["pushup"] = { "amb@world_human_push_ups@male@idle_a", "idle_d", "Pushup", AnimationOptions = {
+ EmoteLoop = true,
+ }},
+ ["countdown"] = { "random@street_race", "grid_girl_race_start", "Countdown", AnimationOptions = {
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["pointright"] = { "mp_gun_shop_tut", "indicate_right", "Point Right", AnimationOptions = {
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["salute"] = { "anim@mp_player_intincarsalutestd@ds@", "idle_a", "Salute", AnimationOptions = {
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["salute2"] = { "anim@mp_player_intincarsalutestd@ps@", "idle_a", "Salute 2", AnimationOptions = {
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["salute3"] = { "anim@mp_player_intuppersalute", "idle_a", "Salute 3", AnimationOptions = {
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["scared"] = { "random@domestic", "f_distressed_loop", "Scared", AnimationOptions = {
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["scared2"] = { "random@homelandsecurity", "knees_loop_girl", "Scared 2", AnimationOptions = {
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["screwyou"] = { "misscommon@response", "screw_you", "Screw You", AnimationOptions = {
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["shakeoff"] = { "move_m@_idles@shake_off", "shakeoff_1", "Shake Off", AnimationOptions = {
+ EmoteMoving = true,
+ EmoteDuration = 3500,
+ }},
+ ["shot"] = { "random@dealgonewrong", "idle_a", "Shot", AnimationOptions = {
+ EmoteLoop = true,
+ }},
+ ["sleep"] = { "timetable@tracy@sleep@", "idle_c", "Sleep", AnimationOptions = {
+ EmoteLoop = true,
+ }},
+ ["shrug"] = { "gestures@f@standing@casual", "gesture_shrug_hard", "Shrug", AnimationOptions = {
+ EmoteMoving = true,
+ EmoteDuration = 1000,
+ }},
+ ["shrug2"] = { "gestures@m@standing@casual", "gesture_shrug_hard", "Shrug 2", AnimationOptions = {
+ EmoteMoving = true,
+ EmoteDuration = 1000,
+ }},
+ ["sit"] = { "anim@amb@business@bgen@bgen_no_work@", "sit_phone_phoneputdown_idle_nowork", "Sit", AnimationOptions = {
+ EmoteLoop = true,
+ }},
+ ["sit2"] = { "rcm_barry3", "barry_3_sit_loop", "Sit 2", AnimationOptions = {
+ EmoteLoop = true,
+ }},
+ ["sit3"] = { "amb@world_human_picnic@male@idle_a", "idle_a", "Sit 3", AnimationOptions = {
+ EmoteLoop = true,
+ }},
+ ["sit4"] = { "amb@world_human_picnic@female@idle_a", "idle_a", "Sit 4", AnimationOptions = {
+ EmoteLoop = true,
+ }},
+ ["sit5"] = { "anim@heists@fleeca_bank@ig_7_jetski_owner", "owner_idle", "Sit 5", AnimationOptions = {
+ EmoteLoop = true,
+ }},
+ ["sit6"] = { "timetable@jimmy@mics3_ig_15@", "idle_a_jimmy", "Sit 6", AnimationOptions = {
+ EmoteLoop = true,
+ }},
+ ["sit7"] = { "anim@amb@nightclub@lazlow@lo_alone@", "lowalone_base_laz", "Sit 7", AnimationOptions = {
+ EmoteLoop = true,
+ }},
+ ["sit8"] = { "timetable@jimmy@mics3_ig_15@", "mics3_15_base_jimmy", "Sit 8", AnimationOptions = {
+ EmoteLoop = true,
+ }},
+ ["sit9"] = { "amb@world_human_stupor@male@idle_a", "idle_a", "Sit 9", AnimationOptions = {
+ EmoteLoop = true,
+ }},
+ ["sitlow"] = { "anim@veh@lowrider@std@ds@arm@base", "sit_low_lowdoor", "Sit Lowrider", AnimationOptions = {
+ EmoteLoop = true,
+ }},
+ ["sitlean"] = { "timetable@tracy@ig_14@", "ig_14_base_tracy", "Sit Lean", AnimationOptions = {
+ EmoteLoop = true,
+ }},
+ ["sitsad"] = { "anim@amb@business@bgen@bgen_no_work@", "sit_phone_phoneputdown_sleeping-noworkfemale", "Sit Sad", AnimationOptions = {
+ EmoteLoop = true,
+ }},
+ ["sitscared"] = { "anim@heists@ornate_bank@hostages@hit", "hit_loop_ped_b", "Sit Scared", AnimationOptions = {
+ EmoteLoop = true,
+ }},
+ ["sitscared2"] = { "anim@heists@ornate_bank@hostages@ped_c@", "flinch_loop", "Sit Scared 2", AnimationOptions = {
+ EmoteLoop = true,
+ }},
+ ["sitscared3"] = { "anim@heists@ornate_bank@hostages@ped_e@", "flinch_loop", "Sit Scared 3", AnimationOptions = {
+ EmoteLoop = true,
+ }},
+ ["sitdrunk"] = { "timetable@amanda@drunk@base", "base", "Sit Drunk", AnimationOptions = {
+ EmoteLoop = true,
+ }},
+ ["sitchair2"] = { "timetable@ron@ig_5_p3", "ig_5_p3_base", "Sit Chair 2", AnimationOptions = {
+ EmoteLoop = true,
+ }},
+ ["sitchair3"] = { "timetable@reunited@ig_10", "base_amanda", "Sit Chair 3 (Female)", AnimationOptions = {
+ EmoteLoop = true,
+ }},
+ ["sitchair4"] = { "timetable@ron@ig_3_couch", "base", "Sit Chair 4", AnimationOptions = {
+ EmoteLoop = true,
+ }},
+ ["sitchair5"] = { "timetable@jimmy@mics3_ig_15@", "mics3_15_base_tracy", "Sit Chair Legs Crossed", AnimationOptions = {
+ EmoteLoop = true,
+ }},
+ ["sitchair6"] = { "timetable@maid@couch@", "base", "Sit Chair Lean Back", AnimationOptions = {
+ EmoteLoop = true,
+ }},
+ ["sitchairside"] = { "timetable@ron@ron_ig_2_alt1", "ig_2_alt1_base", "Sit Chair Side", AnimationOptions = {
+ EmoteLoop = true,
+ }},
+ ["situp"] = { "amb@world_human_sit_ups@male@idle_a", "idle_a", "Sit Up", AnimationOptions = {
+ EmoteLoop = true,
+ }},
+ ["clapangry"] = { "anim@arena@celeb@flat@solo@no_props@", "angry_clap_a_player_a", "Clap Angry", AnimationOptions = {
+ EmoteLoop = true,
+ }},
+ ["slowclap3"] = { "anim@mp_player_intupperslow_clap", "idle_a", "Slow Clap 3", AnimationOptions = {
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["clap"] = { "amb@world_human_cheering@male_a", "base", "Clap", AnimationOptions = {
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["slowclap"] = { "anim@mp_player_intcelebrationfemale@slow_clap", "slow_clap", "Slow Clap", AnimationOptions = {
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["slowclap2"] = { "anim@mp_player_intcelebrationmale@slow_clap", "slow_clap", "Slow Clap 2", AnimationOptions = {
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["smell"] = { "move_p_m_two_idles@generic", "fidget_sniff_fingers", "Smell", AnimationOptions = {
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["stickup"] = { "random@countryside_gang_fight", "biker_02_stickup_loop", "Stick Up", AnimationOptions = {
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["stumble"] = { "misscarsteal4@actor", "stumble", "Stumble", AnimationOptions = {
+ EmoteLoop = true,
+ }},
+ ["stunned"] = { "stungun@standing", "damage", "Stunned", AnimationOptions = {
+ EmoteLoop = true,
+ }},
+ ["sunbathe"] = { "amb@world_human_sunbathe@male@back@base", "base", "Sunbathe", AnimationOptions = {
+ EmoteLoop = true,
+ }},
+ ["sunbathe2"] = { "amb@world_human_sunbathe@female@back@base", "base", "Sunbathe 2", AnimationOptions = {
+ EmoteLoop = true,
+ }},
+ ["t"] = { "missfam5_yoga", "a2_pose", "T", AnimationOptions = {
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["t2"] = { "mp_sleep", "bind_pose_180", "T 2", AnimationOptions = {
+ EmoteLoop = true,
+ }},
+ ["think5"] = { "mp_cp_welcome_tutthink", "b_think", "Think 5", AnimationOptions = {
+ EmoteMoving = true,
+ EmoteDuration = 2000,
+ }},
+ ["think"] = { "misscarsteal4@aliens", "rehearsal_base_idle_director", "Think", AnimationOptions = {
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["think3"] = { "timetable@tracy@ig_8@base", "base", "Think 3", AnimationOptions = {
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
------------------------------------------------------------------------------------------------------------
------- These are Scenarios, some of these dont work on women and some other issues, but still good to have.
------------------------------------------------------------------------------------------------------------
+ ["think2"] = { "missheist_jewelleadinout", "jh_int_outro_loop_a", "Think 2", AnimationOptions = {
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["thumbsup3"] = { "anim@mp_player_intincarthumbs_uplow@ds@", "enter", "Thumbs Up 3", AnimationOptions = {
+ EmoteMoving = true,
+ EmoteDuration = 3000,
+ }},
+ ["thumbsup2"] = { "anim@mp_player_intselfiethumbs_up", "idle_a", "Thumbs Up 2", AnimationOptions = {
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["thumbsup"] = { "anim@mp_player_intupperthumbs_up", "idle_a", "Thumbs Up", AnimationOptions = {
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["type"] = { "anim@heists@prison_heiststation@cop_reactions", "cop_b_idle", "Type", AnimationOptions = {
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["type2"] = { "anim@heists@prison_heistig1_p1_guard_checks_bus", "loop", "Type 2", AnimationOptions = {
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["type3"] = { "mp_prison_break", "hack_loop", "Type 3", AnimationOptions = {
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["type4"] = { "mp_fbi_heist", "loop", "Type 4", AnimationOptions = {
+ EmoteLoop = true,
+ }},
+ ["warmth"] = { "amb@world_human_stand_fire@male@idle_a", "idle_a", "Warmth", AnimationOptions = {
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["wave4"] = { "random@mugging5", "001445_01_gangintimidation_1_female_idle_b", "Wave 4", AnimationOptions = {
+ EmoteMoving = true,
+ EmoteDuration = 3000,
+ }},
+ ["wave2"] = { "anim@mp_player_intcelebrationfemale@wave", "wave", "Wave 2", AnimationOptions = {
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["wave3"] = { "friends@fra@ig_1", "over_here_idle_a", "Wave 3", AnimationOptions = {
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["wave"] = { "friends@frj@ig_1", "wave_a", "Wave", AnimationOptions = {
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["wave5"] = { "friends@frj@ig_1", "wave_b", "Wave 5", AnimationOptions = {
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["wave6"] = { "friends@frj@ig_1", "wave_c", "Wave 6", AnimationOptions = {
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["wave7"] = { "friends@frj@ig_1", "wave_d", "Wave 7", AnimationOptions = {
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["wave8"] = { "friends@frj@ig_1", "wave_e", "Wave 8", AnimationOptions = {
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["wave9"] = { "gestures@m@standing@casual", "gesture_hello", "Wave 9", AnimationOptions = {
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["whistle"] = { "taxi_hail", "hail_taxi", "Whistle", AnimationOptions = {
+ EmoteMoving = true,
+ EmoteDuration = 1300,
+ }},
+ ["whistle2"] = { "rcmnigel1c", "hailing_whistle_waive_a", "Whistle 2", AnimationOptions = {
+ EmoteMoving = true,
+ EmoteDuration = 2000,
+ }},
+ ["yeah"] = { "anim@mp_player_intupperair_shagging", "idle_a", "Yeah", AnimationOptions = {
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["lift"] = { "random@hitch_lift", "idle_f", "Lift", AnimationOptions = {
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["lol"] = { "anim@arena@celeb@flat@paired@no_props@", "laugh_a_player_b", "LOL", AnimationOptions = {
+ EmoteLoop = true,
+ }},
+ ["lol2"] = { "anim@arena@celeb@flat@solo@no_props@", "giggle_a_player_b", "LOL 2", AnimationOptions = {
+ EmoteLoop = true,
+ }},
+ ["statue2"] = { "fra_0_int-1", "cs_lamardavis_dual-1", "Statue 2", AnimationOptions = {
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["statue3"] = { "club_intro2-0", "csb_englishdave_dual-0", "Statue 3", AnimationOptions = {
+ EmoteLoop = true,
+ }},
+ ["gangsign"] = { "mp_player_int_uppergang_sign_a", "mp_player_int_gang_sign_a", "Gang Sign", AnimationOptions = {
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["gangsign2"] = { "mp_player_int_uppergang_sign_b", "mp_player_int_gang_sign_b", "Gang Sign 2", AnimationOptions = {
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["passout"] = { "missarmenian2", "drunk_loop", "Passout", AnimationOptions = {
+ EmoteLoop = true,
+ }},
+ ["passout2"] = { "missarmenian2", "corpse_search_exit_ped", "Passout 2", AnimationOptions = {
+ EmoteLoop = true,
+ }},
+ ["passout3"] = { "anim@gangops@morgue@table@", "body_search", "Passout 3", AnimationOptions = {
+ EmoteLoop = true,
+ }},
+ ["passout4"] = { "mini@cpr@char_b@cpr_def", "cpr_pumpchest_idle", "Passout 4", AnimationOptions = {
+ EmoteLoop = true,
+ }},
+ ["passout5"] = { "random@mugging4", "flee_backward_loop_shopkeeper", "Passout 5", AnimationOptions = {
+ EmoteLoop = true,
+ }},
+ ["petting"] = { "creatures@rottweiler@tricks@", "petting_franklin", "Petting", AnimationOptions = {
+ EmoteLoop = true,
+ }},
+ ["crawl"] = { "move_injured_ground", "front_loop", "Crawl", AnimationOptions = {
+ EmoteLoop = true,
+ }},
+ ["flip2"] = { "anim@arena@celeb@flat@solo@no_props@", "cap_a_player_a", "Flip 2" },
+ ["flip"] = { "anim@arena@celeb@flat@solo@no_props@", "flip_a_player_a", "Flip" },
+ ["slide"] = { "anim@arena@celeb@flat@solo@no_props@", "slide_a_player_a", "Slide" },
+ ["slide2"] = { "anim@arena@celeb@flat@solo@no_props@", "slide_b_player_a", "Slide 2" },
+ ["slide3"] = { "anim@arena@celeb@flat@solo@no_props@", "slide_c_player_a", "Slide 3" },
+ ["slugger"] = { "anim@arena@celeb@flat@solo@no_props@", "slugger_a_player_a", "Slugger" },
+ ["flipoff"] = { "anim@arena@celeb@podium@no_prop@", "flip_off_a_1st", "Flip Off", AnimationOptions = {
+ EmoteMoving = true,
+ }},
+ ["flipoff2"] = { "anim@arena@celeb@podium@no_prop@", "flip_off_c_1st", "Flip Off 2", AnimationOptions = {
+ EmoteMoving = true,
+ }},
+ ["bow"] = { "anim@arena@celeb@podium@no_prop@", "regal_c_1st", "Bow", AnimationOptions = {
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["bow2"] = { "anim@arena@celeb@podium@no_prop@", "regal_a_1st", "Bow 2", AnimationOptions = {
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["keyfob"] = { "anim@mp_player_intmenu@key_fob@", "fob_click", "Key Fob", AnimationOptions = {
+ EmoteLoop = false,
+ EmoteMoving = true,
+ EmoteDuration = 1000,
+ }},
+ ["reaching"] = { "move_m@intimidation@cop@unarmed", "idle", "Reaching", AnimationOptions = {
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["slap"] = { "melee@unarmed@streamed_variations", "plyr_takedown_front_slap", "Slap", AnimationOptions = {
+ EmoteLoop = true,
+ EmoteMoving = true,
+ EmoteDuration = 2000,
+ }},
+ ["headbutt"] = { "melee@unarmed@streamed_variations", "plyr_takedown_front_headbutt", "Headbutt" },
+ ["fishdance"] = { "anim@mp_player_intupperfind_the_fish", "idle_a", "Fish Dance", AnimationOptions = {
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["peace"] = { "mp_player_int_upperpeace_sign", "mp_player_int_peace_sign", "Peace", AnimationOptions = {
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["peace2"] = { "anim@mp_player_intupperpeace", "idle_a", "Peace 2", AnimationOptions = {
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["peace3"] = { "anim@mp_player_intupperpeace", "idle_a_fp", "Peace 3", AnimationOptions = {
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["peace4"] = { "anim@mp_player_intincarpeacestd@ds@", "idle_a", "Peace 4", AnimationOptions = {
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["peace5"] = { "anim@mp_player_intincarpeacestd@ds@", "idle_a_fp", "Peace 5", AnimationOptions = {
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["peace6"] = { "anim@mp_player_intincarpeacebodhi@ds@", "idle_a", "Peace 6", AnimationOptions = {
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["peace7"] = { "anim@mp_player_intincarpeacebodhi@ds@", "idle_a_fp", "Peace 7", AnimationOptions = {
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["peacef"] = { "anim@mp_player_intcelebrationfemale@peace", "peace", "Peace Female", AnimationOptions = {
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["cpr"] = { "mini@cpr@char_a@cpr_str", "cpr_pumpchest", "CPR", AnimationOptions = {
+ EmoteLoop = true,
+ }},
+ ["cpr2"] = { "mini@cpr@char_a@cpr_str", "cpr_pumpchest", "CPR 2", AnimationOptions = {
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["ledge"] = { "missfbi1", "ledge_loop", "Ledge", AnimationOptions = {
+ EmoteLoop = true,
+ }},
+ ["airplane"] = { "missfbi1", "ledge_loop", "Air Plane", AnimationOptions = {
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["peek"] = { "random@paparazzi@peek", "left_peek_a", "Peek", AnimationOptions = {
+ EmoteLoop = true,
+ }},
+ ["cough"] = { "timetable@gardener@smoking_joint", "idle_cough", "Cough", AnimationOptions = {
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["stretch"] = { "mini@triathlon", "idle_e", "Stretch", AnimationOptions = {
+ EmoteLoop = true,
+ }},
+ ["stretch2"] = { "mini@triathlon", "idle_f", "Stretch 2", AnimationOptions = {
+ EmoteLoop = true,
+ }},
+ ["stretch3"] = { "mini@triathlon", "idle_d", "Stretch 3", AnimationOptions = {
+ EmoteLoop = true,
+ }},
+ ["stretch4"] = { "rcmfanatic1maryann_stretchidle_b", "idle_e", "Stretch 4", AnimationOptions = {
+ EmoteLoop = true,
+ }},
+ ["celebrate"] = { "rcmfanatic1celebrate", "celebrate", "Celebrate", AnimationOptions = {
+ EmoteLoop = true,
+ }},
+ ["punching"] = { "rcmextreme2", "loop_punching", "Punching", AnimationOptions = {
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["superhero"] = { "rcmbarry", "base", "Superhero", AnimationOptions = {
+ EmoteLoop = true,
+ }},
+ ["superhero2"] = { "rcmbarry", "base", "Superhero 2", AnimationOptions = {
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["mindcontrol"] = { "rcmbarry", "mind_control_b_loop", "Mind Control", AnimationOptions = {
+ EmoteLoop = true,
+ }},
+ ["mindcontrol2"] = { "rcmbarry", "bar_1_attack_idle_aln", "Mind Control 2", AnimationOptions = {
+ EmoteLoop = true,
+ }},
+ ["clown"] = { "rcm_barry2", "clown_idle_0", "Clown", AnimationOptions = {
+ EmoteLoop = true,
+ }},
+ ["clown2"] = { "rcm_barry2", "clown_idle_1", "Clown 2", AnimationOptions = {
+ EmoteLoop = true,
+ }},
+ ["clown3"] = { "rcm_barry2", "clown_idle_2", "Clown 3", AnimationOptions = {
+ EmoteLoop = true,
+ }},
+ ["clown4"] = { "rcm_barry2", "clown_idle_3", "Clown 4", AnimationOptions = {
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["clown5"] = { "rcm_barry2", "clown_idle_6", "Clown 5", AnimationOptions = {
+ EmoteLoop = true,
+ }},
+ ["tryclothes"] = { "mp_clothing@female@trousers", "try_trousers_neutral_a", "Try Clothes", AnimationOptions = {
+ EmoteLoop = true,
+ }},
+ ["tryclothes2"] = { "mp_clothing@female@shirt", "try_shirt_positive_a", "Try Clothes 2", AnimationOptions = {
+ EmoteLoop = true,
+ }},
+ ["tryclothes3"] = { "mp_clothing@female@shoes", "try_shoes_positive_a", "Try Clothes 3", AnimationOptions = {
+ EmoteLoop = true,
+ }},
+ ["nervous2"] = { "mp_missheist_countrybank@nervous", "nervous_idle", "Nervous 2", AnimationOptions = {
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["nervous"] = { "amb@world_human_bum_standing@twitchy@idle_a", "idle_c", "Nervous", AnimationOptions = {
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["nervous3"] = { "rcmme_tracey1", "nervous_loop", "Nervous 3", AnimationOptions = {
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["uncuff"] = { "mp_arresting", "a_uncuff", "Uncuff", AnimationOptions = {
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["namaste"] = { "timetable@amanda@ig_4", "ig_4_base", "Namaste", AnimationOptions = {
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["threaten"] = { "random@atmrobberygen", "b_atm_mugging", "Threaten", AnimationOptions = {
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["radio"] = { "random@arrests", "generic_radio_chatter", "Radio", AnimationOptions = {
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["pull"] = { "random@mugging4", "struggle_loop_b_thief", "Pull", AnimationOptions = {
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["bird"] = { "random@peyote@bird", "wakeup", "Bird" },
+ ["chicken"] = { "random@peyote@chicken", "wakeup", "Chicken", AnimationOptions = {
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["bark"] = { "random@peyote@dog", "wakeup", "Bark" },
+ ["rabbit"] = { "random@peyote@rabbit", "wakeup", "Rabbit" },
+ ["spiderman"] = { "missexile3", "ex03_train_roof_idle", "Spider-Man", AnimationOptions = {
+ EmoteLoop = true,
+ }},
+ ["boi"] = { "special_ped@jane@monologue_5@monologue_5c", "brotheradrianhasshown_2", "BOI", AnimationOptions = {
+ EmoteMoving = true,
+ EmoteDuration = 3000,
+ }},
+ ["adjust"] = { "missmic4", "michael_tux_fidget", "Adjust", AnimationOptions = {
+ EmoteMoving = true,
+ EmoteDuration = 4000,
+ }},
+ ["handsup"] = { "missminuteman_1ig_2", "handsup_base", "Hands Up", AnimationOptions = {
+ EmoteMoving = true,
+ EmoteLoop = true,
+ }},
+ ["handsup2"] = { "anim@mp_player_intuppersurrender", "idle_a_fp", "Hands Up 2", AnimationOptions = {
+ EmoteMoving = true,
+ EmoteLoop = true,
+ }},
+ ["valet"] = { "anim@amb@casino@valet_scenario@pose_a@", "base_a_m_y_vinewood_01", "Valet", AnimationOptions = {
+ EmoteLoop = true,
+ EmoteMoving = false,
+ }},
+ ["valet2"] = { "anim@amb@casino@valet_scenario@pose_b@", "base_a_m_y_vinewood_01", "Valet 2", AnimationOptions = {
+ EmoteLoop = true,
+ EmoteMoving = false,
+ }},
+ ["valet3"] = { "anim@amb@casino@valet_scenario@pose_d@", "base_a_m_y_vinewood_01", "Valet 3", AnimationOptions = {
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["tighten"] = { "timetable@denice@ig_1", "idle_b", "Tigten (Yoga)", AnimationOptions = {
+ EmoteMoving = false,
+ EmoteLoop = true,
+ }},
+ ["fspose"] = { "missfam5_yoga", "c2_pose", "F Sex Pose", AnimationOptions = {
+ EmoteMoving = false,
+ EmoteLoop = true,
+ }},
+ ["fspose2"] = { "missfam5_yoga", "c6_pose", "F Sex Pose 2", AnimationOptions = {
+ EmoteMoving = false,
+ EmoteLoop = true,
+ }},
+ ["fspose4"] = { "anim@amb@carmeet@checkout_car@", "female_c_idle_d", "F Sex Pose 4", AnimationOptions = {
+ EmoteMoving = false,
+ EmoteLoop = true,
+ }},
+ ["showerf"] = { "mp_safehouseshower@female@", "shower_enter_into_idle", "Shower Enter Female", AnimationOptions = {
+ EmoteMoving = false,
+ EmoteLoop = true,
+ }},
+ ["showerf2"] = { "mp_safehouseshower@female@", "shower_idle_a", "Shower Female", AnimationOptions = {
+ EmoteMoving = false,
+ EmoteLoop = true,
+ }},
+ ["showerf3"] = { "mp_safehouseshower@female@", "shower_idle_b", "Shower Female 2", AnimationOptions = {
+ EmoteMoving = false,
+ EmoteLoop = true,
+ }},
+ ["showerm"] = { "mp_safehouseshower@male@", "male_shower_idle_a", "Shower Enter Male", AnimationOptions = {
+ EmoteMoving = false,
+ EmoteLoop = true,
+ }},
+ ["showerm2"] = { "mp_safehouseshower@male@", "male_shower_idle_b", "Shower Male 2", AnimationOptions = {
+ EmoteMoving = false,
+ EmoteLoop = true,
+ }},
+ ["showerm3"] = { "mp_safehouseshower@male@", "male_shower_idle_c", "Shower Male 3", AnimationOptions = {
+ EmoteMoving = false,
+ EmoteLoop = true,
+ }},
+ ["showerm4"] = { "mp_safehouseshower@male@", "male_shower_idle_d", "Shower Male 4", AnimationOptions = {
+ EmoteMoving = false,
+ EmoteLoop = true,
+ }},
+ ["picklock"] = { "missheistfbisetup1", "hassle_intro_loop_f", "Picklock", AnimationOptions = {
+ EmoteMoving = true,
+ EmoteLoop = true,
+ }},
+ ["cleanhands"] = { "missheist_agency3aig_23", "urinal_sink_loop", "Clean Them Filthy Hands", AnimationOptions = {
+ EmoteMoving = true,
+ EmoteLoop = true,
+ }},
+ ["cleanface"] = { "switch@michael@wash_face", "loop_michael", "Clean Your Face", AnimationOptions = {
+ EmoteMoving = true,
+ EmoteLoop = true,
+ }},
+ ["buzz"] = { "anim@apt_trans@buzzer", "buzz_reg", "Buzz Door", AnimationOptions = {
+ EmoteLoop = false,
+ EmoteMoving = false,
+ }},
+ ["piss"] = { "missbigscore1switch_trevor_piss", "piss_loop", "Piss (Male)", AnimationOptions = {
+ EmoteMoving = false,
+ EmoteLoop = true,
+ }},
+ ["grieve"] = { "anim@miss@low@fin@vagos@", "idle_ped05", "Grieve The Dead", AnimationOptions = {
+ EmoteMoving = true,
+ EmoteLoop = true,
+ }},
+ ["respect"] = { "anim@mp_player_intcelebrationmale@respect", "respect", "Respect Male", AnimationOptions = {
+ EmoteMoving = true,
+ EmoteLoop = false,
+ }},
+ ["respectf"] = { "anim@mp_player_intcelebrationfemale@respect", "respect", "Respect Female", AnimationOptions = {
+ EmoteMoving = true,
+ EmoteLoop = false,
+ }},
+ ["bang"] = { "anim@mp_player_intcelebrationfemale@bang_bang", "bang_bang", "Bang Bang ", AnimationOptions = {
+ EmoteMoving = false,
+ EmoteDuration = 2500,
+ }},
+ ["checkcar"] = { "anim@amb@carmeet@checkout_car@male_a@idles", "idle_b", "Check Out · Female ", AnimationOptions = {
+ EmoteLoop = true,
+ }},
+ ["checkcar2"] = { "anim@amb@carmeet@checkout_car@male_c@idles", "idle_a", "Check Out 2 · Male ", AnimationOptions = {
+ EmoteLoop = true,
+ }},
+ ["showboobs"] = { "mini@strip_club@backroom@", "stripper_b_backroom_idle_b", "Show Boobs ", AnimationOptions = {
+ EmoteMoving = false,
+ EmoteDuration = 6000,
+ }},
+ ["showboobs2"] = { "mini@strip_club@idles@stripper", "stripper_idle_05", "Show Boobs 2", AnimationOptions = {
+ EmoteMoving = false,
+ EmoteDuration = 6000,
+ }},
+ ["watchstripper"] = { "amb@world_human_strip_watch_stand@male_c@idle_a", "idle_b", "Watch Stripper ", AnimationOptions = {
+ EmoteMoving = false,
+ EmoteDuration = 6000,
+ }},
+ ["hhands"] = { "misssnowie@hearthands", "base", "Heart Hands", AnimationOptions = {
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
- ["atm"] = {"Scenario", "PROP_HUMAN_ATM", "ATM"},
- ["bbq"] = {"MaleScenario", "PROP_HUMAN_BBQ", "BBQ"},
- ["bumbin"] = {"Scenario", "PROP_HUMAN_BUM_BIN", "Bum Bin"},
- ["bumsleep"] = {"Scenario", "WORLD_HUMAN_BUM_SLUMPED", "Bum Sleep"},
- ["cheer"] = {"Scenario", "WORLD_HUMAN_CHEERING", "Cheer"},
- ["chinup"] = {"Scenario", "PROP_HUMAN_MUSCLE_CHIN_UPS", "Chinup"},
- ["clipboard2"] = {"MaleScenario", "WORLD_HUMAN_CLIPBOARD", "Clipboard 2"},
- ["cop"] = {"Scenario", "WORLD_HUMAN_COP_IDLES", "Cop"},
- ["copbeacon"] = {"MaleScenario", "WORLD_HUMAN_CAR_PARK_ATTENDANT", "Cop Beacon"},
- ["filmshocking"] = {"Scenario", "WORLD_HUMAN_MOBILE_FILM_SHOCKING", "Film Shocking"},
- ["flex"] = {"Scenario", "WORLD_HUMAN_MUSCLE_FLEX", "Flex"},
- ["guard"] = {"Scenario", "WORLD_HUMAN_GUARD_STAND", "Guard"},
- ["hammer"] = {"Scenario", "WORLD_HUMAN_HAMMERING", "Hammer"},
- ["hangout"] = {"Scenario", "WORLD_HUMAN_HANG_OUT_STREET", "Hangout"},
- ["impatient"] = {"Scenario", "WORLD_HUMAN_STAND_IMPATIENT", "Impatient"},
- ["janitor"] = {"Scenario", "WORLD_HUMAN_JANITOR", "Janitor"},
- ["jog"] = {"Scenario", "WORLD_HUMAN_JOG_STANDING", "Jog"},
- ["kneel"] = {"Scenario", "CODE_HUMAN_MEDIC_KNEEL", "Kneel"},
- ["leafblower"] = {"MaleScenario", "WORLD_HUMAN_GARDENER_LEAF_BLOWER", "Leafblower"},
- ["lean"] = {"Scenario", "WORLD_HUMAN_LEANING", "Lean"},
- ["leanbar"] = {"Scenario", "PROP_HUMAN_BUM_SHOPPING_CART", "Lean Bar"},
- ["lookout"] = {"Scenario", "CODE_HUMAN_CROSS_ROAD_WAIT", "Lookout"},
- ["maid"] = {"Scenario", "WORLD_HUMAN_MAID_CLEAN", "Maid"},
- ["medic"] = {"Scenario", "CODE_HUMAN_MEDIC_TEND_TO_DEAD", "Medic"},
- ["musician"] = {"MaleScenario", "WORLD_HUMAN_MUSICIAN", "Musician"},
- ["notepad2"] = {"Scenario", "CODE_HUMAN_MEDIC_TIME_OF_DEATH", "Notepad 2"},
- ["parkingmeter"] = {"Scenario", "PROP_HUMAN_PARKING_METER", "Parking Meter"},
- ["party"] = {"Scenario", "WORLD_HUMAN_PARTYING", "Party"},
- ["texting"] = {"Scenario", "WORLD_HUMAN_STAND_MOBILE", "Texting"},
- ["prosthigh"] = {"Scenario", "WORLD_HUMAN_PROSTITUTE_HIGH_CLASS", "Prostitue High"},
- ["prostlow"] = {"Scenario", "WORLD_HUMAN_PROSTITUTE_LOW_CLASS", "Prostitue Low"},
- ["puddle"] = {"Scenario", "WORLD_HUMAN_BUM_WASH", "Puddle"},
- ["record"] = {"Scenario", "WORLD_HUMAN_MOBILE_FILM_SHOCKING", "Record"},
- -- Sitchair is a litte special, since you want the player to be seated correctly.
- -- So we set it as "ScenarioObject" and do TaskStartScenarioAtPosition() instead of "AtPlace"
- ["sitchair"] = {"ScenarioObject", "PROP_HUMAN_SEAT_CHAIR_MP_PLAYER", "Sit Chair"},
- ["smoke"] = {"Scenario", "WORLD_HUMAN_SMOKING", "Smoke"},
- ["smokeweed"] = {"MaleScenario", "WORLD_HUMAN_DRUG_DEALER", "Smoke Weed"},
- ["statue"] = {"Scenario", "WORLD_HUMAN_HUMAN_STATUE", "Statue"},
- ["sunbathe3"] = {"Scenario", "WORLD_HUMAN_SUNBATHE", "Sunbathe 3"},
- ["sunbatheback"] = {"Scenario", "WORLD_HUMAN_SUNBATHE_BACK", "Sunbathe Back"},
- ["weld"] = {"Scenario", "WORLD_HUMAN_WELDING", "Weld"},
- ["windowshop"] = {"Scenario", "WORLD_HUMAN_WINDOW_SHOP_BROWSE", "Window Shop"},
- ["yoga"] = {"Scenario", "WORLD_HUMAN_YOGA", "Yoga"},
- -- CASINO DLC EMOTES (STREAMED)
- ["karate"] = {"anim@mp_player_intcelebrationfemale@karate_chops", "karate_chops", "Karate"},
- ["karate2"] = {"anim@mp_player_intcelebrationmale@karate_chops", "karate_chops", "Karate 2"},
- ["cutthroat"] = {"anim@mp_player_intcelebrationmale@cut_throat", "cut_throat", "Cut Throat"},
- ["cutthroat2"] = {"anim@mp_player_intcelebrationfemale@cut_throat", "cut_throat", "Cut Throat 2"},
- ["mindblown"] = {"anim@mp_player_intcelebrationmale@mind_blown", "mind_blown", "Mind Blown", AnimationOptions =
- {
- EmoteMoving = true,
- EmoteDuration = 4000
- }},
- ["mindblown2"] = {"anim@mp_player_intcelebrationfemale@mind_blown", "mind_blown", "Mind Blown 2", AnimationOptions =
- {
- EmoteMoving = true,
- EmoteDuration = 4000
- }},
- ["boxing"] = {"anim@mp_player_intcelebrationmale@shadow_boxing", "shadow_boxing", "Boxing", AnimationOptions =
- {
- EmoteMoving = true,
- EmoteDuration = 4000
- }},
- ["boxing2"] = {"anim@mp_player_intcelebrationfemale@shadow_boxing", "shadow_boxing", "Boxing 2", AnimationOptions =
- {
- EmoteMoving = true,
- EmoteDuration = 4000
- }},
- ["stink"] = {"anim@mp_player_intcelebrationfemale@stinker", "stinker", "Stink", AnimationOptions =
- {
- EmoteMoving = true,
- EmoteLoop = true
- }},
- ["think4"] = {"anim@amb@casino@hangout@ped_male@stand@02b@idles", "idle_a", "Think 4", AnimationOptions =
- {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["adjusttie"] = {"clothingtie", "try_tie_positive_a", "Adjust Tie", AnimationOptions =
- {
- EmoteMoving = true,
- EmoteDuration = 5000
- }},
+
+
+ -----------------------------------------------------------------------------------------------------------
+ ------ The male and female 'interaction menu' emotes from GTA Online can be found under the following animation directories:
+ ------
+ ------ Male: anim@mp_player_intcelebrationmale
+ ------
+ ------ Female: anim@mp_player_intcelebrationfemale
+
+ -----------------------------------------------------------------------------------------------------------
+
+
+
+
+ -----------------------------------------------------------------------------------------------------------
+ ------ These are Scenarios, some of these dont work on women and some other issues, but still good to have.
+ -----------------------------------------------------------------------------------------------------------
+
+
+ ["atm"] = { "Scenario", "PROP_HUMAN_ATM", "ATM" },
+ ["bbq"] = { "MaleScenario", "PROP_HUMAN_BBQ", "BBQ" },
+ ["bumbin"] = { "Scenario", "PROP_HUMAN_BUM_BIN", "Bum Bin" },
+ ["bumsleep"] = { "Scenario", "WORLD_HUMAN_BUM_SLUMPED", "Bum Sleep" },
+ ["cheer"] = { "Scenario", "WORLD_HUMAN_CHEERING", "Cheer" },
+ ["chinup"] = { "Scenario", "PROP_HUMAN_MUSCLE_CHIN_UPS", "Chinup" },
+ ["cop"] = { "Scenario", "WORLD_HUMAN_COP_IDLES", "Cop" },
+ ["drill"] = { "Scenario", "WORLD_HUMAN_CONST_DRILL", "Construction Drilling" },
+ ["filmshocking"] = { "Scenario", "WORLD_HUMAN_MOBILE_FILM_SHOCKING", "Film Shocking" },
+ ["flex"] = { "Scenario", "WORLD_HUMAN_MUSCLE_FLEX", "Flex" },
+ ["guard"] = { "Scenario", "WORLD_HUMAN_GUARD_STAND", "Guard" },
+ ["garden"] = { "Scenario", "WORLD_HUMAN_GARDENER_PLANT", "Gardening" },
+ ["hammer"] = { "Scenario", "WORLD_HUMAN_HAMMERING", "Hammer" },
+ ["hangout"] = { "Scenario", "WORLD_HUMAN_HANG_OUT_STREET", "Hangout" },
+ ["impatient"] = { "Scenario", "WORLD_HUMAN_STAND_IMPATIENT", "Impatient" },
+ ["janitor"] = { "Scenario", "WORLD_HUMAN_JANITOR", "Janitor" },
+ ["jog"] = { "Scenario", "WORLD_HUMAN_JOG_STANDING", "Jog" },
+ ["kneel"] = { "Scenario", "CODE_HUMAN_MEDIC_KNEEL", "Kneel" },
+ ["lean"] = { "Scenario", "WORLD_HUMAN_LEANING", "Lean" },
+ ["leanbar"] = { "Scenario", "PROP_HUMAN_BUM_SHOPPING_CART", "Lean Bar" },
+ ["lookout"] = { "Scenario", "CODE_HUMAN_CROSS_ROAD_WAIT", "Lookout" },
+ ["maid"] = { "Scenario", "WORLD_HUMAN_MAID_CLEAN", "Maid" },
+ ["medic"] = { "Scenario", "CODE_HUMAN_MEDIC_TEND_TO_DEAD", "Medic" },
+ ["musician"] = { "MaleScenario", "WORLD_HUMAN_MUSICIAN", "Musician" }, -- Ambient Music Doesn't Seem To Work For Female, Hence It's Male Only
+ ["notepad2"] = { "Scenario", "CODE_HUMAN_MEDIC_TIME_OF_DEATH", "Notepad 2" },
+ ["parkingmeter"] = { "Scenario", "PROP_HUMAN_PARKING_METER", "Parking Meter" },
+ ["party"] = { "Scenario", "WORLD_HUMAN_PARTYING", "Party" },
+ ["texting"] = { "Scenario", "WORLD_HUMAN_STAND_MOBILE", "Texting" },
+ ["prosthigh"] = { "Scenario", "WORLD_HUMAN_PROSTITUTE_HIGH_CLASS", "Prostitue High" },
+ ["prostlow"] = { "Scenario", "WORLD_HUMAN_PROSTITUTE_LOW_CLASS", "Prostitue Low" },
+ ["puddle"] = { "Scenario", "WORLD_HUMAN_BUM_WASH", "Puddle" },
+ ["record"] = { "Scenario", "WORLD_HUMAN_MOBILE_FILM_SHOCKING", "Record" },
+
+
+ -- Sitchair is a litte special, since you want the player to be seated correctly.
+ -- So we set it as "ScenarioObject" and do TaskStartScenarioAtPosition() instead of "AtPlace"
+
+ ["sitchair"] = { "ScenarioObject", "PROP_HUMAN_SEAT_CHAIR_MP_PLAYER", "Sit Chair" },
+ ["smoke"] = { "Scenario", "WORLD_HUMAN_SMOKING", "Smoke" },
+ ["smokeweed"] = { "MaleScenario", "WORLD_HUMAN_DRUG_DEALER", "Smoke Weed (Male)" }, -- Male
+ ["smokepot"] = { "Scenario", "WORLD_HUMAN_SMOKING_POT", "Smoke Weed (Female)" }, -- Female
+ ["statue"] = { "Scenario", "WORLD_HUMAN_HUMAN_STATUE", "Statue" },
+ ["sunbathe3"] = { "Scenario", "WORLD_HUMAN_SUNBATHE", "Sunbathe 3" },
+ ["sunbatheback"] = { "Scenario", "WORLD_HUMAN_SUNBATHE_BACK", "Sunbathe Back" },
+ ["weld"] = { "Scenario", "WORLD_HUMAN_WELDING", "Weld" },
+ ["windowshop"] = { "Scenario", "WORLD_HUMAN_WINDOW_SHOP_BROWSE", "Window Shop" },
+ ["yoga"] = { "Scenario", "WORLD_HUMAN_YOGA", "Yoga" },
+
+
+ -- CASINO DLC EMOTES (Requires gamebuild 2060 or higher)
+
+
+ ["karate"] = { "anim@mp_player_intcelebrationfemale@karate_chops", "karate_chops", "Karate" },
+ ["karate2"] = { "anim@mp_player_intcelebrationmale@karate_chops", "karate_chops", "Karate 2" },
+ ["cutthroat"] = { "anim@mp_player_intcelebrationmale@cut_throat", "cut_throat", "Cut Throat" },
+ ["cutthroat2"] = { "anim@mp_player_intcelebrationfemale@cut_throat", "cut_throat", "Cut Throat 2" },
+ ["mindblown"] = { "anim@mp_player_intcelebrationmale@mind_blown", "mind_blown", "Mind Blown", AnimationOptions = {
+ EmoteMoving = true,
+ EmoteDuration = 4000
+ }},
+ ["mindblown2"] = { "anim@mp_player_intcelebrationfemale@mind_blown", "mind_blown", "Mind Blown 2", AnimationOptions = {
+ EmoteMoving = true,
+ EmoteDuration = 4000
+ }},
+ ["boxing"] = { "anim@mp_player_intcelebrationmale@shadow_boxing", "shadow_boxing", "Boxing", AnimationOptions = {
+ EmoteMoving = true,
+ EmoteDuration = 4000
+ }},
+ ["boxing2"] = { "anim@mp_player_intcelebrationfemale@shadow_boxing", "shadow_boxing", "Boxing 2", AnimationOptions = {
+ EmoteMoving = true,
+ EmoteDuration = 4000
+ }},
+ ["stink"] = { "anim@mp_player_intcelebrationfemale@stinker", "stinker", "Stink", AnimationOptions = {
+ EmoteMoving = true,
+ EmoteLoop = true
+ }},
+ ["think4"] = { "anim@amb@casino@hangout@ped_male@stand@02b@idles", "idle_a", "Think 4", AnimationOptions = {
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["adjusttie"] = { "clothingtie", "try_tie_positive_a", "Adjust Tie", AnimationOptions = {
+ EmoteMoving = true,
+ EmoteDuration = 5000
+ }},
}
+
+--- EMOTES WITH 1 OR 2 PROPS ---
+
DP.PropEmotes = {
- ["umbrella"] = {"amb@world_human_drinking@coffee@male@base", "base", "Umbrella", AnimationOptions =
- {
- Prop = "p_amb_brolly_01",
- PropBone = 57005,
- PropPlacement = {0.15, 0.005, 0.0, 87.0, -20.0, 180.0},
- --
- EmoteLoop = true,
- EmoteMoving = true,
- }},
+ ["umbrella"] = { "amb@world_human_drinking@coffee@male@base", "base", "Umbrella", AnimationOptions = {
+ Prop = "p_amb_brolly_01",
+ PropBone = 57005,
+ PropPlacement = { 0.15, 0.005, 0.0, 87.0, -20.0, 180.0 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ['umbrella2'] = { 'rcmnigel1d', 'base_club_shoulder', 'Umbrella 2', AnimationOptions = {
+ Prop = 'p_amb_brolly_01',
+ PropBone = 28422,
+ PropPlacement = { 0.0700, 0.0100, 0.1100, 2.3402393, -150.9605721, 57.3374916 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
------------------------------------------------------------------------------------------------------
------- This is an example of an emote with 2 props, pretty simple! ----------------------------------
------------------------------------------------------------------------------------------------------
+ -----------------------------------------------------------------------------------------------------
+ ------ This is an example of an emote with 2 props, pretty simple! ----------------------------------
+ -----------------------------------------------------------------------------------------------------
- ["notepad"] = {"missheistdockssetup1clipboard@base", "base", "Notepad", AnimationOptions =
- {
- Prop = 'prop_notepad_01',
- PropBone = 18905,
- PropPlacement = {0.1, 0.02, 0.05, 10.0, 0.0, 0.0},
- SecondProp = 'prop_pencil_01',
- SecondPropBone = 58866,
- SecondPropPlacement = {0.11, -0.02, 0.001, -120.0, 0.0, 0.0},
- -- EmoteLoop is used for emotes that should loop, its as simple as that.
- -- Then EmoteMoving is used for emotes that should only play on the upperbody.
- -- The code then checks both values and sets the MovementType to the correct one
- EmoteLoop = true,
- EmoteMoving = true,
+ ["notepad"] = { "missheistdockssetup1clipboard@base", "base", "Notepad", AnimationOptions = {
+ Prop = 'prop_notepad_01',
+ PropBone = 18905,
+ PropPlacement = { 0.1, 0.02, 0.05, 10.0, 0.0, 0.0 },
+ SecondProp = 'prop_pencil_01',
+ SecondPropBone = 58866,
+ SecondPropPlacement = { 0.11, -0.02, 0.001, -120.0, 0.0, 0.0 },
+ -- EmoteLoop is used for emotes that should loop, its as simple as that.
+ -- Then EmoteMoving is used for emotes that should only play on the upperbody.
+ -- The code then checks both values and sets the MovementType to the correct one
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["box"] = { "anim@heists@box_carry@", "idle", "Box", AnimationOptions = {
+ Prop = "hei_prop_heist_box",
+ PropBone = 60309,
+ PropPlacement = { 0.025, 0.08, 0.255, -145.0, 290.0, 0.0 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["rose"] = { "anim@heists@humane_labs@finale@keycards", "ped_a_enter_loop", "Rose", AnimationOptions = {
+ Prop = "prop_single_rose",
+ PropBone = 18905,
+ PropPlacement = { 0.13, 0.15, 0.0, -100.0, 0.0, -20.0 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["smoke2"] = { "amb@world_human_aa_smoke@male@idle_a", "idle_c", "Smoke 2", AnimationOptions = {
+ Prop = 'prop_cs_ciggy_01',
+ PropBone = 28422,
+ PropPlacement = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["smoke3"] = { "amb@world_human_aa_smoke@male@idle_a", "idle_b", "Smoke 3", AnimationOptions = {
+ Prop = 'prop_cs_ciggy_01',
+ PropBone = 28422,
+ PropPlacement = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["smoke4"] = { "amb@world_human_smoking@female@idle_a", "idle_b", "Smoke 4", AnimationOptions = {
+ Prop = 'prop_cs_ciggy_01',
+ PropBone = 28422,
+ PropPlacement = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["bong"] = { "anim@safehouse@bong", "bong_stage3", "Bong", AnimationOptions = {
+ Prop = 'hei_heist_sh_bong_01',
+ PropBone = 18905,
+ PropPlacement = { 0.10, -0.25, 0.0, 95.0, 190.0, 180.0 },
+ }},
+ ["fishing1"] = { "amb@world_human_stand_fishing@idle_a", "idle_a", "Fishing 1", AnimationOptions = {
+ Prop = 'prop_fishing_rod_01',
+ PropBone = 60309,
+ PropPlacement = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 },
+ EmoteLoop = true,
+ EmoteMoving = false,
+ }},
+ ["fishing2"] = { "amb@world_human_stand_fishing@idle_a", "idle_b", "Fishing 2", AnimationOptions = {
+ Prop = 'prop_fishing_rod_01',
+ PropBone = 60309,
+ PropPlacement = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 },
+ EmoteLoop = true,
+ EmoteMoving = false,
+ }},
+ ["fishing3"] = { "amb@world_human_stand_fishing@idle_a", "idle_c", "Fishing 3", AnimationOptions = {
+ Prop = 'prop_fishing_rod_01',
+ PropBone = 60309,
+ PropPlacement = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 },
+ EmoteLoop = true,
+ EmoteMoving = false,
+ }},
+ ["suitcase"] = { "move_weapon@jerrycan@generic", "idle", "Suitcase", AnimationOptions = {
+ Prop = "prop_ld_suitcase_01",
+ PropBone = 57005,
+ PropPlacement = { 0.35, 0.0, 0.0, 0.0, 266.0, 90.0 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["suitcase2"] = { "move_weapon@jerrycan@generic", "idle", "Suitcase 2", AnimationOptions = {
+ Prop = "prop_security_case_01",
+ PropBone = 57005,
+ PropPlacement = { 0.13, 0.0, -0.01, 0.0, 280.0, 90.0 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["boombox"] = { "move_weapon@jerrycan@generic", "idle", "Boombox", AnimationOptions = {
+ Prop = "prop_boombox_01",
+ PropBone = 57005,
+ PropPlacement = { 0.27, 0.0, 0.0, 0.0, 263.0, 58.0 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["toolbox"] = { "move_weapon@jerrycan@generic", "idle", "Toolbox", AnimationOptions = {
+ Prop = "prop_tool_box_04",
+ PropBone = 28422,
+ PropPlacement = { 0.3960, 0.0410, -0.0030, -90.00, 0.0, 90.00 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["toolbox2"] = { "move_weapon@jerrycan@generic", "idle", "Toolbox 2", AnimationOptions = {
+ Prop = "imp_prop_tool_box_01a",
+ PropBone = 28422,
+ PropPlacement = { 0.3700, 0.0200, 0.0, 90.00, 0.0, -90.00 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["gbag"] = { "missfbi4prepp1", "_idle_garbage_man", "Garbage Bag", AnimationOptions = {
+ Prop = "prop_cs_street_binbag_01",
+ PropBone = 28422,
+ PropPlacement = { 0.0, 0.0400, -0.0200, 0.0, 0.0, 0.0 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["beerbox"] = { "move_weapon@jerrycan@generic", "idle", "Beer Box 1", AnimationOptions = {
+ Prop = "v_ret_ml_beerdus",
+ PropBone = 57005,
+ PropPlacement = { 0.22, 0.0, 0.0, 0.0, 266.0, 48.0 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["beerbox2"] = { "move_weapon@jerrycan@generic", "idle", "Beer Box 2", AnimationOptions = {
+ Prop = "v_ret_ml_beeram",
+ PropBone = 57005,
+ PropPlacement = { 0.22, 0.0, 0.0, 0.0, 266.0, 48.0 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["beerbox3"] = { "move_weapon@jerrycan@generic", "idle", "Beer Box 3", AnimationOptions = {
+ Prop = "v_ret_ml_beerpride",
+ PropBone = 57005,
+ PropPlacement = { 0.22, 0.0, 0.0, 0.0, 266.0, 48.0 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["beerbox4"] = { "move_weapon@jerrycan@generic", "idle", "Beer Box 4", AnimationOptions = {
+ Prop = "v_ret_ml_beerbar",
+ PropBone = 57005,
+ PropPlacement = { 0.22, 0.0, 0.0, 0.0, 266.0, 60.0 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["mugshot"] = { "mp_character_creation@customise@male_a", "loop", "Mugshot", AnimationOptions = {
+ Prop = 'prop_police_id_board',
+ PropBone = 58868,
+ PropPlacement = { 0.12, 0.24, 0.0, 5.0, 0.0, 70.0 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["coffee"] = { "amb@world_human_drinking@coffee@male@idle_a", "idle_c", "Coffee", AnimationOptions = {
+ Prop = 'p_amb_coffeecup_01',
+ PropBone = 28422,
+ PropPlacement = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["whiskey"] = { "amb@world_human_drinking@coffee@male@idle_a", "idle_c", "Whiskey", AnimationOptions = {
+ Prop = 'prop_drink_whisky',
+ PropBone = 28422,
+ PropPlacement = { 0.01, -0.01, -0.06, 0.0, 0.0, 0.0 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["whiskeyb"] = { "amb@world_human_drinking@beer@male@idle_a", "idle_a", "Whiskey Bottle", AnimationOptions = {
+ Prop = 'ba_prop_battle_whiskey_bottle_2_s',
+ PropBone = 28422,
+ PropPlacement = { 0.0, 0.0, 0.05, 0.0, 0.0, 0.0 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["beer"] = { "amb@world_human_drinking@beer@male@idle_a", "idle_c", "Beer", AnimationOptions = {
+ Prop = 'prop_amb_beer_bottle',
+ PropBone = 28422,
+ PropPlacement = { 0.0, 0.0, 0.06, 0.0, 15.0, 0.0 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["whiskeyb2"] = { "amb@world_human_drinking@beer@male@idle_a", "idle_a", "Whiskey Bottle 2", AnimationOptions = {
+ Prop = 'ba_prop_battle_whiskey_bottle_2_s',
+ PropBone = 28422,
+ PropPlacement = { 0.0, 0.0, 0.05, 0.0, 0.0, 0.0 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["beer2"] = { "amb@world_human_drinking@beer@male@idle_a", "idle_c", "Beer 2", AnimationOptions = {
+ Prop = 'prop_amb_beer_bottle',
+ PropBone = 28422,
+ PropPlacement = { 0.0, 0.0, 0.06, 0.0, 15.0, 0.0 },
+ EmoteLoop = true,
+ EmoteMoving = false,
+ }},
+ ["whiskeyb3"] = { "amb@world_human_drinking@beer@male@idle_a", "idle_a", "Whiskey Bottle 3", AnimationOptions = {
+ Prop = 'ba_prop_battle_whiskey_bottle_2_s',
+ PropBone = 28422,
+ PropPlacement = { 0.0, 0.0, 0.05, 0.0, 0.0, 0.0 },
+ EmoteLoop = true,
+ EmoteMoving = false,
+ }},
+ ["beerf"] = { "amb@world_human_drinking@beer@female@idle_a", "idle_a", "Beer Female", AnimationOptions = {
+ Prop = 'prop_amb_beer_bottle',
+ PropBone = 28422,
+ PropPlacement = { 0.0, -0.0, 0.05, 15.0, 15.0, 0.0 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["wine2"] = { "amb@world_human_drinking@beer@female@idle_a", "idle_e", "Wine 2 - Bottle", AnimationOptions = {
+ Prop = 'prop_wine_rose',
+ PropBone = 28422,
+ PropPlacement = { -0.0, 0.04, -0.19, 10.0, 0.0, 0.0 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ --- PropPlacement = {-0.0, 0.03, -0.20, 5.0, 0.0, 0.0},
+ --- F&B L&R U&D R.F&B
+ }},
+ ["beerf3"] = { "amb@world_human_drinking@beer@female@idle_a", "idle_a", "Beer Female 3", AnimationOptions = {
+ Prop = 'prop_amb_beer_bottle',
+ PropBone = 28422,
+ PropPlacement = { 0.0, -0.0, 0.05, 15.0, 15.0, 0.0 },
+ EmoteLoop = true,
+ EmoteMoving = false,
+ }},
+ ["wine3"] = { "amb@world_human_drinking@beer@female@idle_a", "idle_e", "Wine 3 - Bottle", AnimationOptions = {
+ Prop = 'prop_wine_rose',
+ PropBone = 28422,
+ PropPlacement = { -0.0, 0.04, -0.19, 10.0, 0.0, 0.0 },
+ EmoteLoop = true,
+ EmoteMoving = false,
+ --- PropPlacement = {-0.0, 0.03, -0.20, 5.0, 0.0, 0.0},
+ --- F&B L&R U&D R.F&B
+ }},
+ ["cup"] = { "amb@world_human_drinking@coffee@male@idle_a", "idle_c", "Cup", AnimationOptions = {
+ Prop = 'prop_plastic_cup_02',
+ PropBone = 28422,
+ PropPlacement = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["donut"] = { "mp_player_inteat@burger", "mp_player_int_eat_burger", "Donut", AnimationOptions = {
+ Prop = 'prop_amb_donut',
+ PropBone = 18905,
+ PropPlacement = { 0.13, 0.05, 0.02, -50.0, 16.0, 60.0 },
+ EmoteMoving = true,
+ }},
+ ["burger"] = { "mp_player_inteat@burger", "mp_player_int_eat_burger", "Burger", AnimationOptions = {
+ Prop = 'prop_cs_burger_01',
+ PropBone = 18905,
+ PropPlacement = { 0.13, 0.05, 0.02, -50.0, 16.0, 60.0 },
+ EmoteMoving = true,
+ }},
+ ["sandwich"] = { "mp_player_inteat@burger", "mp_player_int_eat_burger", "Sandwich", AnimationOptions = {
+ Prop = 'prop_sandwich_01',
+ PropBone = 18905,
+ PropPlacement = { 0.13, 0.05, 0.02, -50.0, 16.0, 60.0 },
+ EmoteMoving = true,
+ }},
+ ["soda"] = { "amb@world_human_drinking@coffee@male@idle_a", "idle_c", "Soda", AnimationOptions = {
+ Prop = 'prop_ecola_can',
+ PropBone = 28422,
+ PropPlacement = { 0.0, 0.0, 0.0, 0.0, 0.0, 130.0 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["water"] = { "amb@world_human_drinking@coffee@male@idle_a", "idle_c", "Water", AnimationOptions = {
+ Prop = 'ba_prop_club_water_bottle',
+ PropBone = 28422,
+ PropPlacement = { 0.0, 0.0, -0.090, 0.0, 0.0, 130.0 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["egobar"] = { "mp_player_inteat@burger", "mp_player_int_eat_burger", "Ego Bar", AnimationOptions = {
+ Prop = 'prop_choc_ego',
+ PropBone = 60309,
+ PropPlacement = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 },
+ EmoteMoving = true,
+ }},
+ ["candy"] = { "mp_player_inteat@pnq", "loop", "Candy", AnimationOptions = {
+ Prop = 'prop_candy_pqs',
+ PropBone = 60309,
+ PropPlacement = { -0.0300, 0.0180, 0.0, 180.0, 180.0, -88.099 },
+ EmoteMoving = true,
+ }},
+ ["wine"] = { "anim@heists@humane_labs@finale@keycards", "ped_a_enter_loop", "Wine", AnimationOptions = {
+ Prop = 'prop_drink_redwine',
+ PropBone = 18905,
+ PropPlacement = { 0.10, -0.03, 0.03, -100.0, 0.0, -10.0 },
+ EmoteMoving = true,
+ EmoteLoop = true
+ }},
+ ["flute"] = { "anim@heists@humane_labs@finale@keycards", "ped_a_enter_loop", "Flute", AnimationOptions = {
+ Prop = 'prop_champ_flute',
+ PropBone = 18905,
+ PropPlacement = { 0.10, -0.03, 0.03, -100.0, 0.0, -10.0 },
+ EmoteMoving = true,
+ EmoteLoop = true
+ }},
+ ["champagne"] = { "anim@heists@humane_labs@finale@keycards", "ped_a_enter_loop", "Champagne", AnimationOptions = {
+ Prop = 'prop_drink_champ',
+ PropBone = 18905,
+ PropPlacement = { 0.10, -0.03, 0.03, -100.0, 0.0, -10.0 },
+ EmoteMoving = true,
+ EmoteLoop = true
+ }},
+ ["cigar"] = { "amb@world_human_smoking@male@male_a@enter", "enter", "Cigar", AnimationOptions = {
+ Prop = 'prop_cigar_02',
+ PropBone = 47419,
+ PropPlacement = { 0.010, 0.0, 0.0, 50.0, 0.0, -80.0 },
+ EmoteMoving = true,
+ EmoteDuration = 2600
+ }},
+ ["cigar2"] = { "amb@world_human_smoking@male@male_a@enter", "enter", "Cigar 2", AnimationOptions = {
+ Prop = 'prop_cigar_01',
+ PropBone = 47419,
+ PropPlacement = { 0.010, 0.0, 0.0, 50.0, 0.0, -80.0 },
+ EmoteMoving = true,
+ EmoteDuration = 2600
+ }},
+ ["guitar"] = { "amb@world_human_musician@guitar@male@idle_a", "idle_b", "Guitar", AnimationOptions = {
+ Prop = 'prop_acc_guitar_01',
+ PropBone = 24818,
+ PropPlacement = { -0.1, 0.31, 0.1, 0.0, 20.0, 150.0 },
+ EmoteMoving = true,
+ EmoteLoop = true
+ }},
+ ["guitar2"] = { "switch@trevor@guitar_beatdown", "001370_02_trvs_8_guitar_beatdown_idle_busker", "Guitar 2", AnimationOptions = {
+ Prop = 'prop_acc_guitar_01',
+ PropBone = 24818,
+ PropPlacement = { -0.05, 0.31, 0.1, 0.0, 20.0, 150.0 },
+ EmoteMoving = true,
+ EmoteLoop = true
+ }},
+ ["guitarelectric"] = { "amb@world_human_musician@guitar@male@idle_a", "idle_b", "Guitar Electric", AnimationOptions = {
+ Prop = 'prop_el_guitar_01',
+ PropBone = 24818,
+ PropPlacement = { -0.1, 0.31, 0.1, 0.0, 20.0, 150.0 },
+ EmoteMoving = true,
+ EmoteLoop = true
+ }},
+ ["guitarelectric2"] = { "amb@world_human_musician@guitar@male@idle_a", "idle_b", "Guitar Electric 2", AnimationOptions = {
+ Prop = 'prop_el_guitar_03',
+ PropBone = 24818,
+ PropPlacement = { -0.1, 0.31, 0.1, 0.0, 20.0, 150.0 },
+ EmoteMoving = true,
+ EmoteLoop = true
+ }},
+ ["book"] = { "cellphone@", "cellphone_text_read_base", "Book", AnimationOptions = {
+ Prop = 'prop_novel_01',
+ PropBone = 6286,
+ PropPlacement = { 0.15, 0.03, -0.065, 0.0, 180.0, 90.0 }, -- This positioning isnt too great, was to much of a hassle
+ EmoteMoving = true,
+ EmoteLoop = true
+ }},
+ ["bouquet"] = { "impexp_int-0", "mp_m_waremech_01_dual-0", "Bouquet", AnimationOptions = {
+ Prop = 'prop_snow_flower_02',
+ PropBone = 24817,
+ PropPlacement = { -0.29, 0.40, -0.02, -90.0, -90.0, 0.0 },
+ EmoteMoving = true,
+ EmoteLoop = true
+ }},
+ ["teddy"] = { "impexp_int-0", "mp_m_waremech_01_dual-0", "Teddy", AnimationOptions = {
+ Prop = 'v_ilev_mr_rasberryclean',
+ PropBone = 24817,
+ PropPlacement = { -0.20, 0.46, -0.016, -180.0, -90.0, 0.0 },
+ EmoteMoving = true,
+ EmoteLoop = true
+ }},
+ ["backpack"] = { "move_p_m_zero_rucksack", "nill", "Backpack", AnimationOptions = {
+ Prop = 'p_michael_backpack_s',
+ PropBone = 24818,
+ PropPlacement = { 0.07, -0.11, -0.05, 0.0, 90.0, 175.0 },
+ EmoteMoving = true,
+ EmoteLoop = true
+ }},
+ ["clipboard"] = { "missfam4", "base", "Clipboard", AnimationOptions = {
+ Prop = 'p_amb_clipboard_01',
+ PropBone = 36029,
+ PropPlacement = { 0.16, 0.08, 0.1, -130.0, -50.0, 0.0 },
+ EmoteMoving = true,
+ EmoteLoop = true
+ }},
+ ["map"] = { "amb@world_human_tourist_map@male@base", "base", "Map", AnimationOptions = {
+ Prop = 'prop_tourist_map_01',
+ PropBone = 28422,
+ PropPlacement = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 },
+ EmoteMoving = true,
+ EmoteLoop = true
+ }},
+ ["map2"] = { "amb@code_human_in_bus_passenger_idles@female@tablet@idle_a", "idle_a", "Map 2", AnimationOptions = {
+ Prop = "prop_tourist_map_01",
+ PropBone = 28422,
+ PropPlacement = { -0.05, 0.0, 0.0, 0.0, 0.0, 0.0 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["beg"] = { "amb@world_human_bum_freeway@male@base", "base", "Beg", AnimationOptions = {
+ Prop = 'prop_beggers_sign_03',
+ PropBone = 58868,
+ PropPlacement = { 0.19, 0.18, 0.0, 5.0, 0.0, 40.0 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["makeitrain"] = { "anim@mp_player_intupperraining_cash", "idle_a", "Make It Rain", AnimationOptions = {
+ Prop = 'prop_anim_cash_pile_01',
+ PropBone = 60309,
+ PropPlacement = { 0.0, 0.0, 0.0, 180.0, 0.0, 70.0 },
+ EmoteMoving = true,
+ EmoteLoop = true,
+ PtfxAsset = "scr_xs_celebration",
+ PtfxName = "scr_xs_money_rain",
+ PtfxPlacement = { 0.0, 0.0, -0.09, -80.0, 0.0, 0.0, 1.0 },
+ PtfxInfo = Config.Languages[Config.MenuLanguage]['makeitrain'],
+ PtfxWait = 500,
+ }},
+ ["camera"] = { "amb@world_human_paparazzi@male@base", "base", "Camera", AnimationOptions = {
+ Prop = 'prop_pap_camera_01',
+ PropBone = 28422,
+ PropPlacement = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ PtfxAsset = "scr_bike_business",
+ PtfxName = "scr_bike_cfid_camera_flash",
+ PtfxPlacement = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1.0 },
+ PtfxInfo = Config.Languages[Config.MenuLanguage]['camera'],
+ PtfxWait = 200,
+ }},
+ ["champagnespray"] = { "anim@mp_player_intupperspray_champagne", "idle_a", "Champagne Spray", AnimationOptions = {
+ Prop = 'ba_prop_battle_champ_open',
+ PropBone = 28422,
+ PropPlacement = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 },
+ EmoteMoving = true,
+ EmoteLoop = true,
+ PtfxAsset = "scr_ba_club",
+ PtfxName = "scr_ba_club_champagne_spray",
+ PtfxPlacement = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 },
+ PtfxInfo = Config.Languages[Config.MenuLanguage]['spraychamp'],
+ PtfxWait = 500,
+ }},
+ ["joint"] = { "amb@world_human_smoking@male@male_a@enter", "enter", "Joint", AnimationOptions = {
+ Prop = 'p_cs_joint_02',
+ PropBone = 47419,
+ PropPlacement = { 0.015, -0.009, 0.003, 55.0, 0.0, 110.0 },
+ EmoteMoving = true,
+ EmoteDuration = 2600
+ }},
+ ["cig"] = { "amb@world_human_smoking@male@male_a@enter", "enter", "Cig", AnimationOptions = {
+ Prop = 'prop_amb_ciggy_01',
+ PropBone = 47419,
+ PropPlacement = { 0.015, -0.009, 0.003, 55.0, 0.0, 110.0 },
+ EmoteMoving = true,
+ EmoteDuration = 2600
+ }},
+ ["brief"] = { "move_weapon@jerrycan@generic", "idle", "Briefcase", AnimationOptions = {
+ Prop = "prop_ld_case_01",
+ PropBone = 57005,
+ PropPlacement = { 0.12, 0.0, 0.0, 0.0, 255.0, 80.0 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["tablet"] = { "amb@world_human_tourist_map@male@base", "base", "Tablet", AnimationOptions = {
+ Prop = "prop_cs_tablet",
+ PropBone = 28422,
+ PropPlacement = { 0.0, -0.03, 0.0, 20.0, -90.0, 0.0 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["tablet2"] = { "amb@code_human_in_bus_passenger_idles@female@tablet@idle_a", "idle_a", "Tablet 2", AnimationOptions = {
+ Prop = "prop_cs_tablet",
+ PropBone = 28422,
+ PropPlacement = { -0.05, 0.0, 0.0, 0.0, 0.0, 0.0 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["phonecall"] = { "cellphone@", "cellphone_call_listen_base", "Phone Call", AnimationOptions = {
+ Prop = "prop_phone_ing",
+ PropBone = 28422,
+ PropPlacement = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["phonecall2"] = { "random@kidnap_girl", "ig_1_girl_on_phone_loop", "Phone Call 2", AnimationOptions = {
+ Prop = "prop_phone_ing",
+ PropBone = 28422,
+ PropPlacement = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["wt"] = { "cellphone@", "cellphone_text_read_base", "Walkie Talkie", AnimationOptions = {
+ Prop = "prop_cs_hand_radio",
+ PropBone = 28422,
+ PropPlacement = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["clean"] = { "timetable@floyd@clean_kitchen@base", "base", "Clean", AnimationOptions = {
+ Prop = "prop_sponge_01",
+ PropBone = 28422,
+ PropPlacement = { 0.0, 0.0, -0.01, 90.0, 0.0, 0.0 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["clean2"] = { "amb@world_human_maid_clean@", "base", "Clean 2", AnimationOptions = {
+ Prop = "prop_sponge_01",
+ PropBone = 28422,
+ PropPlacement = { 0.0, 0.0, -0.01, 90.0, 0.0, 0.0 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["protest"] = { "rcmnigel1d", "base_club_shoulder", "Protest", AnimationOptions = {
+ Prop = "prop_cs_protest_sign_01",
+ PropBone = 57005,
+ PropPlacement = { 0.1820, 0.2400, 0.0600, -69.3774235, 5.9142048, -13.9572354 },
+ --
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["protest2"] = { "rcmnigel1d", "base_club_shoulder", "Protest 2 - Pride ", AnimationOptions = {
+ Prop = "pride_sign_01",
+ PropBone = 57005,
+ PropPlacement = { 0.1820, 0.2400, 0.0600, -69.3774235, 5.9142048, -13.9572354 },
+ --
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["binoculars"] = { "amb@world_human_binoculars@male@idle_b", "idle_f", "Binoculars", AnimationOptions = {
+ Prop = "prop_binoc_01",
+ PropBone = 28422,
+ PropPlacement = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 },
+ --
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["binoculars2"] = { "amb@world_human_binoculars@male@idle_a", "idle_c", "Binoculars 2", AnimationOptions = {
+ Prop = "prop_binoc_01",
+ PropBone = 28422,
+ PropPlacement = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["tennisplay"] = { "move_weapon@jerrycan@generic", "idle", "Tennis Play", AnimationOptions = {
+ Prop = "prop_tennis_bag_01",
+ PropBone = 57005,
+ PropPlacement = { 0.27, 0.0, 0.0, 91.0, 0.0, -82.9999951 },
+ SecondProp = 'prop_tennis_rack_01',
+ SecondPropBone = 60309,
+ SecondPropPlacement = { 0.0800, 0.0300, 0.0, -130.2907295, 3.8782324, 6.588224 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["weights"] = { "amb@world_human_muscle_free_weights@male@barbell@base", "base", "Weights", AnimationOptions = {
+ Prop = "prop_curl_bar_01",
+ PropBone = 28422,
+ PropPlacement = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["weights2"] = { "amb@world_human_muscle_free_weights@male@barbell@idle_a", "idle_d", "Weights 2", AnimationOptions = {
+ Prop = "prop_curl_bar_01",
+ PropBone = 28422,
+ PropPlacement = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["fuel"] = { "weapons@misc@jerrycan@", "fire", "Fuel", AnimationOptions = {
+ Prop = "w_am_jerrycan",
+ PropBone = 57005,
+ PropPlacement = { 0.1800, 0.1300, -0.2400, -165.8693883, -11.2122753, -32.9453021 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["fuel2"] = { "weapons@misc@jerrycan@franklin", "idle", "Fuel 2 (Carry)", AnimationOptions = {
+ Prop = "w_am_jerrycan",
+ PropBone = 28422,
+ PropPlacement = { 0.26, 0.050, 0.0300, 80.00, 180.000, 79.99 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["hitchhike"] = { "random@hitch_lift", "idle_f", "Hitchhike", AnimationOptions = {
+ Prop = "w_am_jerrycan",
+ PropBone = 18905,
+ PropPlacement = { 0.32, -0.0100, 0.0, -162.423, 74.83, 58.79 },
+ SecondProp = 'prop_michael_backpack',
+ SecondPropBone = 40269,
+ SecondPropPlacement = { -0.07, -0.21, -0.11, -144.93, 117.358, -6.16 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["ssign"] = { "rcmnigel1d", "base_club_shoulder", "Steal Stop Sign ", AnimationOptions = {
+ Prop = "prop_sign_road_01a",
+ PropBone = 60309,
+ PropPlacement = { -0.1390, -0.9870, 0.4300, -67.3315314, 145.0627869, -4.4318885 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["ssign2"] = { "rcmnigel1d", "base_club_shoulder", "Steal Yield Sign ", AnimationOptions = {
+ Prop = "prop_sign_road_02a",
+ PropBone = 60309,
+ PropPlacement = { -0.1390, -0.9870, 0.4300, -67.3315314, 145.0627869, -4.4318885 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["ssign3"] = { "rcmnigel1d", "base_club_shoulder", "Steal Hospital Sign ", AnimationOptions = {
+ Prop = "prop_sign_road_03d",
+ PropBone = 60309,
+ PropPlacement = { -0.1390, -0.9870, 0.4300, -67.3315314, 145.0627869, -4.4318885 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["ssign4"] = { "rcmnigel1d", "base_club_shoulder", "Steal Parking Sign ", AnimationOptions = {
+ Prop = "prop_sign_road_04a",
+ PropBone = 60309,
+ PropPlacement = { -0.1390, -0.9870, 0.4300, -67.3315314, 145.0627869, -4.4318885 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["ssign5"] = { "rcmnigel1d", "base_club_shoulder", "Steal Parking Sign 2 ", AnimationOptions = {
+ Prop = "prop_sign_road_04w",
+ PropBone = 60309,
+ PropPlacement = { -0.1390, -0.9870, 0.4300, -67.3315314, 145.0627869, -4.4318885 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["ssign6"] = { "rcmnigel1d", "base_club_shoulder", "Steal Pedestrian Sign ", AnimationOptions = {
+ Prop = "prop_sign_road_05a",
+ PropBone = 60309,
+ PropPlacement = { -0.1390, -0.9870, 0.4300, -67.3315314, 145.0627869, -4.4318885 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["ssign7"] = { "rcmnigel1d", "base_club_shoulder", "Steal Street Sign ", AnimationOptions = {
+ Prop = "prop_sign_road_05t",
+ PropBone = 60309,
+ PropPlacement = { -0.1390, -0.9870, 0.4300, -67.3315314, 145.0627869, -4.4318885 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["ssign8"] = { "rcmnigel1d", "base_club_shoulder", "Steal Freeway Sign ", AnimationOptions = {
+ Prop = "prop_sign_freewayentrance",
+ PropBone = 60309,
+ PropPlacement = { -0.1390, -0.9870, 0.4300, -67.3315314, 145.0627869, -4.4318885 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["ssign9"] = { "rcmnigel1d", "base_club_shoulder", "Steal Stop Sign Snow ", AnimationOptions = {
+ Prop = "prop_snow_sign_road_01a",
+ PropBone = 60309,
+ PropPlacement = { -0.1390, -0.9870, 0.4300, -67.3315314, 145.0627869, -4.4318885 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["conehead"] = { "move_m@drunk@verydrunk_idles@", "fidget_07", "Cone Head ", AnimationOptions = {
+ Prop = "prop_roadcone02b",
+ PropBone = 31086,
+ PropPlacement = { 0.0500, 0.0200, -0.000, 30.0000004, 90.0, 0.0 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["foodtraya"] = { "anim@heists@box_carry@", "idle", "Food Tray", AnimationOptions = {
+ Prop = "prop_food_bs_tray_03",
+ PropBone = 28422,
+ PropPlacement = { 0.0100, -0.0400, -0.1390, 20.0000007, 0.0, 0.0 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["foodtrayb"] = { "anim@heists@box_carry@", "idle", "Food Tray B", AnimationOptions = {
+ Prop = "prop_food_bs_tray_02",
+ PropBone = 28422,
+ PropPlacement = { 0.0100, -0.0400, -0.1390, 20.0000007, 0.0, 0.0 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["foodtrayc"] = { "anim@heists@box_carry@", "idle", "Food Tray C", AnimationOptions = {
+ Prop = "prop_food_cb_tray_02",
+ PropBone = 28422,
+ PropPlacement = { 0.0100, -0.0400, -0.1390, 20.0000007, 0.0, 0.0 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["foodtrayd"] = { "anim@heists@box_carry@", "idle", "Food Tray D", AnimationOptions = {
+ Prop = "prop_food_tray_02",
+ PropBone = 28422,
+ PropPlacement = { 0.0100, -0.0400, -0.1390, 20.0000007, 0.0, 0.0 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["foodtraye"] = { "anim@heists@box_carry@", "idle", "Food Tray E", AnimationOptions = {
+ Prop = "prop_food_tray_03",
+ PropBone = 28422,
+ PropPlacement = { 0.0100, -0.0400, -0.1390, 20.0000007, 0.0, 0.0 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["foodtrayf"] = { "anim@heists@box_carry@", "idle", "Food Tray F", AnimationOptions = {
+ Prop = "prop_food_bs_tray_02",
+ PropBone = 57005,
+ PropPlacement = { 0.2500, 0.1000, 0.0700, -110.5483936, 73.3529273, -16.338362 },
+ SecondProp = 'prop_food_bs_tray_03',
+ SecondPropBone = 18905,
+ SecondPropPlacement = { 0.2200, 0.1300, -0.1000, -127.7725487, 110.2074758, -3.5886263 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["foodtrayg"] = { "anim@heists@box_carry@", "idle", "Food Tray G", AnimationOptions = {
+ Prop = "prop_food_cb_tray_02",
+ PropBone = 57005,
+ PropPlacement = { 0.2500, 0.1000, 0.0700, -110.5483936, 73.3529273, -16.338362 },
+ SecondProp = 'prop_food_cb_tray_02',
+ SecondPropBone = 18905,
+ SecondPropPlacement = { 0.2200, 0.1300, -0.1000, -127.7725487, 110.2074758, -3.5886263 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["foodtrayh"] = { "anim@heists@box_carry@", "idle", "Food Tray H", AnimationOptions = {
+ Prop = "prop_food_tray_02",
+ PropBone = 57005,
+ PropPlacement = { 0.2500, 0.1000, 0.0700, -110.5483936, 73.3529273, -16.338362 },
+ SecondProp = 'prop_food_tray_03',
+ SecondPropBone = 18905,
+ SecondPropPlacement = { 0.2200, 0.1300, -0.1000, -127.7725487, 110.2074758, -3.5886263 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["foodtrayi"] = { "anim@heists@box_carry@", "idle", "Food Tray I", AnimationOptions = {
+ Prop = "prop_food_tray_02",
+ PropBone = 57005,
+ PropPlacement = { 0.2500, 0.1000, 0.0700, -110.5483936, 73.3529273, -16.338362 },
+ SecondProp = 'prop_food_tray_02',
+ SecondPropBone = 18905,
+ SecondPropPlacement = { 0.2200, 0.1300, -0.1000, -127.7725487, 110.2074758, -3.5886263 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["foodtrayj"] = { "anim@move_f@waitress", "idle", "Food Tray J", AnimationOptions = {
+ Prop = "prop_food_bs_tray_02",
+ PropBone = 28422,
+ PropPlacement = { 0.0, 0.0, 0.0200, 0.0, 0.0, 0.0 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["foodtrayk"] = { "anim@move_f@waitress", "idle", "Food Tray K", AnimationOptions = {
+ Prop = "prop_food_bs_tray_02",
+ PropBone = 28422,
+ PropPlacement = { 0.0, 0.0, 0.0200, 0.0, 0.0, 0.0 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["foodtrayl"] = { "anim@move_f@waitress", "idle", "Food Tray L", AnimationOptions = {
+ Prop = "prop_food_bs_tray_03",
+ PropBone = 28422,
+ PropPlacement = { 0.0, 0.0, 0.0200, 0.0, 0.0, 0.0 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["foodtraym"] = { "anim@move_f@waitress", "idle", "Food Tray M", AnimationOptions = {
+ Prop = "prop_food_cb_tray_02",
+ PropBone = 28422,
+ PropPlacement = { 0.0, 0.0, 0.0200, 0.0, 0.0, 0.0 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["foodtrayn"] = { "anim@move_f@waitress", "idle", "Food Tray N", AnimationOptions = {
+ Prop = "prop_food_tray_02",
+ PropBone = 28422,
+ PropPlacement = { 0.0, 0.0, 0.0200, 0.0, 0.0, 0.0 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["foodtrayo"] = { "anim@move_f@waitress", "idle", "Food Tray O", AnimationOptions = {
+ Prop = "prop_food_tray_02",
+ PropBone = 28422,
+ PropPlacement = { 0.0, 0.0, 0.0200, 0.0, 0.0, 0.0 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["carrypizza"] = { "anim@heists@box_carry@", "idle", "Carry Pizza Box", AnimationOptions = {
+ Prop = "prop_pizza_box_02",
+ PropBone = 28422,
+ PropPlacement = { 0.0100, -0.1000, -0.1590, 20.0000007, 0.0, 0.0 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["carryfoodbag"] = { "move_weapon@jerrycan@generic", "idle", "Carry Food Bag", AnimationOptions = {
+ Prop = "prop_food_bs_bag_01",
+ PropBone = 57005,
+ PropPlacement = { 0.3300, 0.0, -0.0300, 0.0017365, -79.9999997, 110.0651988 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["carryfoodbag2"] = { "move_weapon@jerrycan@generic", "idle", "Carry Food Bag 2", AnimationOptions = {
+ Prop = "prop_food_cb_bag_01",
+ PropBone = 57005,
+ PropPlacement = { 0.3800, 0.0, -0.0300, 0.0017365, -79.9999997, 110.0651988 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["carryfoodbag3"] = { "move_weapon@jerrycan@generic", "idle", "Carry Food Bag 3", AnimationOptions = {
+ Prop = "prop_food_bag1",
+ PropBone = 57005,
+ PropPlacement = { 0.3800, 0.0, -0.0300, 0.0017365, -79.9999997, 110.0651988 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["tag"] = { "anim@scripted@freemode@postertag@graffiti_spray@male@", "shake_can_male", "Tagging Shake Can Male", AnimationOptions = {
+ Prop = "prop_cs_spray_can",
+ PropBone = 28422,
+ PropPlacement = { 0.0, 0.0, 0.0700, 0.0017365, 0.0, 0.0 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["tag2"] = { "anim@scripted@freemode@postertag@graffiti_spray@heeled@", "shake_can_female", "Tagging Shake Can Female", AnimationOptions = {
+ Prop = "prop_cs_spray_can",
+ PropBone = 28422,
+ PropPlacement = { 0.0, 0.0, 0.0700, 0.0017365, 0.0, 0.0 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["tag3"] = { "anim@scripted@freemode@postertag@graffiti_spray@male@", "spray_can_var_01_male", "Tagging Male 1", AnimationOptions = {
+ Prop = "prop_cs_spray_can",
+ PropBone = 28422,
+ PropPlacement = { 0.0, 0.0, 0.0700, 0.0017365, 0.0, 0.0 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["tag4"] = { "anim@scripted@freemode@postertag@graffiti_spray@male@", "spray_can_var_02_male", "Tagging Male 2", AnimationOptions = {
+ Prop = "prop_cs_spray_can",
+ PropBone = 28422,
+ PropPlacement = { 0.0, 0.0, 0.0700, 0.0017365, 0.0, 0.0 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["tag5"] = { "anim@scripted@freemode@postertag@graffiti_spray@heeled@", "spray_can_var_01_female", "Tagging Female 1", AnimationOptions = {
+ Prop = "prop_cs_spray_can",
+ PropBone = 28422,
+ PropPlacement = { 0.0, 0.0, 0.0700, 0.0017365, 0.0, 0.0 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["tag6"] = { "anim@scripted@freemode@postertag@graffiti_spray@heeled@", "spray_can_var_02_female", "Tagging Female 2", AnimationOptions = {
+ Prop = "prop_cs_spray_can",
+ PropBone = 28422,
+ PropPlacement = { 0.0, 0.0, 0.0700, 0.0017365, 0.0, 0.0 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["beans"] = { "anim@scripted@island@special_peds@pavel@hs4_pavel_ig5_caviar_p1", "base_idle", "Beans", AnimationOptions = {
+ Prop = "h4_prop_h4_caviar_tin_01a",
+ PropBone = 60309,
+ PropPlacement = { 0.0, 0.0300, 0.0100, 0.0, 0.0, 0.0 },
+ SecondProp = 'h4_prop_h4_caviar_spoon_01a',
+ SecondPropBone = 28422,
+ SecondPropPlacement = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["newscam"] = { "missfinale_c2mcs_1", "fin_c2_mcs_1_camman", "News Camera", AnimationOptions = {
+ Prop = "prop_v_cam_01",
+ PropBone = 28422,
+ PropPlacement = { 0.0, 0.0300, 0.0100, 0.0, 0.0, 0.0 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["newsmic"] = { "anim@heists@humane_labs@finale@keycards", "ped_a_enter_loop", "News Microphone", AnimationOptions = {
+ Prop = "p_ing_microphonel_01",
+ PropBone = 4154,
+ PropPlacement = { -0.00, -0.0200, 0.1100, 0.00, 0.0, 60.0 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["newsbmic"] = { "missfra1", "mcs2_crew_idle_m_boom", "News Boom Microphone", AnimationOptions = {
+ Prop = "prop_v_bmike_01",
+ PropBone = 28422,
+ PropPlacement = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["leafblower"] = { "amb@world_human_gardener_leaf_blower@base", "base", "Leaf Blower", AnimationOptions = {
+ Prop = "prop_leaf_blower_01",
+ PropBone = 28422,
+ PropPlacement = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["bbqf"] = { "amb@prop_human_bbq@male@idle_a", "idle_b", "BBQ (Female)", AnimationOptions = {
+ Prop = "prop_fish_slice_01",
+ PropBone = 28422,
+ PropPlacement = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["pump"] = { "missfbi4prepp1", "idle", "Pumpkin", AnimationOptions = {
+ Prop = "prop_veg_crop_03_pump",
+ PropBone = 28422,
+ PropPlacement = { 0.0200, 0.0600, -0.1200, 0.0, 0.0, 0.0 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["pump2"] = { "anim@heists@box_carry@", "idle", "Pumpkin 2", AnimationOptions = {
+ Prop = "prop_veg_crop_03_pump",
+ PropBone = 28422,
+ PropPlacement = { 0.0100, -0.16000, -0.2100, 0.0, 0.0, 0.0 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["mop"] = { "missfbi4prepp1", "idle", "Mop", AnimationOptions = {
+ Prop = "prop_cs_mop_s",
+ PropBone = 28422,
+ PropPlacement = { -0.0200, -0.0600, -0.2000, -13.377, 10.3568, 17.9681 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["mop2"] = { "move_mop", "idle_scrub_small_player", "Mop 2", AnimationOptions = {
+ Prop = "prop_cs_mop_s",
+ PropBone = 28422,
+ PropPlacement = { 0.0, 0.0, 0.1200, 0.0, 0.0, 0.0 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["jerkf"] = { "switch@trevor@jerking_off", "trev_jerking_off_loop", "JerkOff! Female", AnimationOptions = {
+ Prop = 'prop_cs_dildo_01',
+ PropBone = 28422,
+ PropPlacement = { 0.09, 0.05, -0.03, 90.0, 80.0, 30.0 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["rake"] = { "anim@amb@drug_field_workers@rake@male_a@base", "base", "Rake", AnimationOptions = {
+ Prop = "prop_tool_rake",
+ PropBone = 28422,
+ PropPlacement = { 0.0, 0.0, -0.0300, 0.0, 0.0, 0.0 },
+ EmoteLoop = true,
+ }},
+ ["rake2"] = { "anim@amb@drug_field_workers@rake@male_a@idles", "idle_b", "Rake 2", AnimationOptions = {
+ Prop = "prop_tool_rake",
+ PropBone = 28422,
+ PropPlacement = { 0.0, 0.0, -0.0300, 0.0, 0.0, 0.0 },
+ EmoteLoop = true,
+ }},
+ ["rake3"] = { "anim@amb@drug_field_workers@rake@male_b@base", "base", "Rake 3", AnimationOptions = {
+ Prop = "prop_tool_rake",
+ PropBone = 28422,
+ PropPlacement = { 0.0, 0.0, -0.0300, 0.0, 0.0, 0.0 },
+ EmoteLoop = true,
+ }},
+ ["rake4"] = { "anim@amb@drug_field_workers@rake@male_b@idles", "idle_d", "Rake 4", AnimationOptions = {
+ Prop = "prop_tool_rake",
+ PropBone = 28422,
+ PropPlacement = { 0.0, 0.0, -0.0300, 0.0, 0.0, 0.0 },
+ EmoteLoop = true,
+ }},
+ ["broom"] = { "anim@amb@drug_field_workers@rake@male_a@base", "base", "Broom", AnimationOptions = {
+ Prop = "prop_tool_broom",
+ PropBone = 28422,
+ PropPlacement = { -0.0100, 0.0400, -0.0300, 0.0, 0.0, 0.0 },
+ EmoteLoop = true,
+ }},
+ ["broom2"] = { "anim@amb@drug_field_workers@rake@male_a@idles", "idle_b", "Broom 2", AnimationOptions = {
+ Prop = "prop_tool_broom",
+ PropBone = 28422,
+ PropPlacement = { -0.0100, 0.0400, -0.0300, 0.0, 0.0, 0.0 },
+ EmoteLoop = true,
+ }},
+ ["broom3"] = { "anim@amb@drug_field_workers@rake@male_b@base", "base", "Broom 3", AnimationOptions = {
+ Prop = "prop_tool_broom",
+ PropBone = 28422,
+ PropPlacement = { -0.0100, 0.0400, -0.0300, 0.0, 0.0, 0.0 },
+ EmoteLoop = true,
+ }},
+ ["broom4"] = { "anim@amb@drug_field_workers@rake@male_b@idles", "idle_d", "Broom 4", AnimationOptions = {
+ Prop = "prop_tool_broom",
+ PropBone = 28422,
+ PropPlacement = { -0.0100, 0.0400, -0.0300, 0.0, 0.0, 0.0 },
+ EmoteLoop = true,
+ }},
+ ["champw"] = { "anim@move_f@waitress", "idle", "Champagne Waiter", AnimationOptions = {
+ Prop = "vw_prop_vw_tray_01a",
+ PropBone = 28422,
+ PropPlacement = { 0.0, 0.0, 0.0100, 0.0, 0.0, 0.0 },
+ SecondProp = 'prop_champ_cool',
+ SecondPropBone = 28422,
+ SecondPropPlacement = { 0.0, 0.0, 0.010, 0.0, 0.0, 0.0 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["shit"] = { "missfbi3ig_0", "shit_loop_trev", "Shit", AnimationOptions = {
+ Prop = "prop_toilet_roll_01",
+ PropBone = 28422,
+ PropPlacement = { 0.0700, -0.02000, -0.2100, 0, 0, 0.0, 0.0 },
+ SecondProp = 'prop_big_shit_01',
+ SecondPropBone = 0,
+ SecondPropPlacement = { -0.0100, 0.0600, -0.1550, 101.3015175, 7.3512213, -29.2665794 },
+ EmoteLoop = true,
+ EmoteMoving = false,
+ }},
+ ["selfie"] = { "anim@mp_player_intuppertake_selfie", "idle_a", "Selfie", AnimationOptions = {
+ Prop = "prop_phone_ing",
+ PropBone = 60309,
+ PropPlacement = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["selfie2"] = { "cellphone@self@franklin@", "peace", "Selfie 2", AnimationOptions = {
+ Prop = "prop_phone_ing",
+ PropBone = 28422,
+ PropPlacement = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["selfie3"] = { "cellphone@self@franklin@", "west_coast", "Selfie 3 - West Side", AnimationOptions = {
+ Prop = "prop_phone_ing",
+ PropBone = 28422,
+ PropPlacement = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["selfie4"] = { "cellphone@self@trevor@", "aggressive_finger", "Selfie 4 - Finger", AnimationOptions = {
+ Prop = "prop_phone_ing",
+ PropBone = 28422,
+ PropPlacement = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["selfie5"] = { "cellphone@self@trevor@", "proud_finger", "Selfie 5 - Finger 2", AnimationOptions = {
+ Prop = "prop_phone_ing",
+ PropBone = 28422,
+ PropPlacement = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["selfie6"] = { "cellphone@self@trevor@", "throat_slit", "Selfie 6 - Throat Slit", AnimationOptions = {
+ Prop = "prop_phone_ing",
+ PropBone = 28422,
+ PropPlacement = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["selfie7"] = { "cellphone@self@franklin@", "chest_bump", "Selfie 7 - Chest Bump", AnimationOptions = {
+ Prop = "prop_phone_ing",
+ PropBone = 28422,
+ PropPlacement = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["sittv"] = { "anim@heists@heist_safehouse_intro@variations@male@tv", "tv_part_one_loop", "Sit TV", AnimationOptions = {
+ Prop = "v_res_tre_remote",
+ PropBone = 57005,
+ PropPlacement = { 0.0990, 0.0170, -0.0300, -64.760, -109.544, 18.717 },
+ EmoteLoop = true,
+ EmoteMoving = false,
+ }},
+ ["dig"] = { "random@burial", "a_burial", "Dig", AnimationOptions = {
+ Prop = "prop_tool_shovel",
+ PropBone = 28422,
+ PropPlacement = { 0.0, 0.0, 0.24, 0, 0, 0.0, 0.0 },
+ SecondProp = 'prop_ld_shovel_dirt',
+ SecondPropBone = 28422,
+ SecondPropPlacement = { 0.0, 0.0, 0.24, 0.0, 0.0, 0.0 },
+ EmoteLoop = true,
+ EmoteMoving = false,
+ }},
+ ["bongos"] = { "amb@world_human_musician@bongos@male@base", "base", "Bongo Drums", AnimationOptions = {
+ Prop = "prop_bongos_01",
+ PropBone = 60309,
+ PropPlacement = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["medbag"] = { "move_weapon@jerrycan@generic", "idle", "Medic Bag", AnimationOptions = {
+ Prop = "xm_prop_x17_bag_med_01a",
+ PropBone = 57005,
+ PropPlacement = { 0.3900, -0.0600, -0.0600, -100.00, -180.00, -78.00 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["dufbag"] = { "move_weapon@jerrycan@generic", "idle", "Duffel Bag", AnimationOptions = {
+ Prop = "bkr_prop_duffel_bag_01a",
+ PropBone = 28422,
+ PropPlacement = { 0.2600, 0.0400, 0.00, 90.00, 0.00, -78.99 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["shopbag"] = { "move_weapon@jerrycan@generic", "idle", "Shopping Bag", AnimationOptions = {
+ Prop = "vw_prop_casino_shopping_bag_01a",
+ PropBone = 28422,
+ PropPlacement = { 0.24, 0.03, -0.04, 0.00, -90.00, 10.00 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["shopbag2"] = { "move_weapon@jerrycan@generic", "idle", "Shopping Bag 2", AnimationOptions = {
+ Prop = "prop_shopping_bags02",
+ PropBone = 28422,
+ PropPlacement = { 0.05, 0.02, 0.00, 178.80, 91.19, 9.97 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["shopbag3"] = { "move_weapon@jerrycan@generic", "idle", "Shopping Bag 3", AnimationOptions = {
+ Prop = "prop_cs_shopping_bag",
+ PropBone = 28422,
+ PropPlacement = { 0.24, 0.03, -0.04, 0.00, -90.00, 10.00 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["idcard"] = { "paper_1_rcm_alt1-8", "player_one_dual-8", "ID Card 1", AnimationOptions = {
+ Prop = "prop_franklin_dl",
+ PropBone = 57005,
+ PropPlacement = { 0.1000, 0.0200, -0.0300, -90.000, 170.000, 78.999 },
+ EmoteLoop = false,
+ EmoteMoving = true,
+ }},
+ ["idcardb"] = { "paper_1_rcm_alt1-8", "player_one_dual-8", "ID Card 2 - FIB", AnimationOptions = {
+ Prop = "prop_fib_badge",
+ PropBone = 28422,
+ PropPlacement = { 0.0600, 0.0210, -0.0400, -90.00, -180.00, 78.999 },
+ EmoteLoop = false,
+ EmoteMoving = true,
+ }},
+ ["idcardc"] = { "paper_1_rcm_alt1-8", "player_one_dual-8", "ID Card 3", AnimationOptions = {
+ Prop = "prop_michael_sec_id",
+ PropBone = 28422,
+ PropPlacement = { 0.1000, 0.0200, -0.0300, -90.00, -180.00, 78.999 },
+ EmoteLoop = false,
+ EmoteMoving = true,
+ }},
+ ["idcardd"] = { "paper_1_rcm_alt1-8", "player_one_dual-8", "ID Card 4", AnimationOptions = {
+ Prop = "prop_trev_sec_id",
+ PropBone = 28422,
+ PropPlacement = { 0.1000, 0.0200, -0.0300, -90.00, -180.00, 78.999 },
+ EmoteLoop = false,
+ EmoteMoving = true,
+ }},
+ ["idcarde"] = { "paper_1_rcm_alt1-8", "player_one_dual-8", "ID Card 5", AnimationOptions = {
+ Prop = "p_ld_id_card_002",
+ PropBone = 28422,
+ PropPlacement = { 0.1000, 0.0200, -0.0300, -90.00, -180.00, 78.999 },
+ EmoteLoop = false,
+ EmoteMoving = true,
+ }},
+ ["idcardf"] = { "paper_1_rcm_alt1-8", "player_one_dual-8", "ID Card 6", AnimationOptions = {
+ Prop = "prop_cs_r_business_card",
+ PropBone = 28422,
+ PropPlacement = { 0.1000, 0.0200, -0.0300, -90.00, -180.00, 78.999 },
+ EmoteLoop = false,
+ EmoteMoving = true,
+ }},
+ ["idcardg"] = { "paper_1_rcm_alt1-8", "player_one_dual-8", "ID Card 7", AnimationOptions = {
+ Prop = "prop_michael_sec_id",
+ PropBone = 28422,
+ PropPlacement = { 0.1000, 0.0200, -0.0300, -90.00, -180.00, 78.999 },
+ EmoteLoop = false,
+ EmoteMoving = true,
+ }},
+ ["idcardh"] = { "paper_1_rcm_alt1-8", "player_one_dual-8", "ID Card 8", AnimationOptions = {
+ Prop = "prop_cop_badge",
+ PropBone = 28422,
+ PropPlacement = { 0.0800, -0.0120, -0.0600, -90.00, 180.00, 69.99 },
+ EmoteLoop = false,
+ EmoteMoving = true,
+ }},
+ ["sms"] = { "cellphone@", "cellphone_text_read_base", "SMS", AnimationOptions = {
+ Prop = "prop_phone_ing",
+ PropBone = 28422,
+ PropPlacement = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["sms2"] = { "cellphone@female", "cellphone_text_read_base", "SMS 2", AnimationOptions = {
+ Prop = "prop_phone_ing",
+ PropBone = 28422,
+ PropPlacement = { 0.00, 0.00, 0.0301, 0.000, 00.00, 00.00 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["sms3"] = { "cellphone@female", "cellphone_email_read_base", "SMS 3", AnimationOptions = {
+ Prop = "prop_phone_ing",
+ PropBone = 28422,
+ PropPlacement = { -0.0190, -0.0240, 0.0300, 18.99, -72.07, 6.39 },
+ EmoteLoop = false,
+ EmoteMoving = true,
+ }},
+ ["sms4"] = { "cellphone@female", "cellphone_text_read_base_cover_low", "SMS 4", AnimationOptions = {
+ Prop = "prop_phone_ing",
+ PropBone = 28422,
+ PropPlacement = { -0.0190, -0.0250, 0.0400, 19.17, -78.50, 14.97 },
+ EmoteLoop = false,
+ EmoteMoving = true,
+ }},
+ ["sms5"] = { "amb@code_human_wander_texting_fat@male@base", "static", "SMS 6", AnimationOptions = {
+ Prop = "prop_phone_ing",
+ PropBone = 28422,
+ PropPlacement = { -0.0200, -0.0100, 0.00, 2.309, 88.845, 29.979 },
+ EmoteLoop = false,
+ EmoteMoving = true,
+ }},
+ ["tire"] = { "anim@heists@box_carry@", "idle", "Tire", AnimationOptions = {
+ Prop = "prop_wheel_tyre",
+ PropBone = 60309,
+ PropPlacement = { -0.05, 0.16, 0.32, -130.0, -55.0, 150.0 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["register"] = { "anim@heists@box_carry@", "idle", "Register", AnimationOptions = {
+ Prop = "v_ret_gc_cashreg",
+ PropBone = 60309,
+ PropPlacement = { 0.138, 0.2, 0.2, -50.0, 290.0, 0.0 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["weedbrick"] = { "impexp_int-0", "mp_m_waremech_01_dual-0", "Weed Brick", AnimationOptions = {
+ Prop = "prop_weed_block_01",
+ PropBone = 60309,
+ PropPlacement = { 0.1, 0.1, 0.05, 0.0, -90.0, 90.0 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["weedbrick2"] = { "anim@heists@box_carry@", "idle", "Weed Brick BIG", AnimationOptions = {
+ Prop = "bkr_prop_weed_bigbag_01a",
+ PropBone = 60309,
+ PropPlacement = { 0.158, -0.05, 0.23, -50.0, 290.0, 0.0 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["potplant"] = { "anim@heists@box_carry@", "idle", "Pot Plant (Small)", AnimationOptions = {
+ Prop = "bkr_prop_weed_01_small_01c",
+ PropBone = 60309,
+ PropPlacement = { 0.138, -0.05, 0.23, -50.0, 290.0, 0.0 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["potplant2"] = { "anim@heists@box_carry@", "idle", "Pot Plant (Medium)", AnimationOptions = {
+ Prop = "bkr_prop_weed_01_small_01b",
+ PropBone = 60309,
+ PropPlacement = { 0.138, -0.05, 0.23, -50.0, 290.0, 0.0 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["potplant3"] = { "anim@heists@box_carry@", "idle", "Pot Plant (Large)", AnimationOptions = {
+ Prop = "bkr_prop_weed_lrg_01b",
+ PropBone = 60309,
+ PropPlacement = { 0.138, -0.05, 0.23, -50.0, 290.0, 0.0 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["lawnchair"] = { "timetable@ron@ig_5_p3", "ig_5_p3_base", "Lawnchair", AnimationOptions = {
+ Prop = "prop_skid_chair_02",
+ PropBone = 0,
+ PropPlacement = { 0.025, -0.2, -0.1, 45.0, -5.0, 180.0 },
+ EmoteLoop = true,
+ EmoteMoving = false,
+ }},
+ ["lawnchair2"] = { "timetable@reunited@ig_10", "base_amanda", "Lawnchair 2", AnimationOptions = {
+ Prop = "prop_skid_chair_02",
+ PropBone = 0,
+ PropPlacement = { 0.025, -0.15, -0.1, 45.0, 5.0, 180.0 },
+ EmoteLoop = true,
+ EmoteMoving = false,
+ }},
+ ["lawnchair3"] = { "timetable@ron@ig_3_couch", "base", "Lawnchair 3", AnimationOptions = {
+ Prop = "prop_skid_chair_02",
+ PropBone = 0,
+ PropPlacement = { -0.05, 0.0, -0.2, 5.0, 0.0, 180.0 },
+ EmoteLoop = true,
+ EmoteMoving = false,
+ }},
+ ["rose2"] = { "missheistdocksprep1hold_cellphone", "static", "Rose 2 (Male)", AnimationOptions = {
+ Prop = "prop_single_rose",
+ PropBone = 31086,
+ PropPlacement = { -0.0140, 0.1030, 0.0620, -2.932, 4.564, 39.910 },
+ EmoteLoop = false,
+ EmoteMoving = true,
+ }},
+ ["rose3"] = { "missheistdocksprep1hold_cellphone", "static", "Rose 3 (Female)", AnimationOptions = {
+ Prop = "prop_single_rose",
+ PropBone = 31086,
+ PropPlacement = { -0.0140, 0.1070, 0.0720, 0.00, 0.00, 2.99 },
+ EmoteLoop = false,
+ EmoteMoving = true,
+ }},
+ ["cbbox"] = { "anim@heists@box_carry@", "idle", "Carry Beer Box", AnimationOptions = {
+ Prop = "v_ret_ml_beerben1",
+ PropBone = 28422,
+ PropPlacement = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["cbbox2"] = { "anim@heists@box_carry@", "idle", "Carry Beer Box 2", AnimationOptions = {
+ Prop = "v_ret_ml_beerbla1",
+ PropBone = 28422,
+ PropPlacement = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["cbbox3"] = { "anim@heists@box_carry@", "idle", "Carry Beer Box 3", AnimationOptions = {
+ Prop = "v_ret_ml_beerjak1",
+ PropBone = 28422,
+ PropPlacement = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["cbbox4"] = { "anim@heists@box_carry@", "idle", "Carry Beer Box 4", AnimationOptions = {
+ Prop = "v_ret_ml_beerlog1",
+ PropBone = 28422,
+ PropPlacement = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["cbbox5"] = { "anim@heists@box_carry@", "idle", "Carry Beer Box 5", AnimationOptions = {
+ Prop = "v_ret_ml_beerpis1",
+ PropBone = 28422,
+ PropPlacement = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["cbbox6"] = { "anim@heists@box_carry@", "idle", "Carry Beer Box 6", AnimationOptions = {
+ Prop = "prop_beer_box_01",
+ PropBone = 28422,
+ PropPlacement = { 0.0200, -0.0600, -0.1200, -180.00, -180.00, 1.99 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["gbin"] = { "anim@heists@box_carry@", "idle", "Garbage Bin", AnimationOptions = {
+ Prop = "prop_bin_08open",
+ PropBone = 28422,
+ PropPlacement = { 0.00, -0.420, -1.290, 0.0, 0.0, 0.0 },
+ EmoteLoop = true,
+ EmoteMoving = true,
}},
- ["box"] = {"anim@heists@box_carry@", "idle", "Box", AnimationOptions =
- {
- Prop = "hei_prop_heist_box",
- PropBone = 60309,
- PropPlacement = {0.025, 0.08, 0.255, -145.0, 290.0, 0.0},
- EmoteLoop = true,
- EmoteMoving = true,
+ ["gbin2"] = { "anim@heists@box_carry@", "idle", "Garbage Bin 2", AnimationOptions = {
+ Prop = "prop_cs_bin_01",
+ PropBone = 28422,
+ PropPlacement = { 0.00, -0.420, -1.290, 0.0, 0.0, 0.0 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["gbin3"] = { "anim@heists@box_carry@", "idle", "Garbage Bin 3", AnimationOptions = {
+ Prop = "prop_cs_bin_03",
+ PropBone = 28422,
+ PropPlacement = { 0.00, -0.420, -1.290, 0.0, 0.0, 0.0 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["gbin4"] = { "anim@heists@box_carry@", "idle", "Garbage Bin 4", AnimationOptions = {
+ Prop = "prop_bin_08a",
+ PropBone = 28422,
+ PropPlacement = { 0.00, -0.420, -1.290, 0.0, 0.0, 0.0 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ["gbin5"] = { "anim@heists@box_carry@", "idle", "Garbage Bin 5", AnimationOptions = {
+ Prop = "prop_bin_07d",
+ PropBone = 28422,
+ PropPlacement = { -0.0100, -0.2200, -0.8600, 0.0, 0.0, 0.0 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ['pflag'] = { 'rcmnigel1d', 'base_club_shoulder', 'Pride Flag - Rainbow', AnimationOptions = {
+ Prop = 'prideflag1',
+ PropBone = 18905,
+ PropPlacement = { 0.0800, -0.2090, 0.0900, -82.6677, -141.2988, 12.3308 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ['pflag2'] = { 'rcmnigel1d', 'base_club_shoulder', 'Pride Flag 2 - LGBTQ', AnimationOptions = {
+ Prop = 'prideflag2',
+ PropBone = 18905,
+ PropPlacement = { 0.0800, -0.2090, 0.0900, -82.6677, -141.2988, 12.3308 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ['pflag3'] = { 'rcmnigel1d', 'base_club_shoulder', 'Pride Flag 3 - Bisexual ', AnimationOptions = {
+ Prop = 'prideflag3',
+ PropBone = 18905,
+ PropPlacement = { 0.0800, -0.2090, 0.0900, -82.6677, -141.2988, 12.3308 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ['pflag4'] = { 'rcmnigel1d', 'base_club_shoulder', 'Pride Flag 4 - Lesbian ', AnimationOptions = {
+ Prop = 'prideflag4',
+ PropBone = 18905,
+ PropPlacement = { 0.0800, -0.2090, 0.0900, -82.6677, -141.2988, 12.3308 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ['pflag5'] = { 'rcmnigel1d', 'base_club_shoulder', 'Pride Flag 5 - Pansexual ', AnimationOptions = {
+ Prop = 'prideflag5',
+ PropBone = 18905,
+ PropPlacement = { 0.0800, -0.2090, 0.0900, -82.6677, -141.2988, 12.3308 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ['pflag6'] = { 'rcmnigel1d', 'base_club_shoulder', 'Pride Flag 6 - Transexual ', AnimationOptions = {
+ Prop = 'prideflag6',
+ PropBone = 18905,
+ PropPlacement = { 0.0800, -0.2090, 0.0900, -82.6677, -141.2988, 12.3308 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ['pflag7'] = { 'rcmnigel1d', 'base_club_shoulder', 'Pride Flag 7 - Non Binary ', AnimationOptions = {
+ Prop = 'prideflag7',
+ PropBone = 18905,
+ PropPlacement = { 0.0800, -0.2090, 0.0900, -82.6677, -141.2988, 12.3308 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ['pflag8'] = { 'rcmnigel1d', 'base_club_shoulder', 'Pride Flag 8 - Asexual ', AnimationOptions = {
+ Prop = 'prideflag8',
+ PropBone = 18905,
+ PropPlacement = { 0.0800, -0.2090, 0.0900, -82.6677, -141.2988, 12.3308 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ['pflag9'] = { 'rcmnigel1d', 'base_club_shoulder', 'Pride Flag 9 - Straight Ally ', AnimationOptions = {
+ Prop = 'prideflag9',
+ PropBone = 18905,
+ PropPlacement = { 0.0800, -0.2090, 0.0900, -82.6677, -141.2988, 12.3308 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ['old'] = { 'missbigscore2aleadinout@bs_2a_2b_int', 'lester_base_idle', 'Old Man Walking Stick', AnimationOptions = {
+ Prop = 'prop_cs_walking_stick',
+ PropBone = 28422,
+ PropPlacement = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 },
+ SecondProp = 'prop_phone_ing',
+ SecondPropBone = 60309,
+ SecondPropPlacement = { 0.0800, 0.0300, 0.0100, -107.9999, 0.0, -4.6003 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ['digiscan'] = { 'weapons@misc@digi_scanner', 'aim_med_loop', 'Digiscan 1 ', AnimationOptions = {
+ Prop = 'w_am_digiscanner',
+ PropBone = 28422,
+ PropPlacement = { 0.0480, 0.0780, 0.0040, -81.6893, 2.5616, -15.7909 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ['digiscan2'] = { 'weapons@misc@digi_scanner', 'aim_low_loop', 'Digiscan 2 ', AnimationOptions = {
+ Prop = 'w_am_digiscanner',
+ PropBone = 28422,
+ PropPlacement = { 0.0480, 0.0780, 0.0040, -81.6893, 2.5616, -15.7909 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ }},
+ ['digiscan3'] = { 'weapons@misc@digi_scanner', 'aim_high_loop', 'Digiscan 3 ', AnimationOptions = {
+ Prop = 'w_am_digiscanner',
+ PropBone = 28422,
+ PropPlacement = { 0.0480, 0.0780, 0.0040, -81.6893, 2.5616, -15.7909 },
+ EmoteLoop = true,
+ EmoteMoving = true,
}},
- ["rose"] = {"anim@heists@humane_labs@finale@keycards", "ped_a_enter_loop", "Rose", AnimationOptions =
- {
- Prop = "prop_single_rose",
- PropBone = 18905,
- PropPlacement = {0.13, 0.15, 0.0, -100.0, 0.0, -20.0},
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["smoke2"] = {"amb@world_human_aa_smoke@male@idle_a", "idle_c", "Smoke 2", AnimationOptions =
- {
- Prop = 'prop_cs_ciggy_01',
- PropBone = 28422,
- PropPlacement = {0.0, 0.0, 0.0, 0.0, 0.0, 0.0},
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["smoke3"] = {"amb@world_human_aa_smoke@male@idle_a", "idle_b", "Smoke 3", AnimationOptions =
- {
- Prop = 'prop_cs_ciggy_01',
- PropBone = 28422,
- PropPlacement = {0.0, 0.0, 0.0, 0.0, 0.0, 0.0},
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["smoke4"] = {"amb@world_human_smoking@female@idle_a", "idle_b", "Smoke 4", AnimationOptions =
- {
- Prop = 'prop_cs_ciggy_01',
- PropBone = 28422,
- PropPlacement = {0.0, 0.0, 0.0, 0.0, 0.0, 0.0},
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["bong"] = {"anim@safehouse@bong", "bong_stage3", "Bong", AnimationOptions =
- {
- Prop = 'hei_heist_sh_bong_01',
- PropBone = 18905,
- PropPlacement = {0.10,-0.25,0.0,95.0,190.0,180.0},
- }},
- ["suitcase"] = {"missheistdocksprep1hold_cellphone", "static", "Suitcase", AnimationOptions =
- {
- Prop = "prop_ld_suitcase_01",
- PropBone = 57005,
- PropPlacement = {0.39, 0.0, 0.0, 0.0, 266.0, 60.0},
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["suitcase2"] = {"missheistdocksprep1hold_cellphone", "static", "Suitcase 2", AnimationOptions =
- {
- Prop = "prop_security_case_01",
- PropBone = 57005,
- PropPlacement = {0.10, 0.0, 0.0, 0.0, 280.0, 53.0},
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["mugshot"] = {"mp_character_creation@customise@male_a", "loop", "Mugshot", AnimationOptions =
- {
- Prop = 'prop_police_id_board',
- PropBone = 58868,
- PropPlacement = {0.12, 0.24, 0.0, 5.0, 0.0, 70.0},
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["coffee"] = {"amb@world_human_drinking@coffee@male@idle_a", "idle_c", "Coffee", AnimationOptions =
- {
- Prop = 'p_amb_coffeecup_01',
- PropBone = 28422,
- PropPlacement = {0.0, 0.0, 0.0, 0.0, 0.0, 0.0},
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["whiskey"] = {"amb@world_human_drinking@coffee@male@idle_a", "idle_c", "Whiskey", AnimationOptions =
- {
- Prop = 'prop_drink_whisky',
- PropBone = 28422,
- PropPlacement = {0.01, -0.01, -0.06, 0.0, 0.0, 0.0},
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["beer"] = {"amb@world_human_drinking@coffee@male@idle_a", "idle_c", "Beer", AnimationOptions =
- {
- Prop = 'prop_amb_beer_bottle',
- PropBone = 28422,
- PropPlacement = {0.0, 0.0, 0.0, 0.0, 0.0, 0.0},
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["cup"] = {"amb@world_human_drinking@coffee@male@idle_a", "idle_c", "Cup", AnimationOptions =
- {
- Prop = 'prop_plastic_cup_02',
- PropBone = 28422,
- PropPlacement = {0.0, 0.0, 0.0, 0.0, 0.0, 0.0},
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["donut"] = {"mp_player_inteat@burger", "mp_player_int_eat_burger", "Donut", AnimationOptions =
- {
- Prop = 'prop_amb_donut',
- PropBone = 18905,
- PropPlacement = {0.13, 0.05, 0.02, -50.0, 16.0, 60.0},
- EmoteMoving = true,
- }},
- ["burger"] = {"mp_player_inteat@burger", "mp_player_int_eat_burger", "Burger", AnimationOptions =
- {
- Prop = 'prop_cs_burger_01',
- PropBone = 18905,
- PropPlacement = {0.13, 0.05, 0.02, -50.0, 16.0, 60.0},
- EmoteMoving = true,
- }},
- ["sandwich"] = {"mp_player_inteat@burger", "mp_player_int_eat_burger", "Sandwich", AnimationOptions =
- {
- Prop = 'prop_sandwich_01',
- PropBone = 18905,
- PropPlacement = {0.13, 0.05, 0.02, -50.0, 16.0, 60.0},
- EmoteMoving = true,
- }},
- ["soda"] = {"amb@world_human_drinking@coffee@male@idle_a", "idle_c", "Soda", AnimationOptions =
- {
- Prop = 'prop_ecola_can',
- PropBone = 28422,
- PropPlacement = {0.0, 0.0, 0.0, 0.0, 0.0, 130.0},
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["egobar"] = {"mp_player_inteat@burger", "mp_player_int_eat_burger", "Ego Bar", AnimationOptions =
- {
- Prop = 'prop_choc_ego',
- PropBone = 60309,
- PropPlacement = {0.0, 0.0, 0.0, 0.0, 0.0, 0.0},
- EmoteMoving = true,
- }},
- ["wine"] = {"anim@heists@humane_labs@finale@keycards", "ped_a_enter_loop", "Wine", AnimationOptions =
- {
- Prop = 'prop_drink_redwine',
- PropBone = 18905,
- PropPlacement = {0.10, -0.03, 0.03, -100.0, 0.0, -10.0},
- EmoteMoving = true,
- EmoteLoop = true
- }},
- ["flute"] = {"anim@heists@humane_labs@finale@keycards", "ped_a_enter_loop", "Flute", AnimationOptions =
- {
- Prop = 'prop_champ_flute',
- PropBone = 18905,
- PropPlacement = {0.10, -0.03, 0.03, -100.0, 0.0, -10.0},
- EmoteMoving = true,
- EmoteLoop = true
- }},
- ["champagne"] = {"anim@heists@humane_labs@finale@keycards", "ped_a_enter_loop", "Champagne", AnimationOptions =
- {
- Prop = 'prop_drink_champ',
- PropBone = 18905,
- PropPlacement = {0.10, -0.03, 0.03, -100.0, 0.0, -10.0},
- EmoteMoving = true,
- EmoteLoop = true
- }},
- ["cigar"] = {"amb@world_human_smoking@male@male_a@enter", "enter", "Cigar", AnimationOptions =
- {
- Prop = 'prop_cigar_02',
- PropBone = 47419,
- PropPlacement = {0.010, 0.0, 0.0, 50.0, 0.0, -80.0},
- EmoteMoving = true,
- EmoteDuration = 2600
- }},
- ["cigar2"] = {"amb@world_human_smoking@male@male_a@enter", "enter", "Cigar 2", AnimationOptions =
- {
- Prop = 'prop_cigar_01',
- PropBone = 47419,
- PropPlacement = {0.010, 0.0, 0.0, 50.0, 0.0, -80.0},
- EmoteMoving = true,
- EmoteDuration = 2600
- }},
- ["guitar"] = {"amb@world_human_musician@guitar@male@idle_a", "idle_b", "Guitar", AnimationOptions =
- {
- Prop = 'prop_acc_guitar_01',
- PropBone = 24818,
- PropPlacement = {-0.1, 0.31, 0.1, 0.0, 20.0, 150.0},
- EmoteMoving = true,
- EmoteLoop = true
- }},
- ["guitar2"] = {"switch@trevor@guitar_beatdown", "001370_02_trvs_8_guitar_beatdown_idle_busker", "Guitar 2", AnimationOptions =
- {
- Prop = 'prop_acc_guitar_01',
- PropBone = 24818,
- PropPlacement = {-0.05, 0.31, 0.1, 0.0, 20.0, 150.0},
- EmoteMoving = true,
- EmoteLoop = true
- }},
- ["guitarelectric"] = {"amb@world_human_musician@guitar@male@idle_a", "idle_b", "Guitar Electric", AnimationOptions =
- {
- Prop = 'prop_el_guitar_01',
- PropBone = 24818,
- PropPlacement = {-0.1, 0.31, 0.1, 0.0, 20.0, 150.0},
- EmoteMoving = true,
- EmoteLoop = true
- }},
- ["guitarelectric2"] = {"amb@world_human_musician@guitar@male@idle_a", "idle_b", "Guitar Electric 2", AnimationOptions =
- {
- Prop = 'prop_el_guitar_03',
- PropBone = 24818,
- PropPlacement = {-0.1, 0.31, 0.1, 0.0, 20.0, 150.0},
- EmoteMoving = true,
- EmoteLoop = true
- }},
- ["book"] = {"cellphone@", "cellphone_text_read_base", "Book", AnimationOptions =
- {
- Prop = 'prop_novel_01',
- PropBone = 6286,
- PropPlacement = {0.15, 0.03, -0.065, 0.0, 180.0, 90.0}, -- This positioning isnt too great, was to much of a hassle
- EmoteMoving = true,
- EmoteLoop = true
- }},
- ["bouquet"] = {"impexp_int-0", "mp_m_waremech_01_dual-0", "Bouquet", AnimationOptions =
- {
- Prop = 'prop_snow_flower_02',
- PropBone = 24817,
- PropPlacement = {-0.29, 0.40, -0.02, -90.0, -90.0, 0.0},
- EmoteMoving = true,
- EmoteLoop = true
- }},
- ["teddy"] = {"impexp_int-0", "mp_m_waremech_01_dual-0", "Teddy", AnimationOptions =
- {
- Prop = 'v_ilev_mr_rasberryclean',
- PropBone = 24817,
- PropPlacement = {-0.20, 0.46, -0.016, -180.0, -90.0, 0.0},
- EmoteMoving = true,
- EmoteLoop = true
- }},
- ["backpack"] = {"move_p_m_zero_rucksack", "idle", "Backpack", AnimationOptions =
- {
- Prop = 'p_michael_backpack_s',
- PropBone = 24818,
- PropPlacement = {0.07, -0.11, -0.05, 0.0, 90.0, 175.0},
- EmoteMoving = true,
- EmoteLoop = true
- }},
- ["clipboard"] = {"missfam4", "base", "Clipboard", AnimationOptions =
- {
- Prop = 'p_amb_clipboard_01',
- PropBone = 36029,
- PropPlacement = {0.16, 0.08, 0.1, -130.0, -50.0, 0.0},
- EmoteMoving = true,
- EmoteLoop = true
- }},
- ["map"] = {"amb@world_human_tourist_map@male@base", "base", "Map", AnimationOptions =
- {
- Prop = 'prop_tourist_map_01',
- PropBone = 28422,
- PropPlacement = {0.0, 0.0, 0.0, 0.0, 0.0, 0.0},
- EmoteMoving = true,
- EmoteLoop = true
- }},
- ["beg"] = {"amb@world_human_bum_freeway@male@base", "base", "Beg", AnimationOptions =
- {
- Prop = 'prop_beggers_sign_03',
- PropBone = 58868,
- PropPlacement = {0.19, 0.18, 0.0, 5.0, 0.0, 40.0},
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["makeitrain"] = {"anim@mp_player_intupperraining_cash", "idle_a", "Make It Rain", AnimationOptions =
- {
- Prop = 'prop_anim_cash_pile_01',
- PropBone = 60309,
- PropPlacement = {0.0, 0.0, 0.0, 180.0, 0.0, 70.0},
- EmoteMoving = true,
- EmoteLoop = true,
- PtfxAsset = "scr_xs_celebration",
- PtfxName = "scr_xs_money_rain",
- PtfxPlacement = {0.0, 0.0, -0.09, -80.0, 0.0, 0.0, 1.0},
- PtfxInfo = Config.Languages[Config.MenuLanguage]['makeitrain'],
- PtfxWait = 500,
- }},
- ["camera"] = {"amb@world_human_paparazzi@male@base", "base", "Camera", AnimationOptions =
- {
- Prop = 'prop_pap_camera_01',
- PropBone = 28422,
- PropPlacement = {0.0, 0.0, 0.0, 0.0, 0.0, 0.0},
- EmoteLoop = true,
- EmoteMoving = true,
- PtfxAsset = "scr_bike_business",
- PtfxName = "scr_bike_cfid_camera_flash",
- PtfxPlacement = {0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1.0},
- PtfxInfo = Config.Languages[Config.MenuLanguage]['camera'],
- PtfxWait = 200,
- }},
- ["champagnespray"] = {"anim@mp_player_intupperspray_champagne", "idle_a", "Champagne Spray", AnimationOptions =
- {
- Prop = 'ba_prop_battle_champ_open',
- PropBone = 28422,
- PropPlacement = {0.0,0.0,0.0,0.0,0.0,0.0},
- EmoteMoving = true,
- EmoteLoop = true,
- PtfxAsset = "scr_ba_club",
- PtfxName = "scr_ba_club_champagne_spray",
- PtfxPlacement = {0.0, 0.0, 0.0, 0.0, 0.0, 0.0},
- PtfxInfo = Config.Languages[Config.MenuLanguage]['spraychamp'],
- PtfxWait = 500,
- }},
- ["joint"] = {"amb@world_human_smoking@male@male_a@enter", "enter", "Joint", AnimationOptions =
- {
- Prop = 'p_cs_joint_02',
- PropBone = 47419,
- PropPlacement = {0.015, -0.009, 0.003, 55.0, 0.0, 110.0},
- EmoteMoving = true,
- EmoteDuration = 2600
- }},
- ["cig"] = {"amb@world_human_smoking@male@male_a@enter", "enter", "Cig", AnimationOptions =
- {
- Prop = 'prop_amb_ciggy_01',
- PropBone = 47419,
- PropPlacement = {0.015, -0.009, 0.003, 55.0, 0.0, 110.0},
- EmoteMoving = true,
- EmoteDuration = 2600
- }},
- ["brief3"] = {"missheistdocksprep1hold_cellphone", "static", "Brief 3", AnimationOptions =
- {
- Prop = "prop_ld_case_01",
- PropBone = 57005,
- PropPlacement = {0.10, 0.0, 0.0, 0.0, 280.0, 53.0},
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["tablet"] = {"amb@world_human_tourist_map@male@base", "base", "Tablet", AnimationOptions =
- {
- Prop = "prop_cs_tablet",
- PropBone = 28422,
- PropPlacement = {0.0, -0.03, 0.0, 20.0, -90.0, 0.0},
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["tablet2"] = {"amb@code_human_in_bus_passenger_idles@female@tablet@idle_a", "idle_a", "Tablet 2", AnimationOptions =
- {
- Prop = "prop_cs_tablet",
- PropBone = 28422,
- PropPlacement = {-0.05, 0.0, 0.0, 0.0, 0.0, 0.0},
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["phonecall"] = {"cellphone@", "cellphone_call_listen_base", "Phone Call", AnimationOptions =
- {
- Prop = "prop_npc_phone_02",
- PropBone = 28422,
- PropPlacement = {0.0, 0.0, 0.0, 0.0, 0.0, 0.0},
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["phone"] = {"cellphone@", "cellphone_text_read_base", "Phone", AnimationOptions =
- {
- Prop = "prop_npc_phone_02",
- PropBone = 28422,
- PropPlacement = {0.0, 0.0, 0.0, 0.0, 0.0, 0.0},
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["clean"] = {"timetable@floyd@clean_kitchen@base", "base", "Clean", AnimationOptions =
- {
- Prop = "prop_sponge_01",
- PropBone = 28422,
- PropPlacement = {0.0, 0.0, -0.01, 90.0, 0.0, 0.0},
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["clean2"] = {"amb@world_human_maid_clean@", "base", "Clean 2", AnimationOptions =
- {
- Prop = "prop_sponge_01",
- PropBone = 28422,
- PropPlacement = {0.0, 0.0, -0.01, 90.0, 0.0, 0.0},
- EmoteLoop = true,
- EmoteMoving = true,
- }},
-}
\ No newline at end of file
+ ["cop4"] = { "amb@world_human_car_park_attendant@male@base", "base", "Cop 4", AnimationOptions = {
+ Prop = "prop_parking_wand_01",
+ PropBone = 57005,
+ PropPlacement = { 0.12, 0.05, 0.0, 80.0, -20.0, 180.0 },
+ EmoteLoop = true,
+ EmoteMoving = true,
+ } },
+ ["leanphone"] = { "amb@world_human_leaning@male@wall@back@mobile@base", "base", "Leaning With Phone", AnimationOptions = {
+ EmoteMoving = false,
+ EmoteLoop = true,
+ Prop = "prop_phone_ing",
+ PropBone = 28422,
+ PropPlacement = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 },
+ } },
+ ["piss"] = { "misscarsteal2peeing", "peeing_loop", "Piss", AnimationOptions = {
+ EmoteStuck = true,
+ PtfxAsset = "scr_amb_chop",
+ PtfxName = "ent_anim_dog_peeing",
+ PtfxNoProp = true,
+ PtfxPlacement = { -0.05, 0.3, 0.0, 0.0, 90.0, 90.0, 1.0 },
+ PtfxInfo = Config.Languages[Config.MenuLanguage]['pee'],
+ PtfxWait = 3000,
+ } },
+ ["hump"] = { "timetable@trevor@skull_loving_bear", "skull_loving_bear", "Hump (Bear)", AnimationOptions = {
+ Prop = 'prop_mr_raspberry_01',
+ PropBone = 28422,
+ PropPlacement = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 },
+ EmoteMoving = false,
+ EmoteLoop = true,
+ } },
+}
diff --git a/resources/EmoteMenu/Client/Emote.lua b/resources/EmoteMenu/Client/Emote.lua
index dd9720644..3292cc375 100644
--- a/resources/EmoteMenu/Client/Emote.lua
+++ b/resources/EmoteMenu/Client/Emote.lua
@@ -18,53 +18,54 @@ local PtfxWait = 500
local PtfxNoProp = false
Citizen.CreateThread(function()
- while true do
+ while true do
+ if IsPedShooting(PlayerPedId()) and IsInAnimation then
+ EmoteCancel()
+ end
- if IsPedShooting(PlayerPedId()) and IsInAnimation then
- EmoteCancel()
+ if PtfxPrompt then
+ if not PtfxNotif then
+ SimpleNotify(PtfxInfo)
+ PtfxNotif = true
+ end
+ if IsControlPressed(0, 47) then
+ PtfxStart()
+ Wait(PtfxWait)
+ PtfxStop()
+ end
+ end
+
+ if Config.EnableXtoCancel then if IsControlPressed(0, 73) then EmoteCancel() end end
+ Citizen.Wait(1)
end
-
- if PtfxPrompt then
- if not PtfxNotif then
- SimpleNotify(PtfxInfo)
- PtfxNotif = true
- end
- if IsControlPressed(0, 47) then
- PtfxStart()
- Wait(PtfxWait)
- PtfxStop()
- end
- end
-
- if Config.MenuKeybindEnabled then if IsControlPressed(0, Config.MenuKeybind) then OpenEmoteMenu() end end
- if Config.EnableXtoCancel then if IsControlPressed(0, 73) then EmoteCancel() end end
- Citizen.Wait(1)
- end
end)
+if Config.MenuKeybindEnabled then
+ RegisterKeyMapping("emotemenu", "Open dpemotes menu", "keyboard", Config.MenuKeybind)
+end
+
-----------------------------------------------------------------------------------------------------
-- Commands / Events --------------------------------------------------------------------------------
-----------------------------------------------------------------------------------------------------
Citizen.CreateThread(function()
- TriggerEvent('chat:addSuggestion', '/e', 'Play an emote', {{ name="emotename", help="dance, camera, sit or any valid emote."}})
- TriggerEvent('chat:addSuggestion', '/e', 'Play an emote', {{ name="emotename", help="dance, camera, sit or any valid emote."}})
- TriggerEvent('chat:addSuggestion', '/emote', 'Play an emote', {{ name="emotename", help="dance, camera, sit or any valid emote."}})
+ TriggerEvent('chat:addSuggestion', '/e', 'Play an emote', { { name = "emotename", help = "dance, camera, sit or any valid emote." } })
+ TriggerEvent('chat:addSuggestion', '/emote', 'Play an emote', { { name = "emotename", help = "dance, camera, sit or any valid emote." } })
if Config.SqlKeybinding then
- TriggerEvent('chat:addSuggestion', '/emotebind', 'Bind an emote', {{ name="key", help="num4, num5, num6, num7. num8, num9. Numpad 4-9!"}, { name="emotename", help="dance, camera, sit or any valid emote."}})
- TriggerEvent('chat:addSuggestion', '/emotebinds', 'Check your currently bound emotes.')
+ TriggerEvent('chat:addSuggestion', '/emotebind', 'Bind an emote', { { name = "key", help = "num4, num5, num6, num7. num8, num9. Numpad 4-9!" }, { name = "emotename", help = "dance, camera, sit or any valid emote." } })
+ TriggerEvent('chat:addSuggestion', '/emotebinds', 'Check your currently bound emotes.')
end
- TriggerEvent('chat:addSuggestion', '/emotemenu', 'Open dpemotes menu (F6) by default.')
+ TriggerEvent('chat:addSuggestion', '/emotemenu', 'Open the emote menu.')
TriggerEvent('chat:addSuggestion', '/emotes', 'List available emotes.')
- TriggerEvent('chat:addSuggestion', '/walk', 'Set your walkingstyle.', {{ name="style", help="/walks for a list of valid styles"}})
+ TriggerEvent('chat:addSuggestion', '/walk', 'Set your walkingstyle.', { { name = "style", help = "/walks for a list of valid styles" } })
TriggerEvent('chat:addSuggestion', '/walks', 'List available walking styles.')
end)
RegisterCommand('e', function(source, args, raw) EmoteCommandStart(source, args, raw) end)
RegisterCommand('emote', function(source, args, raw) EmoteCommandStart(source, args, raw) end)
if Config.SqlKeybinding then
- RegisterCommand('emotebind', function(source, args, raw) EmoteBindStart(source, args, raw) end)
- RegisterCommand('emotebinds', function(source, args, raw) EmoteBindsStart(source, args, raw) end)
+ RegisterCommand('emotebind', function(source, args, raw) EmoteBindStart(source, args, raw) end)
+ RegisterCommand('emotebinds', function(source, args, raw) EmoteBindsStart(source, args, raw) end)
end
RegisterCommand('emotemenu', function(source, args, raw) OpenEmoteMenu() end)
RegisterCommand('emotes', function(source, args, raw) EmotesOnCommand() end)
@@ -72,11 +73,13 @@ RegisterCommand('walk', function(source, args, raw) WalkCommandStart(source, arg
RegisterCommand('walks', function(source, args, raw) WalksOnCommand() end)
AddEventHandler('onResourceStop', function(resource)
- if resource == GetCurrentResourceName() then
- DestroyAllProps()
- ClearPedTasksImmediately(GetPlayerPed(-1))
- ResetPedMovementClipset(PlayerPedId())
- end
+ if resource == GetCurrentResourceName() then
+ local ply = PlayerPedId()
+ DestroyAllProps()
+ ClearPedTasksImmediately(ply)
+ DetachEntity(ply, true, false)
+ ResetPedMovementClipset(ply)
+ end
end)
-----------------------------------------------------------------------------------------------------
@@ -84,47 +87,49 @@ end)
-----------------------------------------------------------------------------------------------------
function EmoteCancel()
+ local ply = PlayerPedId()
+ if ChosenDict == "MaleScenario" and IsInAnimation then
+ ClearPedTasksImmediately(ply)
+ IsInAnimation = false
+ DebugPrint("Forced scenario exit")
+ elseif ChosenDict == "Scenario" and IsInAnimation then
+ ClearPedTasksImmediately(ply)
+ IsInAnimation = false
+ DebugPrint("Forced scenario exit")
+ end
- if ChosenDict == "MaleScenario" and IsInAnimation then
- ClearPedTasksImmediately(PlayerPedId())
- IsInAnimation = false
- DebugPrint("Forced scenario exit")
- elseif ChosenDict == "Scenario" and IsInAnimation then
- ClearPedTasksImmediately(PlayerPedId())
- IsInAnimation = false
- DebugPrint("Forced scenario exit")
- end
+ PtfxNotif = false
+ PtfxPrompt = false
- PtfxNotif = false
- PtfxPrompt = false
-
- if IsInAnimation then
- PtfxStop()
- ClearPedTasks(GetPlayerPed(-1))
- DestroyAllProps()
- IsInAnimation = false
- end
+ if IsInAnimation then
+ PtfxStop()
+ ClearPedTasks(ply)
+ DetachEntity(ply, true, false)
+ CancelSharedEmote(ply)
+ DestroyAllProps()
+ IsInAnimation = false
+ end
end
function EmoteChatMessage(args)
- if args == display then
- TriggerEvent("chatMessage", "^5Help^0", {0,0,0}, string.format(""))
- else
- TriggerEvent("chatMessage", "^5Help^0", {0,0,0}, string.format(""..args..""))
- end
+ if args == display then
+ TriggerEvent("chatMessage", "^5Help^0", { 0, 0, 0 }, string.format(""))
+ else
+ TriggerEvent("chatMessage", "^5Help^0", { 0, 0, 0 }, string.format("" .. args .. ""))
+ end
end
function DebugPrint(args)
- if Config.DebugDisplay then
- print(args)
- end
+ if Config.DebugDisplay then
+ print(args)
+ end
end
function PtfxStart()
if PtfxNoProp then
- PtfxAt = PlayerPedId()
+ PtfxAt = PlayerPedId()
else
- PtfxAt = prop
+ PtfxAt = prop
end
UseParticleFxAssetNextCall(PtfxAsset)
Ptfx = StartNetworkedParticleFxLoopedOnEntityBone(PtfxName, PtfxAt, Ptfx1, Ptfx2, Ptfx3, Ptfx4, Ptfx5, Ptfx6, GetEntityBoneIndexByName(PtfxName, "VFX"), 1065353216, 0, 0, 0, 1065353216, 1065353216, 1065353216, 0)
@@ -133,30 +138,30 @@ function PtfxStart()
end
function PtfxStop()
- for a,b in pairs(PlayerParticles) do
- DebugPrint("Stopped PTFX: "..b)
- StopParticleFxLooped(b, false)
- table.remove(PlayerParticles, a)
- end
+ for a, b in pairs(PlayerParticles) do
+ DebugPrint("Stopped PTFX: " .. b)
+ StopParticleFxLooped(b, false)
+ table.remove(PlayerParticles, a)
+ end
end
function EmotesOnCommand(source, args, raw)
- local EmotesCommand = ""
- for a in pairsByKeys(DP.Emotes) do
- EmotesCommand = EmotesCommand .. ""..a..", "
- end
- EmoteChatMessage(EmotesCommand)
- EmoteChatMessage(Config.Languages[lang]['emotemenucmd'])
+ local EmotesCommand = ""
+ for a in pairsByKeys(DP.Emotes) do
+ EmotesCommand = EmotesCommand .. "" .. a .. ", "
+ end
+ EmoteChatMessage(EmotesCommand)
+ EmoteChatMessage(Config.Languages[lang]['emotemenucmd'])
end
-function pairsByKeys (t, f)
+function pairsByKeys(t, f)
local a = {}
for n in pairs(t) do
table.insert(a, n)
end
table.sort(a, f)
- local i = 0 -- iterator variable
- local iter = function () -- iterator function
+ local i = 0 -- iterator variable
+ local iter = function() -- iterator function
i = i + 1
if a[i] == nil then
return nil
@@ -173,94 +178,111 @@ function EmoteMenuStart(args, hard)
if etype == "dances" then
if DP.Dances[name] ~= nil then
- if OnEmotePlay(DP.Dances[name]) then end
+ if OnEmotePlay(DP.Dances[name]) then end
+ end
+ elseif etype == "animals" then
+ if DP.AnimalEmotes[name] ~= nil then
+ if OnEmotePlay(DP.AnimalEmotes[name]) then end
end
elseif etype == "props" then
if DP.PropEmotes[name] ~= nil then
- if OnEmotePlay(DP.PropEmotes[name]) then end
+ if OnEmotePlay(DP.PropEmotes[name]) then end
end
elseif etype == "emotes" then
if DP.Emotes[name] ~= nil then
- if OnEmotePlay(DP.Emotes[name]) then end
+ if OnEmotePlay(DP.Emotes[name]) then end
else
- if name ~= "🕺 Dance Emotes" then end
+ if name ~= "🕺 Dance Emotes" then end
end
elseif etype == "expression" then
if DP.Expressions[name] ~= nil then
- if OnEmotePlay(DP.Expressions[name]) then end
+ if OnEmotePlay(DP.Expressions[name]) then end
end
end
end
function EmoteCommandStart(source, args, raw)
if #args > 0 then
- local name = string.lower(args[1])
- if name == "c" then
- if IsInAnimation then
- EmoteCancel()
- else
- EmoteChatMessage(Config.Languages[lang]['nocancel'])
+ local name = string.lower(args[1])
+ if name == "c" then
+ if IsInAnimation then
+ EmoteCancel()
+ else
+ EmoteChatMessage(Config.Languages[lang]['nocancel'])
+ end
+ return
+ elseif name == "help" then
+ EmotesOnCommand()
+ return
end
- return
- elseif name == "help" then
- EmotesOnCommand()
- return end
- if DP.Emotes[name] ~= nil then
- if OnEmotePlay(DP.Emotes[name]) then end return
- elseif DP.Dances[name] ~= nil then
- if OnEmotePlay(DP.Dances[name]) then end return
- elseif DP.PropEmotes[name] ~= nil then
- if OnEmotePlay(DP.PropEmotes[name]) then end return
- else
- EmoteChatMessage("'"..name.."' "..Config.Languages[lang]['notvalidemote'].."")
+ if DP.Emotes[name] ~= nil then
+ if OnEmotePlay(DP.Emotes[name]) then end
+ return
+ elseif DP.Dances[name] ~= nil then
+ if OnEmotePlay(DP.Dances[name]) then end
+ return
+ elseif DP.AnimalEmotes[name] ~= nil then
+ if OnEmotePlay(DP.AnimalEmotes[name]) then end
+ return
+ elseif DP.PropEmotes[name] ~= nil then
+ if OnEmotePlay(DP.PropEmotes[name]) then end
+ return
+ else
+ EmoteChatMessage("'" .. name .. "' " .. Config.Languages[lang]['notvalidemote'] .. "")
+ end
end
- end
end
function LoadAnim(dict)
- while not HasAnimDictLoaded(dict) do
- RequestAnimDict(dict)
- Wait(10)
- end
+ if not DoesAnimDictExist(dict) then
+ return false
+ end
+
+ while not HasAnimDictLoaded(dict) do
+ RequestAnimDict(dict)
+ Wait(10)
+ end
+
+ return true
end
function LoadPropDict(model)
- while not HasModelLoaded(GetHashKey(model)) do
- RequestModel(GetHashKey(model))
- Wait(10)
- end
+ while not HasModelLoaded(GetHashKey(model)) do
+ RequestModel(GetHashKey(model))
+ Wait(10)
+ end
end
function PtfxThis(asset)
- while not HasNamedPtfxAssetLoaded(asset) do
- RequestNamedPtfxAsset(asset)
- Wait(10)
- end
- UseParticleFxAssetNextCall(asset)
+ while not HasNamedPtfxAssetLoaded(asset) do
+ RequestNamedPtfxAsset(asset)
+ Wait(10)
+ end
+ UseParticleFxAssetNextCall(asset)
end
function DestroyAllProps()
- for _,v in pairs(PlayerProps) do
- DeleteEntity(v)
- end
- PlayerHasProp = false
- DebugPrint("Destroyed Props")
+ for _, v in pairs(PlayerProps) do
+ DeleteEntity(v)
+ end
+ PlayerHasProp = false
+ DebugPrint("Destroyed Props")
end
function AddPropToPlayer(prop1, bone, off1, off2, off3, rot1, rot2, rot3)
- local Player = PlayerPedId()
- local x,y,z = table.unpack(GetEntityCoords(Player))
+ local Player = PlayerPedId()
+ local x, y, z = table.unpack(GetEntityCoords(Player))
- if not HasModelLoaded(prop1) then
- LoadPropDict(prop1)
- end
+ if not HasModelLoaded(prop1) then
+ LoadPropDict(prop1)
+ end
- prop = CreateObject(GetHashKey(prop1), x, y, z+0.2, true, true, true)
- AttachEntityToEntity(prop, Player, GetPedBoneIndex(Player, bone), off1, off2, off3, rot1, rot2, rot3, true, true, false, true, 1, true)
- table.insert(PlayerProps, prop)
- PlayerHasProp = true
- SetModelAsNoLongerNeeded(prop1)
+ prop = CreateObject(GetHashKey(prop1), x, y, z + 0.2, true, true, true)
+ AttachEntityToEntity(prop, Player, GetPedBoneIndex(Player, bone), off1, off2, off3, rot1, rot2, rot3, true, true, false, true, 1, true)
+ table.insert(PlayerProps, prop)
+ PlayerHasProp = true
+ SetModelAsNoLongerNeeded(prop1)
end
-----------------------------------------------------------------------------------------------------
@@ -271,15 +293,15 @@ end
-----------------------------------------------------------------------------------------------------
function CheckGender()
- local hashSkinMale = GetHashKey("mp_m_freemode_01")
- local hashSkinFemale = GetHashKey("mp_f_freemode_01")
+ local hashSkinMale = GetHashKey("mp_m_freemode_01")
+ local hashSkinFemale = GetHashKey("mp_f_freemode_01")
- if GetEntityModel(PlayerPedId()) == hashSkinMale then
- PlayerGender = "male"
- elseif GetEntityModel(PlayerPedId()) == hashSkinFemale then
- PlayerGender = "female"
- end
- DebugPrint("Set gender as = ("..PlayerGender..")")
+ if GetEntityModel(PlayerPedId()) == hashSkinMale then
+ PlayerGender = "male"
+ elseif GetEntityModel(PlayerPedId()) == hashSkinFemale then
+ PlayerGender = "female"
+ end
+ DebugPrint("Set gender as = (" .. PlayerGender .. ")")
end
-----------------------------------------------------------------------------------------------------
@@ -287,139 +309,143 @@ end
-----------------------------------------------------------------------------------------------------
function OnEmotePlay(EmoteName)
-
- InVehicle = IsPedInAnyVehicle(PlayerPedId(), true)
- if not Config.AllowedInCars and InVehicle == 1 then
- return
- end
-
- if not DoesEntityExist(GetPlayerPed(-1)) then
- return false
- end
-
- if Config.DisarmPlayer then
- if IsPedArmed(GetPlayerPed(-1), 7) then
- SetCurrentPedWeapon(GetPlayerPed(-1), GetHashKey('WEAPON_UNARMED'), true)
+ InVehicle = IsPedInAnyVehicle(PlayerPedId(), true)
+ if not Config.AllowedInCars and InVehicle == 1 then
+ return
end
- end
- ChosenDict,ChosenAnimation,ename = table.unpack(EmoteName)
- AnimationDuration = -1
+ if not DoesEntityExist(PlayerPedId()) then
+ return false
+ end
- if PlayerHasProp then
- DestroyAllProps()
- end
+ if Config.DisarmPlayer then
+ if IsPedArmed(PlayerPedId(), 7) then
+ SetCurrentPedWeapon(PlayerPedId(), GetHashKey('WEAPON_UNARMED'), true)
+ end
+ end
- if ChosenDict == "Expression" then
- SetFacialIdleAnimOverride(PlayerPedId(), ChosenAnimation, 0)
- return
- end
+ ChosenDict, ChosenAnimation, ename = table.unpack(EmoteName)
+ AnimationDuration = -1
- if ChosenDict == "MaleScenario" or "Scenario" then
- CheckGender()
- if ChosenDict == "MaleScenario" then if InVehicle then return end
- if PlayerGender == "male" then
- ClearPedTasks(GetPlayerPed(-1))
- TaskStartScenarioInPlace(GetPlayerPed(-1), ChosenAnimation, 0, true)
- DebugPrint("Playing scenario = ("..ChosenAnimation..")")
- IsInAnimation = true
- else
- EmoteChatMessage(Config.Languages[lang]['maleonly'])
- end return
- elseif ChosenDict == "ScenarioObject" then if InVehicle then return end
- BehindPlayer = GetOffsetFromEntityInWorldCoords(PlayerPedId(), 0.0, 0 - 0.5, -0.5);
- ClearPedTasks(GetPlayerPed(-1))
- TaskStartScenarioAtPosition(GetPlayerPed(-1), ChosenAnimation, BehindPlayer['x'], BehindPlayer['y'], BehindPlayer['z'], GetEntityHeading(PlayerPedId()), 0, 1, false)
- DebugPrint("Playing scenario = ("..ChosenAnimation..")")
- IsInAnimation = true
- return
- elseif ChosenDict == "Scenario" then if InVehicle then return end
- ClearPedTasks(GetPlayerPed(-1))
- TaskStartScenarioInPlace(GetPlayerPed(-1), ChosenAnimation, 0, true)
- DebugPrint("Playing scenario = ("..ChosenAnimation..")")
- IsInAnimation = true
- return end
- end
+ if PlayerHasProp then
+ DestroyAllProps()
+ end
- LoadAnim(ChosenDict)
+ if ChosenDict == "Expression" then
+ SetFacialIdleAnimOverride(PlayerPedId(), ChosenAnimation, 0)
+ return
+ end
- if EmoteName.AnimationOptions then
- if EmoteName.AnimationOptions.EmoteLoop then
- MovementType = 1
- if EmoteName.AnimationOptions.EmoteMoving then
- MovementType = 51
- end
+ if ChosenDict == "MaleScenario" or "Scenario" then
+ CheckGender()
+ if ChosenDict == "MaleScenario" then if InVehicle then return end
+ if PlayerGender == "male" then
+ ClearPedTasks(PlayerPedId())
+ TaskStartScenarioInPlace(PlayerPedId(), ChosenAnimation, 0, true)
+ DebugPrint("Playing scenario = (" .. ChosenAnimation .. ")")
+ IsInAnimation = true
+ else
+ EmoteChatMessage(Config.Languages[lang]['maleonly'])
+ end
+ return
+ elseif ChosenDict == "ScenarioObject" then if InVehicle then return end
+ BehindPlayer = GetOffsetFromEntityInWorldCoords(PlayerPedId(), 0.0, 0 - 0.5, -0.5);
+ ClearPedTasks(PlayerPedId())
+ TaskStartScenarioAtPosition(PlayerPedId(), ChosenAnimation, BehindPlayer['x'], BehindPlayer['y'], BehindPlayer['z'], GetEntityHeading(PlayerPedId()), 0, 1, false)
+ DebugPrint("Playing scenario = (" .. ChosenAnimation .. ")")
+ IsInAnimation = true
+ return
+ elseif ChosenDict == "Scenario" then if InVehicle then return end
+ ClearPedTasks(PlayerPedId())
+ TaskStartScenarioInPlace(PlayerPedId(), ChosenAnimation, 0, true)
+ DebugPrint("Playing scenario = (" .. ChosenAnimation .. ")")
+ IsInAnimation = true
+ return
+ end
+ end
- elseif EmoteName.AnimationOptions.EmoteMoving then
- MovementType = 51
- elseif EmoteName.AnimationOptions.EmoteMoving == false then
- MovementType = 0
- elseif EmoteName.AnimationOptions.EmoteStuck then
- MovementType = 50
- end
+ if not LoadAnim(ChosenDict) then
+ EmoteChatMessage("'" .. ename .. "' " .. Config.Languages[lang]['notvalidemote'] .. "")
+ return
+ end
- else
- MovementType = 0
- end
+ if EmoteName.AnimationOptions then
+ if EmoteName.AnimationOptions.EmoteLoop then
+ MovementType = 1
+ if EmoteName.AnimationOptions.EmoteMoving then
+ MovementType = 51
+ end
- if InVehicle == 1 then
- MovementType = 51
- end
+ elseif EmoteName.AnimationOptions.EmoteMoving then
+ MovementType = 51
+ elseif EmoteName.AnimationOptions.EmoteMoving == false then
+ MovementType = 0
+ elseif EmoteName.AnimationOptions.EmoteStuck then
+ MovementType = 50
+ end
- if EmoteName.AnimationOptions then
- if EmoteName.AnimationOptions.EmoteDuration == nil then
- EmoteName.AnimationOptions.EmoteDuration = -1
- AttachWait = 0
else
- AnimationDuration = EmoteName.AnimationOptions.EmoteDuration
- AttachWait = EmoteName.AnimationOptions.EmoteDuration
+ MovementType = 0
end
- if EmoteName.AnimationOptions.PtfxAsset then
- PtfxAsset = EmoteName.AnimationOptions.PtfxAsset
- PtfxName = EmoteName.AnimationOptions.PtfxName
- if EmoteName.AnimationOptions.PtfxNoProp then
- PtfxNoProp = EmoteName.AnimationOptions.PtfxNoProp
- else
- PtfxNoProp = false
- end
- Ptfx1, Ptfx2, Ptfx3, Ptfx4, Ptfx5, Ptfx6, PtfxScale = table.unpack(EmoteName.AnimationOptions.PtfxPlacement)
- PtfxInfo = EmoteName.AnimationOptions.PtfxInfo
- PtfxWait = EmoteName.AnimationOptions.PtfxWait
- PtfxNotif = false
- PtfxPrompt = true
- PtfxThis(PtfxAsset)
- else
- DebugPrint("Ptfx = none")
- PtfxPrompt = false
+ if InVehicle == 1 then
+ MovementType = 51
end
- end
- TaskPlayAnim(GetPlayerPed(-1), ChosenDict, ChosenAnimation, 2.0, 2.0, AnimationDuration, MovementType, 0, false, false, false)
- RemoveAnimDict(ChosenDict)
- IsInAnimation = true
- MostRecentDict = ChosenDict
- MostRecentAnimation = ChosenAnimation
-
- if EmoteName.AnimationOptions then
- if EmoteName.AnimationOptions.Prop then
- PropName = EmoteName.AnimationOptions.Prop
- PropBone = EmoteName.AnimationOptions.PropBone
- PropPl1, PropPl2, PropPl3, PropPl4, PropPl5, PropPl6 = table.unpack(EmoteName.AnimationOptions.PropPlacement)
- if EmoteName.AnimationOptions.SecondProp then
- SecondPropName = EmoteName.AnimationOptions.SecondProp
- SecondPropBone = EmoteName.AnimationOptions.SecondPropBone
- SecondPropPl1, SecondPropPl2, SecondPropPl3, SecondPropPl4, SecondPropPl5, SecondPropPl6 = table.unpack(EmoteName.AnimationOptions.SecondPropPlacement)
- SecondPropEmote = true
+ if EmoteName.AnimationOptions then
+ if EmoteName.AnimationOptions.EmoteDuration == nil then
+ EmoteName.AnimationOptions.EmoteDuration = -1
+ AttachWait = 0
else
- SecondPropEmote = false
+ AnimationDuration = EmoteName.AnimationOptions.EmoteDuration
+ AttachWait = EmoteName.AnimationOptions.EmoteDuration
end
- Wait(AttachWait)
- AddPropToPlayer(PropName, PropBone, PropPl1, PropPl2, PropPl3, PropPl4, PropPl5, PropPl6)
- if SecondPropEmote then
- AddPropToPlayer(SecondPropName, SecondPropBone, SecondPropPl1, SecondPropPl2, SecondPropPl3, SecondPropPl4, SecondPropPl5, SecondPropPl6)
+
+ if EmoteName.AnimationOptions.PtfxAsset then
+ PtfxAsset = EmoteName.AnimationOptions.PtfxAsset
+ PtfxName = EmoteName.AnimationOptions.PtfxName
+ if EmoteName.AnimationOptions.PtfxNoProp then
+ PtfxNoProp = EmoteName.AnimationOptions.PtfxNoProp
+ else
+ PtfxNoProp = false
+ end
+ Ptfx1, Ptfx2, Ptfx3, Ptfx4, Ptfx5, Ptfx6, PtfxScale = table.unpack(EmoteName.AnimationOptions.PtfxPlacement)
+ PtfxInfo = EmoteName.AnimationOptions.PtfxInfo
+ PtfxWait = EmoteName.AnimationOptions.PtfxWait
+ PtfxNotif = false
+ PtfxPrompt = true
+ PtfxThis(PtfxAsset)
+ else
+ DebugPrint("Ptfx = none")
+ PtfxPrompt = false
end
end
- end
- return true
-end
\ No newline at end of file
+
+ TaskPlayAnim(PlayerPedId(), ChosenDict, ChosenAnimation, 2.0, 2.0, AnimationDuration, MovementType, 0, false, false, false)
+ RemoveAnimDict(ChosenDict)
+ IsInAnimation = true
+ MostRecentDict = ChosenDict
+ MostRecentAnimation = ChosenAnimation
+
+ if EmoteName.AnimationOptions then
+ if EmoteName.AnimationOptions.Prop then
+ PropName = EmoteName.AnimationOptions.Prop
+ PropBone = EmoteName.AnimationOptions.PropBone
+ PropPl1, PropPl2, PropPl3, PropPl4, PropPl5, PropPl6 = table.unpack(EmoteName.AnimationOptions.PropPlacement)
+ if EmoteName.AnimationOptions.SecondProp then
+ SecondPropName = EmoteName.AnimationOptions.SecondProp
+ SecondPropBone = EmoteName.AnimationOptions.SecondPropBone
+ SecondPropPl1, SecondPropPl2, SecondPropPl3, SecondPropPl4, SecondPropPl5, SecondPropPl6 = table.unpack(EmoteName.AnimationOptions.SecondPropPlacement)
+ SecondPropEmote = true
+ else
+ SecondPropEmote = false
+ end
+ Wait(AttachWait)
+ AddPropToPlayer(PropName, PropBone, PropPl1, PropPl2, PropPl3, PropPl4, PropPl5, PropPl6)
+ if SecondPropEmote then
+ AddPropToPlayer(SecondPropName, SecondPropBone, SecondPropPl1, SecondPropPl2, SecondPropPl3, SecondPropPl4, SecondPropPl5, SecondPropPl6)
+ end
+ end
+ end
+ return true
+end
diff --git a/resources/EmoteMenu/Client/EmoteMenu.lua b/resources/EmoteMenu/Client/EmoteMenu.lua
index aaac4654a..60db2f540 100644
--- a/resources/EmoteMenu/Client/EmoteMenu.lua
+++ b/resources/EmoteMenu/Client/EmoteMenu.lua
@@ -1,30 +1,30 @@
TriggerServerEvent("dp:CheckVersion")
-rightPosition = {x = 1450, y = 100}
-leftPosition = {x = 0, y = 100}
-menuPosition = {x = 0, y = 200}
+rightPosition = { x = 1450, y = 100 }
+leftPosition = { x = 0, y = 100 }
+menuPosition = { x = 0, y = 200 }
if Config.MenuPosition then
- if Config.MenuPosition == "left" then
- menuPosition = leftPosition
- elseif Config.MenuPosition == "right" then
- menuPosition = rightPosition
- end
+ if Config.MenuPosition == "left" then
+ menuPosition = leftPosition
+ elseif Config.MenuPosition == "right" then
+ menuPosition = rightPosition
+ end
end
if Config.CustomMenuEnabled then
- local RuntimeTXD = CreateRuntimeTxd('Custom_Menu_Head')
- local Object = CreateDui(Config.MenuImage, 512, 128)
- _G.Object = Object
- local TextureThing = GetDuiHandle(Object)
- local Texture = CreateRuntimeTextureFromDuiHandle(RuntimeTXD, 'Custom_Menu_Head', TextureThing)
- Menuthing = "Custom_Menu_Head"
+ local RuntimeTXD = CreateRuntimeTxd('Custom_Menu_Head')
+ local Object = CreateDui(Config.MenuImage, 512, 128)
+ _G.Object = Object
+ local TextureThing = GetDuiHandle(Object)
+ local Texture = CreateRuntimeTextureFromDuiHandle(RuntimeTXD, 'Custom_Menu_Head', TextureThing)
+ Menuthing = "Custom_Menu_Head"
else
- Menuthing = "shopui_title_sm_hangar"
+ Menuthing = "shopui_title_sm_hangar"
end
_menuPool = NativeUI.CreatePool()
-mainMenu = NativeUI.CreateMenu("dp Emotes", "", menuPosition["x"], menuPosition["y"], Menuthing, Menuthing)
+mainMenu = NativeUI.CreateMenu("", "", menuPosition["x"], menuPosition["y"], Menuthing, Menuthing)
_menuPool:Add(mainMenu)
function ShowNotification(text)
@@ -37,159 +37,174 @@ local EmoteTable = {}
local FavEmoteTable = {}
local KeyEmoteTable = {}
local DanceTable = {}
+local AnimalTable = {}
local PropETable = {}
local WalkTable = {}
local FaceTable = {}
local ShareTable = {}
local FavoriteEmote = ""
-Citizen.CreateThread(function()
- while true do
- if Config.FavKeybindEnabled then
- if IsControlPressed(0, Config.FavKeybind) then
- if not IsPedSittingInAnyVehicle(PlayerPedId()) then
- if FavoriteEmote ~= "" then
- EmoteCommandStart(nil,{FavoriteEmote, 0})
- Wait(3000)
- end
+if Config.FavKeybindEnabled then
+ Citizen.CreateThread(function()
+ while true do
+ if IsControlPressed(0, Config.FavKeybind) then
+ if not IsPedSittingInAnyVehicle(PlayerPedId()) then
+ if FavoriteEmote ~= "" then
+ EmoteCommandStart(nil, { FavoriteEmote, 0 })
+ Wait(3000)
+ end
+ end
+ end
+ Citizen.Wait(1)
end
- end
- end
- Citizen.Wait(1)
- end
-end)
+ end)
+end
lang = Config.MenuLanguage
function AddEmoteMenu(menu)
local submenu = _menuPool:AddSubMenu(menu, Config.Languages[lang]['emotes'], "", "", Menuthing, Menuthing)
local dancemenu = _menuPool:AddSubMenu(submenu, Config.Languages[lang]['danceemotes'], "", "", Menuthing, Menuthing)
+ local animalmenu = _menuPool:AddSubMenu(submenu, Config.Languages[lang]['animalemotes'], "", "", Menuthing, Menuthing)
local propmenu = _menuPool:AddSubMenu(submenu, Config.Languages[lang]['propemotes'], "", "", Menuthing, Menuthing)
table.insert(EmoteTable, Config.Languages[lang]['danceemotes'])
table.insert(EmoteTable, Config.Languages[lang]['danceemotes'])
+ table.insert(EmoteTable, Config.Languages[lang]['animalemotes'])
if Config.SharedEmotesEnabled then
- sharemenu = _menuPool:AddSubMenu(submenu, Config.Languages[lang]['shareemotes'], Config.Languages[lang]['shareemotesinfo'], "", Menuthing, Menuthing)
- shareddancemenu = _menuPool:AddSubMenu(sharemenu, Config.Languages[lang]['sharedanceemotes'], "", "", Menuthing, Menuthing)
- table.insert(ShareTable, 'none')
- table.insert(EmoteTable, Config.Languages[lang]['shareemotes'])
+ sharemenu = _menuPool:AddSubMenu(submenu, Config.Languages[lang]['shareemotes'], Config.Languages[lang]['shareemotesinfo'], "", Menuthing, Menuthing)
+ shareddancemenu = _menuPool:AddSubMenu(sharemenu, Config.Languages[lang]['sharedanceemotes'], "", "", Menuthing, Menuthing)
+ table.insert(ShareTable, 'none')
+ table.insert(EmoteTable, Config.Languages[lang]['shareemotes'])
end
if not Config.SqlKeybinding then
- unbind2item = NativeUI.CreateItem(Config.Languages[lang]['rfavorite'], Config.Languages[lang]['rfavorite'])
- unbinditem = NativeUI.CreateItem(Config.Languages[lang]['prop2info'], "")
- favmenu = _menuPool:AddSubMenu(submenu, Config.Languages[lang]['favoriteemotes'], Config.Languages[lang]['favoriteinfo'], "", Menuthing, Menuthing)
- favmenu:AddItem(unbinditem)
- favmenu:AddItem(unbind2item)
- table.insert(FavEmoteTable, Config.Languages[lang]['rfavorite'])
- table.insert(FavEmoteTable, Config.Languages[lang]['rfavorite'])
- table.insert(EmoteTable, Config.Languages[lang]['favoriteemotes'])
+ unbind2item = NativeUI.CreateItem(Config.Languages[lang]['rfavorite'], Config.Languages[lang]['rfavorite'])
+ unbinditem = NativeUI.CreateItem(Config.Languages[lang]['prop2info'], "")
+ favmenu = _menuPool:AddSubMenu(submenu, Config.Languages[lang]['favoriteemotes'], Config.Languages[lang]['favoriteinfo'], "", Menuthing, Menuthing)
+ favmenu:AddItem(unbinditem)
+ favmenu:AddItem(unbind2item)
+ table.insert(FavEmoteTable, Config.Languages[lang]['rfavorite'])
+ table.insert(FavEmoteTable, Config.Languages[lang]['rfavorite'])
+ table.insert(EmoteTable, Config.Languages[lang]['favoriteemotes'])
else
- table.insert(EmoteTable, "keybinds")
- keyinfo = NativeUI.CreateItem(Config.Languages[lang]['keybinds'], Config.Languages[lang]['keybindsinfo'].." /emotebind [~y~num4-9~w~] [~g~emotename~w~]")
- submenu:AddItem(keyinfo)
+ table.insert(EmoteTable, "keybinds")
+ keyinfo = NativeUI.CreateItem(Config.Languages[lang]['keybinds'], Config.Languages[lang]['keybindsinfo'] .. " /emotebind [~y~num4-9~w~] [~g~emotename~w~]")
+ submenu:AddItem(keyinfo)
end
- for a,b in pairsByKeys(DP.Emotes) do
- x,y,z = table.unpack(b)
- emoteitem = NativeUI.CreateItem(z, "/e ("..a..")")
- submenu:AddItem(emoteitem)
- table.insert(EmoteTable, a)
- if not Config.SqlKeybinding then
- favemoteitem = NativeUI.CreateItem(z, Config.Languages[lang]['set']..z..Config.Languages[lang]['setboundemote'])
- favmenu:AddItem(favemoteitem)
- table.insert(FavEmoteTable, a)
- end
+ for a, b in pairsByKeys(DP.Emotes) do
+ x, y, z = table.unpack(b)
+ emoteitem = NativeUI.CreateItem(z, "/e (" .. a .. ")")
+ submenu:AddItem(emoteitem)
+ table.insert(EmoteTable, a)
+ if not Config.SqlKeybinding then
+ favemoteitem = NativeUI.CreateItem(z, Config.Languages[lang]['set'] .. z .. Config.Languages[lang]['setboundemote'])
+ favmenu:AddItem(favemoteitem)
+ table.insert(FavEmoteTable, a)
+ end
end
- for a,b in pairsByKeys(DP.Dances) do
- x,y,z = table.unpack(b)
- danceitem = NativeUI.CreateItem(z, "/e ("..a..")")
- sharedanceitem = NativeUI.CreateItem(z, "")
- dancemenu:AddItem(danceitem)
- if Config.SharedEmotesEnabled then
- shareddancemenu:AddItem(sharedanceitem)
- end
- table.insert(DanceTable, a)
+ for a, b in pairsByKeys(DP.Dances) do
+ x, y, z = table.unpack(b)
+ danceitem = NativeUI.CreateItem(z, "/e (" .. a .. ")")
+ sharedanceitem = NativeUI.CreateItem(z, "")
+ dancemenu:AddItem(danceitem)
+ if Config.SharedEmotesEnabled then
+ shareddancemenu:AddItem(sharedanceitem)
+ end
+ table.insert(DanceTable, a)
+ end
+
+ for a, b in pairsByKeys(DP.AnimalEmotes) do
+ x, y, z = table.unpack(b)
+ animalitem = NativeUI.CreateItem(z, "/e (" .. a .. ")")
+ animalmenu:AddItem(animalitem)
+ table.insert(AnimalTable, a)
end
if Config.SharedEmotesEnabled then
- for a,b in pairsByKeys(DP.Shared) do
- x,y,z,otheremotename = table.unpack(b)
- if otheremotename == nil then
- shareitem = NativeUI.CreateItem(z, "/nearby (~g~"..a.."~w~)")
- else
- shareitem = NativeUI.CreateItem(z, "/nearby (~g~"..a.."~w~) "..Config.Languages[lang]['makenearby'].." (~y~"..otheremotename.."~w~)")
+ for a, b in pairsByKeys(DP.Shared) do
+ x, y, z, otheremotename = table.unpack(b)
+ if otheremotename == nil then
+ shareitem = NativeUI.CreateItem(z, "/nearby (~g~" .. a .. "~w~)")
+ else
+ shareitem = NativeUI.CreateItem(z, "/nearby (~g~" .. a .. "~w~) " .. Config.Languages[lang]['makenearby'] .. " (~y~" .. otheremotename .. "~w~)")
+ end
+ sharemenu:AddItem(shareitem)
+ table.insert(ShareTable, a)
end
- sharemenu:AddItem(shareitem)
- table.insert(ShareTable, a)
- end
end
- for a,b in pairsByKeys(DP.PropEmotes) do
- x,y,z = table.unpack(b)
- propitem = NativeUI.CreateItem(z, "/e ("..a..")")
- propmenu:AddItem(propitem)
- table.insert(PropETable, a)
- if not Config.SqlKeybinding then
- propfavitem = NativeUI.CreateItem(z, Config.Languages[lang]['set']..z..Config.Languages[lang]['setboundemote'])
- favmenu:AddItem(propfavitem)
- table.insert(FavEmoteTable, a)
- end
+ for a, b in pairsByKeys(DP.PropEmotes) do
+ x, y, z = table.unpack(b)
+ propitem = NativeUI.CreateItem(z, "/e (" .. a .. ")")
+ propmenu:AddItem(propitem)
+ table.insert(PropETable, a)
+ if not Config.SqlKeybinding then
+ propfavitem = NativeUI.CreateItem(z, Config.Languages[lang]['set'] .. z .. Config.Languages[lang]['setboundemote'])
+ favmenu:AddItem(propfavitem)
+ table.insert(FavEmoteTable, a)
+ end
end
if not Config.SqlKeybinding then
- favmenu.OnItemSelect = function(sender, item, index)
- if FavEmoteTable[index] == Config.Languages[lang]['rfavorite'] then
- FavoriteEmote = ""
- ShowNotification(Config.Languages[lang]['rfavorite'], 2000)
- return end
- if Config.FavKeybindEnabled then
- FavoriteEmote = FavEmoteTable[index]
- ShowNotification("~o~"..firstToUpper(FavoriteEmote)..Config.Languages[lang]['newsetemote'])
+ favmenu.OnItemSelect = function(sender, item, index)
+ if FavEmoteTable[index] == Config.Languages[lang]['rfavorite'] then
+ FavoriteEmote = ""
+ ShowNotification(Config.Languages[lang]['rfavorite'], 2000)
+ return
+ end
+ if Config.FavKeybindEnabled then
+ FavoriteEmote = FavEmoteTable[index]
+ ShowNotification("~o~" .. firstToUpper(FavoriteEmote) .. Config.Languages[lang]['newsetemote'])
+ end
end
- end
end
dancemenu.OnItemSelect = function(sender, item, index)
- EmoteMenuStart(DanceTable[index], "dances")
+ EmoteMenuStart(DanceTable[index], "dances")
+ end
+
+ animalmenu.OnItemSelect = function(sender, item, index)
+ EmoteMenuStart(AnimalTable[index], "animals")
end
if Config.SharedEmotesEnabled then
- sharemenu.OnItemSelect = function(sender, item, index)
- if ShareTable[index] ~= 'none' then
- target, distance = GetClosestPlayer()
- if(distance ~= -1 and distance < 3) then
- _,_,rename = table.unpack(DP.Shared[ShareTable[index]])
- TriggerServerEvent("ServerEmoteRequest", GetPlayerServerId(target), ShareTable[index])
- SimpleNotify(Config.Languages[lang]['sentrequestto']..GetPlayerName(target))
- else
- SimpleNotify(Config.Languages[lang]['nobodyclose'])
- end
+ sharemenu.OnItemSelect = function(sender, item, index)
+ if ShareTable[index] ~= 'none' then
+ target, distance = GetClosestPlayer()
+ if (distance ~= -1 and distance < 3) then
+ _, _, rename = table.unpack(DP.Shared[ShareTable[index]])
+ TriggerServerEvent("ServerEmoteRequest", GetPlayerServerId(target), ShareTable[index])
+ SimpleNotify(Config.Languages[lang]['sentrequestto'] .. GetPlayerName(target))
+ else
+ SimpleNotify(Config.Languages[lang]['nobodyclose'])
+ end
+ end
end
- end
- shareddancemenu.OnItemSelect = function(sender, item, index)
- target, distance = GetClosestPlayer()
- if(distance ~= -1 and distance < 3) then
- _,_,rename = table.unpack(DP.Dances[DanceTable[index]])
- TriggerServerEvent("ServerEmoteRequest", GetPlayerServerId(target), DanceTable[index], 'Dances')
- SimpleNotify(Config.Languages[lang]['sentrequestto']..GetPlayerName(target))
- else
- SimpleNotify(Config.Languages[lang]['nobodyclose'])
+ shareddancemenu.OnItemSelect = function(sender, item, index)
+ target, distance = GetClosestPlayer()
+ if (distance ~= -1 and distance < 3) then
+ _, _, rename = table.unpack(DP.Dances[DanceTable[index]])
+ TriggerServerEvent("ServerEmoteRequest", GetPlayerServerId(target), DanceTable[index], 'Dances')
+ SimpleNotify(Config.Languages[lang]['sentrequestto'] .. GetPlayerName(target))
+ else
+ SimpleNotify(Config.Languages[lang]['nobodyclose'])
+ end
end
- end
end
propmenu.OnItemSelect = function(sender, item, index)
- EmoteMenuStart(PropETable[index], "props")
+ EmoteMenuStart(PropETable[index], "props")
end
submenu.OnItemSelect = function(sender, item, index)
- if EmoteTable[index] ~= Config.Languages[lang]['favoriteemotes'] then
- EmoteMenuStart(EmoteTable[index], "emotes")
+ if EmoteTable[index] ~= Config.Languages[lang]['favoriteemotes'] then
+ EmoteMenuStart(EmoteTable[index], "emotes")
+ end
end
- end
end
function AddCancelEmote(menu)
@@ -197,8 +212,8 @@ function AddCancelEmote(menu)
menu:AddItem(newitem)
menu.OnItemSelect = function(sender, item, checked_)
if item == newitem then
- EmoteCancel()
- DestroyAllProps()
+ EmoteCancel()
+ DestroyAllProps()
end
end
end
@@ -214,19 +229,19 @@ function AddWalkMenu(menu)
submenu:AddItem(WalkInjured)
table.insert(WalkTable, "move_m@injured")
- for a,b in pairsByKeys(DP.Walks) do
- x = table.unpack(b)
- walkitem = NativeUI.CreateItem(a, "")
- submenu:AddItem(walkitem)
- table.insert(WalkTable, x)
+ for a, b in pairsByKeys(DP.Walks) do
+ x = table.unpack(b)
+ walkitem = NativeUI.CreateItem(a, "")
+ submenu:AddItem(walkitem)
+ table.insert(WalkTable, x)
end
submenu.OnItemSelect = function(sender, item, index)
- if item ~= walkreset then
- WalkMenuStart(WalkTable[index])
- else
- ResetPedMovementClipset(PlayerPedId())
- end
+ if item ~= walkreset then
+ WalkMenuStart(WalkTable[index])
+ else
+ ResetPedMovementClipset(PlayerPedId())
+ end
end
end
@@ -237,34 +252,34 @@ function AddFaceMenu(menu)
submenu:AddItem(facereset)
table.insert(FaceTable, "")
- for a,b in pairsByKeys(DP.Expressions) do
- x,y,z = table.unpack(b)
- faceitem = NativeUI.CreateItem(a, "")
- submenu:AddItem(faceitem)
- table.insert(FaceTable, a)
+ for a, b in pairsByKeys(DP.Expressions) do
+ x, y, z = table.unpack(b)
+ faceitem = NativeUI.CreateItem(a, "")
+ submenu:AddItem(faceitem)
+ table.insert(FaceTable, a)
end
submenu.OnItemSelect = function(sender, item, index)
- if item ~= facereset then
- EmoteMenuStart(FaceTable[index], "expression")
- else
- ClearFacialIdleAnimOverride(PlayerPedId())
- end
+ if item ~= facereset then
+ EmoteMenuStart(FaceTable[index], "expression")
+ else
+ ClearFacialIdleAnimOverride(PlayerPedId())
+ end
end
end
function AddInfoMenu(menu)
if not UpdateAvailable then
- infomenu = _menuPool:AddSubMenu(menu, Config.Languages[lang]['infoupdate'], "(1.7.3)", "", Menuthing, Menuthing)
+ infomenu = _menuPool:AddSubMenu(menu, Config.Languages[lang]['infoupdate'], "Huge Thank You ❤️", "", Menuthing, Menuthing)
else
- infomenu = _menuPool:AddSubMenu(menu, Config.Languages[lang]['infoupdateav'], Config.Languages[lang]['infoupdateavtext'], "", Menuthing, Menuthing)
+ infomenu = _menuPool:AddSubMenu(menu, Config.Languages[lang]['infoupdateav'], Config.Languages[lang]['infoupdateavtext'], "", Menuthing, Menuthing)
end
contact = NativeUI.CreateItem(Config.Languages[lang]['suggestions'], Config.Languages[lang]['suggestionsinfo'])
- u170 = NativeUI.CreateItem("1.7.0", "Added /emotebind [key] [emote]!")
- u165 = NativeUI.CreateItem("1.6.5", "Updated camera/phone/pee/beg, added makeitrain/dance(glowstick/horse).")
- u160 = NativeUI.CreateItem("1.6.0", "Added shared emotes /nearby, or in menu, also fixed some emotes!")
- u151 = NativeUI.CreateItem("1.5.1", "Added /walk and /walks, for walking styles without menu")
- u150 = NativeUI.CreateItem("1.5.0", "Added Facial Expressions menu (if enabled by server owner)")
+ u170 = NativeUI.CreateItem("Thanks", "DullPear for the original dpemotes ❤️")
+ u165 = NativeUI.CreateItem("Thanks", "AvaN0x for assisting with the formatting of the code.")
+ u160 = NativeUI.CreateItem("Thanks", "SMGMissy for the custom pride flags 🏳️🌈.")
+ u151 = NativeUI.CreateItem("Thanks", "Kibook for the addition of Animal Emotes 🐩.")
+ u150 = NativeUI.CreateItem("Thanks", "To you, the community for helping me keep this menu alive ❤️.")
infomenu:AddItem(contact)
infomenu:AddItem(u170)
infomenu:AddItem(u165)
@@ -284,10 +299,10 @@ end
AddEmoteMenu(mainMenu)
AddCancelEmote(mainMenu)
if Config.WalkingStylesEnabled then
- AddWalkMenu(mainMenu)
+ AddWalkMenu(mainMenu)
end
if Config.ExpressionsEnabled then
- AddFaceMenu(mainMenu)
+ AddFaceMenu(mainMenu)
end
_menuPool:RefreshIndex()
@@ -308,5 +323,5 @@ end)
RegisterNetEvent("dp:RecieveMenu") -- For opening the emote menu from another resource.
AddEventHandler("dp:RecieveMenu", function()
- OpenEmoteMenu()
-end)
\ No newline at end of file
+ OpenEmoteMenu()
+end)
diff --git a/resources/EmoteMenu/Client/Keybinds.lua b/resources/EmoteMenu/Client/Keybinds.lua
index 137fd343f..2994d60d5 100644
--- a/resources/EmoteMenu/Client/Keybinds.lua
+++ b/resources/EmoteMenu/Client/Keybinds.lua
@@ -1,104 +1,126 @@
if Config.SqlKeybinding then
-local emob1 = ""
-local emob2 = ""
-local emob3 = ""
-local emob4 = ""
-local emob5 = ""
-local emob6 = ""
-local keyb1 = ""
-local keyb2 = ""
-local keyb3 = ""
-local keyb4 = ""
-local keyb5 = ""
-local keyb6 = ""
-local Initialized = false
+ local emob1 = ""
+ local emob2 = ""
+ local emob3 = ""
+ local emob4 = ""
+ local emob5 = ""
+ local emob6 = ""
+ local keyb1 = ""
+ local keyb2 = ""
+ local keyb3 = ""
+ local keyb4 = ""
+ local keyb5 = ""
+ local keyb6 = ""
+ local Initialized = false
------------------------------------------------------------------------------------------------------
--- Commands / Events --------------------------------------------------------------------------------
------------------------------------------------------------------------------------------------------
+ -----------------------------------------------------------------------------------------------------
+ -- Commands / Events --------------------------------------------------------------------------------
+ -----------------------------------------------------------------------------------------------------
-Citizen.CreateThread(function()
- while true do
-
- if NetworkIsPlayerActive(PlayerId()) and not Initialized then
- if not Initialized then
- TriggerServerEvent("dp:ServerKeybindExist")
- Wait(5000)
- end
- end
-
- if not IsPedSittingInAnyVehicle(PlayerPedId()) then
- for k, v in pairs(Config.KeybindKeys) do
- if IsControlJustReleased(0, v) then
- if k == keyb1 then if emob1 ~= "" then EmoteCommandStart(nil,{emob1, 0}) end end
- if k == keyb2 then if emob2 ~= "" then EmoteCommandStart(nil,{emob2, 0}) end end
- if k == keyb3 then if emob3 ~= "" then EmoteCommandStart(nil,{emob3, 0}) end end
- if k == keyb4 then if emob4 ~= "" then EmoteCommandStart(nil,{emob4, 0}) end end
- if k == keyb5 then if emob5 ~= "" then EmoteCommandStart(nil,{emob5, 0}) end end
- if k == keyb6 then if emob6 ~= "" then EmoteCommandStart(nil,{emob6, 0}) end end
- Wait(1000)
+ Citizen.CreateThread(function()
+ while true do
+ if NetworkIsPlayerActive(PlayerId()) and not Initialized then
+ if not Initialized then
+ TriggerServerEvent("dp:ServerKeybindExist")
+ Wait(5000)
+ end
end
+
+ if not IsPedSittingInAnyVehicle(PlayerPedId()) then
+ for k, v in pairs(Config.KeybindKeys) do
+ if IsControlJustReleased(0, v) then
+ if k == keyb1 then if emob1 ~= "" then EmoteCommandStart(nil, { emob1, 0 }) end end
+ if k == keyb2 then if emob2 ~= "" then EmoteCommandStart(nil, { emob2, 0 }) end end
+ if k == keyb3 then if emob3 ~= "" then EmoteCommandStart(nil, { emob3, 0 }) end end
+ if k == keyb4 then if emob4 ~= "" then EmoteCommandStart(nil, { emob4, 0 }) end end
+ if k == keyb5 then if emob5 ~= "" then EmoteCommandStart(nil, { emob5, 0 }) end end
+ if k == keyb6 then if emob6 ~= "" then EmoteCommandStart(nil, { emob6, 0 }) end end
+ Wait(1000)
+ end
+ end
+ end
+ Citizen.Wait(1)
end
- end
- Citizen.Wait(1)
- end
-end)
+ end)
-RegisterNetEvent("dp:ClientKeybindExist")
-AddEventHandler("dp:ClientKeybindExist", function(does)
- if does then
- TriggerServerEvent("dp:ServerKeybindGrab")
- else
- TriggerServerEvent("dp:ServerKeybindCreate")
- end
-end)
-
-RegisterNetEvent("dp:ClientKeybindGet")
-AddEventHandler("dp:ClientKeybindGet", function(k1, e1, k2, e2, k3, e3, k4, e4, k5, e5, k6, e6)
- keyb1 = k1 emob1 = e1 keyb2 = k2 emob2 = e2 keyb3 = k3 emob3 = e3 keyb4 = k4 emob4 = e4 keyb5 = k5 emob5 = e5 keyb6 = k6 emob6 = e6
- Initialized = true
-end)
-
-RegisterNetEvent("dp:ClientKeybindGetOne")
-AddEventHandler("dp:ClientKeybindGetOne", function(key, e)
- SimpleNotify(Config.Languages[lang]['bound'].."~y~"..e.."~w~ "..Config.Languages[lang]['to'].." ~g~"..firstToUpper(key).."~w~")
- if key == "num4" then emob1 = e keyb1 = "num4" elseif key == "num5" then emob2 = e keyb2 = "num5" elseif key == "num6" then emob3 = e keyb3 = "num6" elseif key == "num7" then emob4 = e keyb4 = "num7" elseif key == "num8" then emob5 = e keyb5 = "num8" elseif key == "num9" then emob6 = e keyb6 = "num9" end
-end)
-
------------------------------------------------------------------------------------------------------
------- Functions and stuff --------------------------------------------------------------------------
------------------------------------------------------------------------------------------------------
-
-function EmoteBindsStart()
- EmoteChatMessage(Config.Languages[lang]['currentlyboundemotes'].."\n"
- ..firstToUpper(keyb1).." = '^2"..emob1.."^7'\n"
- ..firstToUpper(keyb2).." = '^2"..emob2.."^7'\n"
- ..firstToUpper(keyb3).." = '^2"..emob3.."^7'\n"
- ..firstToUpper(keyb4).." = '^2"..emob4.."^7'\n"
- ..firstToUpper(keyb5).." = '^2"..emob5.."^7'\n"
- ..firstToUpper(keyb6).." = '^2"..emob6.."^7'\n")
-end
-
-function EmoteBindStart(source, args, raw)
- if #args > 0 then
- local key = string.lower(args[1])
- local emote = string.lower(args[2])
- if (Config.KeybindKeys[key]) ~= nil then
- if DP.Emotes[emote] ~= nil then
- TriggerServerEvent("dp:ServerKeybindUpdate", key, emote)
- elseif DP.Dances[emote] ~= nil then
- TriggerServerEvent("dp:ServerKeybindUpdate", key, emote)
- elseif DP.PropEmotes[emote] ~= nil then
- TriggerServerEvent("dp:ServerKeybindUpdate", key, emote)
- else
- EmoteChatMessage("'"..emote.."' "..Config.Languages[lang]['notvalidemote'].."")
- end
+ RegisterNetEvent("dp:ClientKeybindExist")
+ AddEventHandler("dp:ClientKeybindExist", function(does)
+ if does then
+ TriggerServerEvent("dp:ServerKeybindGrab")
else
- EmoteChatMessage("'"..key.."' "..Config.Languages[lang]['notvalidkey'])
+ TriggerServerEvent("dp:ServerKeybindCreate")
end
- else
- print("invalid")
- end
-end
+ end)
-end
\ No newline at end of file
+ RegisterNetEvent("dp:ClientKeybindGet")
+ AddEventHandler("dp:ClientKeybindGet", function(k1, e1, k2, e2, k3, e3, k4, e4, k5, e5, k6, e6)
+ keyb1 = k1
+ emob1 = e1
+ keyb2 = k2
+ emob2 = e2
+ keyb3 = k3
+ emob3 = e3
+ keyb4 = k4
+ emob4 = e4
+ keyb5 = k5
+ emob5 = e5
+ keyb6 = k6
+ emob6 = e6
+ Initialized = true
+ end)
+
+ RegisterNetEvent("dp:ClientKeybindGetOne")
+ AddEventHandler("dp:ClientKeybindGetOne", function(key, e)
+ SimpleNotify(Config.Languages[lang]['bound'] .. "~y~" .. e .. "~w~ " .. Config.Languages[lang]['to'] .. " ~g~" .. firstToUpper(key) .. "~w~")
+ if key == "num4" then emob1 = e
+ keyb1 = "num4"
+ elseif key == "num5" then emob2 = e
+ keyb2 = "num5"
+ elseif key == "num6" then emob3 = e
+ keyb3 = "num6"
+ elseif key == "num7" then emob4 = e
+ keyb4 = "num7"
+ elseif key == "num8" then emob5 = e
+ keyb5 = "num8"
+ elseif key == "num9" then emob6 = e
+ keyb6 = "num9"
+ end
+ end)
+
+ -----------------------------------------------------------------------------------------------------
+ ------ Functions and stuff --------------------------------------------------------------------------
+ -----------------------------------------------------------------------------------------------------
+
+ function EmoteBindsStart()
+ EmoteChatMessage(Config.Languages[lang]['currentlyboundemotes'] .. "\n"
+ .. firstToUpper(keyb1) .. " = '^2" .. emob1 .. "^7'\n"
+ .. firstToUpper(keyb2) .. " = '^2" .. emob2 .. "^7'\n"
+ .. firstToUpper(keyb3) .. " = '^2" .. emob3 .. "^7'\n"
+ .. firstToUpper(keyb4) .. " = '^2" .. emob4 .. "^7'\n"
+ .. firstToUpper(keyb5) .. " = '^2" .. emob5 .. "^7'\n"
+ .. firstToUpper(keyb6) .. " = '^2" .. emob6 .. "^7'\n")
+ end
+
+ function EmoteBindStart(source, args, raw)
+ if #args > 0 then
+ local key = string.lower(args[1])
+ local emote = string.lower(args[2])
+ if (Config.KeybindKeys[key]) ~= nil then
+ if DP.Emotes[emote] ~= nil then
+ TriggerServerEvent("dp:ServerKeybindUpdate", key, emote)
+ elseif DP.Dances[emote] ~= nil then
+ TriggerServerEvent("dp:ServerKeybindUpdate", key, emote)
+ elseif DP.PropEmotes[emote] ~= nil then
+ TriggerServerEvent("dp:ServerKeybindUpdate", key, emote)
+ else
+ EmoteChatMessage("'" .. emote .. "' " .. Config.Languages[lang]['notvalidemote'] .. "")
+ end
+ else
+ EmoteChatMessage("'" .. key .. "' " .. Config.Languages[lang]['notvalidkey'])
+ end
+ else
+ print("invalid")
+ end
+ end
+
+end
diff --git a/resources/EmoteMenu/Client/Ragdoll.lua b/resources/EmoteMenu/Client/Ragdoll.lua
index 4dcad9600..8352435f2 100644
--- a/resources/EmoteMenu/Client/Ragdoll.lua
+++ b/resources/EmoteMenu/Client/Ragdoll.lua
@@ -1,25 +1,24 @@
local isInRagdoll = false
Citizen.CreateThread(function()
- while true do
- Citizen.Wait(10)
- if isInRagdoll then
- SetPedToRagdoll(GetPlayerPed(-1), 1000, 1000, 0, 0, 0, 0)
+ while true do
+ Citizen.Wait(10)
+ if isInRagdoll then
+ SetPedToRagdoll(PlayerPedId(), 1000, 1000, 0, 0, 0, 0)
+ end
end
- end
end)
Citizen.CreateThread(function()
while true do
- Citizen.Wait(0)
- if IsControlJustPressed(2, Config.RagdollKeybind) and Config.RagdollEnabled and IsPedOnFoot(PlayerPedId()) then
- if isInRagdoll then
- isInRagdoll = false
- else
- isInRagdoll = true
- Wait(500)
+ Citizen.Wait(0)
+ if IsControlJustPressed(2, Config.RagdollKeybind) and Config.RagdollEnabled and IsPedOnFoot(PlayerPedId()) then
+ if isInRagdoll then
+ isInRagdoll = false
+ else
+ isInRagdoll = true
+ Wait(500)
+ end
end
end
- end
end)
-
diff --git a/resources/EmoteMenu/Client/Syncing.lua b/resources/EmoteMenu/Client/Syncing.lua
index b294da97b..f925acd96 100644
--- a/resources/EmoteMenu/Client/Syncing.lua
+++ b/resources/EmoteMenu/Client/Syncing.lua
@@ -1,5 +1,6 @@
local isRequestAnim = false
local requestedemote = ''
+local targetPlayerId = ''
-- Some of the work here was done by Super.Cool.Ninja / rubbertoe98
-- https://forum.fivem.net/t/release-nanimstarget/876709
@@ -12,19 +13,20 @@ if Config.SharedEmotesEnabled then
if #args > 0 then
local emotename = string.lower(args[1])
target, distance = GetClosestPlayer()
- if(distance ~= -1 and distance < 3) then
+ if (distance ~= -1 and distance < 3) then
if DP.Shared[emotename] ~= nil then
dict, anim, ename = table.unpack(DP.Shared[emotename])
TriggerServerEvent("ServerEmoteRequest", GetPlayerServerId(target), emotename)
- SimpleNotify(Config.Languages[lang]['sentrequestto']..GetPlayerName(target).." ~w~(~g~"..ename.."~w~)")
+ SimpleNotify(Config.Languages[lang]['sentrequestto'] ..
+ GetPlayerName(target) .. " ~w~(~g~" .. ename .. "~w~)")
else
- EmoteChatMessage("'"..emotename.."' "..Config.Languages[lang]['notvalidsharedemote'].."")
+ EmoteChatMessage("'" .. emotename .. "' " .. Config.Languages[lang]['notvalidsharedemote'] .. "")
end
else
SimpleNotify(Config.Languages[lang]['nobodyclose'])
end
else
- MearbysOnCommand()
+ MearbysOnCommand()
end
end, false)
end
@@ -33,62 +35,119 @@ RegisterNetEvent("SyncPlayEmote")
AddEventHandler("SyncPlayEmote", function(emote, player)
EmoteCancel()
Wait(300)
+ targetPlayerId = player
-- wait a little to make sure animation shows up right on both clients after canceling any previous emote
if DP.Shared[emote] ~= nil then
- if OnEmotePlay(DP.Shared[emote]) then end return
+ if DP.Shared[emote].AnimationOptions and DP.Shared[emote].AnimationOptions.Attachto then
+ -- We do not want to attach the player if the target emote already is attached to player
+ -- this would cause issue where both player would be attached to each other and fall under the map
+ local targetEmote = DP.Shared[emote][4]
+ if not targetEmote or not DP.Shared[targetEmote] or not DP.Shared[targetEmote].AnimationOptions or
+ not DP.Shared[targetEmote].AnimationOptions.Attachto then
+ local plyServerId = GetPlayerFromServerId(player)
+ local pedInFront = GetPlayerPed(plyServerId ~= 0 and plyServerId or GetClosestPlayer())
+ local bone = DP.Shared[emote].AnimationOptions.bone or 11816 -- SKEL_Pelvis
+ local xPos = DP.Shared[emote].AnimationOptions.xPos or 0.0
+ local yPos = DP.Shared[emote].AnimationOptions.yPos or 0.0
+ local zPos = DP.Shared[emote].AnimationOptions.zPos or 0.0
+ local xRot = DP.Shared[emote].AnimationOptions.xRot or 0.0
+ local yRot = DP.Shared[emote].AnimationOptions.yRot or 0.0
+ local zRot = DP.Shared[emote].AnimationOptions.zRot or 0.0
+ AttachEntityToEntity(PlayerPedId(), pedInFront, bone, xPos, yPos, zPos, xRot, yRot, zRot, false, false,
+ false, false, 2, false)
+ end
+ end
+
+ if OnEmotePlay(DP.Shared[emote]) then end
+ return
elseif DP.Dances[emote] ~= nil then
- if OnEmotePlay(DP.Dances[emote]) then end return
+ if OnEmotePlay(DP.Dances[emote]) then end
+ return
end
end)
RegisterNetEvent("SyncPlayEmoteSource")
AddEventHandler("SyncPlayEmoteSource", function(emote, player)
-- Thx to Poggu for this part!
- local pedInFront = GetPlayerPed(GetClosestPlayer())
+ local ply = PlayerPedId()
+ local plyServerId = GetPlayerFromServerId(player)
+ local pedInFront = GetPlayerPed(plyServerId ~= 0 and plyServerId or GetClosestPlayer())
+
local heading = GetEntityHeading(pedInFront)
local coords = GetOffsetFromEntityInWorldCoords(pedInFront, 0.0, 1.0, 0.0)
- if (DP.Shared[emote]) and (DP.Shared[emote].AnimationOptions) then
- local SyncOffsetFront = DP.Shared[emote].AnimationOptions.SyncOffsetFront
- if SyncOffsetFront then
- coords = GetOffsetFromEntityInWorldCoords(pedInFront, 0.0, SyncOffsetFront, 0.0)
- end
+ if (DP.Shared[emote] and DP.Shared[emote].AnimationOptions) then
+ local SyncOffsetFront = DP.Shared[emote].AnimationOptions.SyncOffsetFront
+ if SyncOffsetFront then
+ coords = GetOffsetFromEntityInWorldCoords(pedInFront, 0.0, SyncOffsetFront, 0.0)
+ end
+
+ -- There is a priority to the source attached, if it is not set, it will use the target
+ if (DP.Shared[emote].AnimationOptions.Attachto) then
+ local bone = DP.Shared[emote].AnimationOptions.bone or 11816 -- SKEL_Pelvis
+ local xPos = DP.Shared[emote].AnimationOptions.xPos or 0.0
+ local yPos = DP.Shared[emote].AnimationOptions.yPos or 0.0
+ local zPos = DP.Shared[emote].AnimationOptions.zPos or 0.0
+ local xRot = DP.Shared[emote].AnimationOptions.xRot or 0.0
+ local yRot = DP.Shared[emote].AnimationOptions.yRot or 0.0
+ local zRot = DP.Shared[emote].AnimationOptions.zRot or 0.0
+ AttachEntityToEntity(ply, pedInFront, bone, xPos, yPos, zPos, xRot, yRot, zRot, false, false, false, false,
+ 2, false)
+ end
end
- SetEntityHeading(PlayerPedId(), heading - 180.1)
- SetEntityCoordsNoOffset(PlayerPedId(), coords.x, coords.y, coords.z, 0)
+ SetEntityHeading(ply, heading - 180.1)
+ SetEntityCoordsNoOffset(ply, coords.x, coords.y, coords.z, 0)
EmoteCancel()
Wait(300)
+ targetPlayerId = player
if DP.Shared[emote] ~= nil then
- if OnEmotePlay(DP.Shared[emote]) then end return
+ if OnEmotePlay(DP.Shared[emote]) then end
+ return
elseif DP.Dances[emote] ~= nil then
- if OnEmotePlay(DP.Dances[emote]) then end return
+ if OnEmotePlay(DP.Dances[emote]) then end
+ return
end
end)
+RegisterNetEvent("SyncCancelEmote")
+AddEventHandler("SyncCancelEmote", function(player)
+ if targetPlayerId and targetPlayerId == player then
+ targetPlayerId = nil
+ EmoteCancel()
+ end
+end)
+
+function CancelSharedEmote(ply)
+ if targetPlayerId then
+ TriggerServerEvent("ServerEmoteCancel", targetPlayerId)
+ targetPlayerId = nil
+ end
+end
+
RegisterNetEvent("ClientEmoteRequestReceive")
AddEventHandler("ClientEmoteRequestReceive", function(emotename, etype)
isRequestAnim = true
requestedemote = emotename
if etype == 'Dances' then
- _,_,remote = table.unpack(DP.Dances[requestedemote])
+ _, _, remote = table.unpack(DP.Dances[requestedemote])
else
- _,_,remote = table.unpack(DP.Shared[requestedemote])
+ _, _, remote = table.unpack(DP.Shared[requestedemote])
end
PlaySound(-1, "NAV", "HUD_AMMO_SHOP_SOUNDSET", 0, 0, 1)
- SimpleNotify(Config.Languages[lang]['doyouwanna']..remote.."~w~)")
+ SimpleNotify(Config.Languages[lang]['doyouwanna'] .. remote .. "~w~)")
end)
Citizen.CreateThread(function()
while true do
Citizen.Wait(5)
if IsControlJustPressed(1, 246) and isRequestAnim then
- target, distance = GetClosestPlayer()
- if(distance ~= -1 and distance < 3) then
+ target, distance = GetClosestPlayer()
+ if (distance ~= -1 and distance < 3) then
if DP.Shared[requestedemote] ~= nil then
- _,_,_,otheremote = table.unpack(DP.Shared[requestedemote])
+ _, _, _, otheremote = table.unpack(DP.Shared[requestedemote])
elseif DP.Dances[requestedemote] ~= nil then
- _,_,_,otheremote = table.unpack(DP.Dances[requestedemote])
+ _, _, _, otheremote = table.unpack(DP.Dances[requestedemote])
end
if otheremote == nil then otheremote = requestedemote end
TriggerServerEvent("ServerValidEmote", GetPlayerServerId(target), requestedemote, otheremote)
@@ -108,7 +167,7 @@ end)
-----------------------------------------------------------------------------------------------------
function GetPlayerFromPed(ped)
- for _,player in ipairs(GetActivePlayers()) do
+ for _, player in ipairs(GetActivePlayers()) do
if GetPlayerPed(player) == ped then
return player
end
@@ -121,39 +180,41 @@ function GetPedInFront()
local plyPed = GetPlayerPed(player)
local plyPos = GetEntityCoords(plyPed, false)
local plyOffset = GetOffsetFromEntityInWorldCoords(plyPed, 0.0, 1.3, 0.0)
- local rayHandle = StartShapeTestCapsule(plyPos.x, plyPos.y, plyPos.z, plyOffset.x, plyOffset.y, plyOffset.z, 10.0, 12, plyPed, 7)
+ local rayHandle = StartShapeTestCapsule(plyPos.x, plyPos.y, plyPos.z, plyOffset.x, plyOffset.y, plyOffset.z, 10.0, 12
+ , plyPed, 7)
local _, _, _, _, ped2 = GetShapeTestResult(rayHandle)
return ped2
end
function MearbysOnCommand(source, args, raw)
- local NearbysCommand = ""
- for a in pairsByKeys(DP.Shared) do
- NearbysCommand = NearbysCommand .. ""..a..", "
- end
- EmoteChatMessage(NearbysCommand)
- EmoteChatMessage(Config.Languages[lang]['emotemenucmd'])
+ local NearbysCommand = ""
+ for a in pairsByKeys(DP.Shared) do
+ NearbysCommand = NearbysCommand .. "" .. a .. ", "
+ end
+ EmoteChatMessage(NearbysCommand)
+ EmoteChatMessage(Config.Languages[lang]['emotemenucmd'])
end
function SimpleNotify(message)
SetNotificationTextEntry("STRING")
AddTextComponentString(message)
- DrawNotification(0,1)
+ DrawNotification(0, 1)
end
function GetClosestPlayer()
local players = GetPlayers()
local closestDistance = -1
local closestPlayer = -1
- local ply = GetPlayerPed(-1)
+ local ply = PlayerPedId()
local plyCoords = GetEntityCoords(ply, 0)
- for index,value in ipairs(players) do
+ for index, value in ipairs(players) do
local target = GetPlayerPed(value)
- if(target ~= ply) then
+ if (target ~= ply) then
local targetCoords = GetEntityCoords(GetPlayerPed(value), 0)
- local distance = GetDistanceBetweenCoords(targetCoords["x"], targetCoords["y"], targetCoords["z"], plyCoords["x"], plyCoords["y"], plyCoords["z"], true)
- if(closestDistance == -1 or closestDistance > distance) then
+ local distance = GetDistanceBetweenCoords(targetCoords["x"], targetCoords["y"], targetCoords["z"],
+ plyCoords["x"], plyCoords["y"], plyCoords["z"], true)
+ if (closestDistance == -1 or closestDistance > distance) then
closestPlayer = value
closestDistance = distance
end
@@ -172,4 +233,4 @@ function GetPlayers()
end
return players
-end
\ No newline at end of file
+end
diff --git a/resources/EmoteMenu/Client/Walk.lua b/resources/EmoteMenu/Client/Walk.lua
index 3436cf844..e5f1e6750 100644
--- a/resources/EmoteMenu/Client/Walk.lua
+++ b/resources/EmoteMenu/Client/Walk.lua
@@ -1,36 +1,41 @@
function WalkMenuStart(name)
- RequestWalking(name)
- SetPedMovementClipset(PlayerPedId(), name, 0.2)
- RemoveAnimSet(name)
+ RequestWalking(name)
+ SetPedMovementClipset(PlayerPedId(), name, 0.2)
+ RemoveAnimSet(name)
end
function RequestWalking(set)
- RequestAnimSet(set)
- while not HasAnimSetLoaded(set) do
- Citizen.Wait(1)
- end
+ RequestAnimSet(set)
+ while not HasAnimSetLoaded(set) do
+ Citizen.Wait(1)
+ end
end
function WalksOnCommand(source, args, raw)
- local WalksCommand = ""
- for a in pairsByKeys(DP.Walks) do
- WalksCommand = WalksCommand .. ""..string.lower(a)..", "
- end
- EmoteChatMessage(WalksCommand)
- EmoteChatMessage("To reset do /walk reset")
+ local WalksCommand = ""
+ for a in pairsByKeys(DP.Walks) do
+ WalksCommand = WalksCommand .. "" .. string.lower(a) .. ", "
+ end
+ EmoteChatMessage(WalksCommand)
+ EmoteChatMessage("To reset do /walk reset")
end
function WalkCommandStart(source, args, raw)
- local name = firstToUpper(args[1])
+ local name = firstToUpper(args[1])
- if name == "Reset" then
- ResetPedMovementClipset(PlayerPedId()) return
- end
+ if name == "Reset" then
+ ResetPedMovementClipset(PlayerPedId())
+ return
+ end
- local name2 = table.unpack(DP.Walks[name])
- if name2 ~= nil then
- WalkMenuStart(name2)
- else
- EmoteChatMessage("'"..name.."' is not a valid walk")
- end
-end
\ No newline at end of file
+ if tableHasKey(DP.Walks, name) then
+ local name2 = table.unpack(DP.Walks[name])
+ WalkMenuStart(name2)
+ else
+ EmoteChatMessage("'" .. name .. "' is not a valid walk")
+ end
+end
+
+function tableHasKey(table, key)
+ return table[key] ~= nil
+end
diff --git a/resources/EmoteMenu/Config.lua b/resources/EmoteMenu/Config.lua
index 2e1b745a3..513693af5 100644
--- a/resources/EmoteMenu/Config.lua
+++ b/resources/EmoteMenu/Config.lua
@@ -1,40 +1,44 @@
Config = {
--- Change the language of the menu here!.
--- Note fr and de are google translated, if you would like to help out with translation / just fix it for your server check below and change translations yourself
--- try en, fr, de or sv.
- MenuLanguage = 'en',
--- Set this to true to enable some extra prints
- DebugDisplay = false,
--- Set this to false if you have something else on X, and then just use /e c to cancel emotes.
- EnableXtoCancel = true,
--- Set this to true if you want to disarm the player when they play an emote.
- DisarmPlayer= false,
--- Set this if you really wanna disable emotes in cars, as of 1.7.2 they only play the upper body part if in vehicle
+ -- Change the language of the menu here!.
+ -- Note fr and de are google translated, if you would like to help out with translations, feel free to send me an 'issue' on Github.
+ -- Thank you to those who provided translations.
+ --
+
+ MenuLanguage = 'en',
+ -- Set this to true to enable some extra prints
+ DebugDisplay = false,
+ -- Set this to false if you have something else on X, and then just use /e c to cancel emotes.
+ EnableXtoCancel = true,
+ -- Set this to true if you want to disarm the player when they play an emote.
+ DisarmPlayer = false,
+ -- Set this if you really wanna disable emotes in cars, as of 1.7.2 they only play the upper body part if in vehicle
AllowedInCars = true,
--- You can disable the (F3) menu here / change the keybind.
- MenuKeybindEnabled = true,
- MenuKeybind = 167, -- Get the button number here https://docs.fivem.net/game-references/controls/
--- You can disable the Favorite emote keybinding here.
- FavKeybindEnabled = false,
- FavKeybind = 171, -- Get the button number here https://docs.fivem.net/game-references/controls/
--- You can change the header image for the f3 menu here
--- Use a 512 x 128 image!
--- NOte this might cause an issue of the image getting stuck on peoples screens
- CustomMenuEnabled = false,
- MenuImage = "https://i.imgur.com/kgzvDwQ.png",
--- You can change the menu position here
- MenuPosition = "right", -- (left, right)
--- You can disable the Ragdoll keybinding here.
- RagdollEnabled = true,
- RagdollKeybind = 303, -- Get the button number here https://docs.fivem.net/game-references/controls/
--- You can disable the Facial Expressions menu here.
- ExpressionsEnabled = true,
--- You can disable the Walking Styles menu here.
- WalkingStylesEnabled = true,
--- You can disable the Shared Emotes here.
+ -- You can disable the menu here / change the keybind. It is currently set to F3
+ MenuKeybindEnabled = false,
+ MenuKeybind = 'DELETE', -- Get the button string here https://docs.fivem.net/docs/game-references/input-mapper-parameter-ids/keyboard/
+ -- You can disable the Favorite emote keybinding here.
+ FavKeybindEnabled = false,
+ FavKeybind = 256, -- Get the button number here https://docs.fivem.net/game-references/controls/
+ -- You can change the header image for the menu here
+ -- Use a 512 x 128 image!
+ -- Note this might cause an issue of the image getting stuck on peoples screens
+ CustomMenuEnabled = true,
+ MenuImage = "https://i.imgur.com/SLuIdBo.png", ----[Custom banner imgur URLs go here ]---
+ -- You can change the menu image by pasting a link above. It must be the same width and length
+ --
+ -- You can change the menu position here
+ MenuPosition = "right", -- (left, right)
+ -- You can enable or disable the Ragdoll keybinding here.
+ RagdollEnabled = true,
+ RagdollKeybind = 303, -- Get the button number here https://docs.fivem.net/game-references/controls/
+ -- You can disable the Facial Expressions menu here.
+ ExpressionsEnabled = true,
+ -- You can disable the Walking Styles menu here.
+ WalkingStylesEnabled = true,
+ -- You can disable the Shared Emotes here.
SharedEmotesEnabled = true,
- CheckForUpdates = true,
--- If you have the SQL imported enable this to turn on keybinding.
+ CheckForUpdates = false,
+ -- If you have the SQL imported enable this to turn on keybinding.
SqlKeybinding = false,
}
@@ -48,9 +52,10 @@ Config.KeybindKeys = {
}
Config.Languages = {
- ['en'] = {
- ['emotes'] = 'Emotes',
+ ['en'] = { -- English 🇬🇧
+ ['emotes'] = 'Emotes 🎬',
['danceemotes'] = "🕺 Dance Emotes",
+ ['animalemotes'] = "🐩 Animal Emotes",
['propemotes'] = "📦 Prop Emotes",
['favoriteemotes'] = "🌟 Favorite",
['favoriteinfo'] = "Select an emote here to set it as your favorite.",
@@ -59,17 +64,17 @@ Config.Languages = {
['set'] = "Set (",
['setboundemote'] = ") to be your bound emote?",
['newsetemote'] = "~w~ is now your bound emote, press ~g~CapsLock~w~ to use it.",
- ['cancelemote'] = "Cancel Emote",
+ ['cancelemote'] = "Cancel Emote 🚷",
['cancelemoteinfo'] = "~r~X~w~ Cancels the currently playing emote",
- ['walkingstyles'] = "Walking Styles",
+ ['walkingstyles'] = "Walking Styles 🚶🏻♂️",
['resetdef'] = "Reset to default",
['normalreset'] = "Normal (Reset)",
- ['moods'] = "Moods",
- ['infoupdate'] = "Information",
+ ['moods'] = "Moods 😒",
+ ['infoupdate'] = "Credits & Suggestions 🙏🏻",
['infoupdateav'] = "Information (Update available)",
- ['infoupdateavtext'] = "An update is available, get the latest version from ~y~https://github.com/andristum/dpemotes~w~",
+ ['infoupdateavtext'] = "An update is available, get the latest version from ~y~https://github.com/TayMcKenzieNZ/dpemotes~w~",
['suggestions'] = "Suggestions?",
- ['suggestionsinfo'] = "'dullpear_dev' on FiveM forums for any feature/emote suggestions! ✉️",
+ ['suggestionsinfo'] = "'TayMcKenzieNZ' on FiveM forums for any feature/emote suggestions! ✉️",
['notvaliddance'] = "is not a valid dance.",
['notvalidemote'] = "is not a valid emote.",
['nocancel'] = "No emote to cancel.",
@@ -88,63 +93,115 @@ Config.Languages = {
['makeitrain'] = "Press ~y~G~w~ to make it rain.",
['pee'] = "Hold ~y~G~w~ to pee.",
['spraychamp'] = "Hold ~y~G~w~ to spray champagne",
+ ['stun'] = "Press ~y~G~w~ to 'use' stun gun.",
['bound'] = "Bound ",
['to'] = "to",
['currentlyboundemotes'] = " Currently bound emotes:",
['notvalidkey'] = "is not a valid key.",
['keybinds'] = "🔢 Keybinds",
['keybindsinfo'] = "Use"
- },
- ['fr'] = {
- ['emotes'] = 'Emotes',
- ['danceemotes'] = "🕺 Emotes de danse",
- ['propemotes'] = "📦 Em Prop Emotes",
+ },
+ ['cs'] = { -- Czech 🇨🇿
+ ['emotes'] = 'Animace 🎬',
+ ['danceemotes'] = "🕺 Taneční Animace",
+ ['animalemotes'] = "🐩 zvířecí Animace",
+ ['propemotes'] = "📦 Animace s předměty",
+ ['favoriteemotes'] = "🌟 Oblíbené",
+ ['favoriteinfo'] = "Vyberte si animaci a nastavte ji jako svou oblíbenou.",
+ ['rfavorite'] = "Obnovit oblíbené",
+ ['prop2info'] = "❓ Pomůcky se mohou nacházet na konci",
+ ['set'] = "Nastavit",
+ ['setboundemote'] = "Nastavit jako vaši animaci?",
+ ['newsetemote'] = "~w~ je nyní vaší novou nastavenou animací. Chcete-li jej použít, stiskněte ~g~CapsLock~w~.",
+ ['cancelemote'] = "Zrušit animaci 🚷",
+ ['cancelemoteinfo'] = "~r~X~w~ Zruší aktuálně přehrávanou animaci",
+ ['walkingstyles'] = "Styly chůze 🚶🏻♂️",
+ ['resetdef'] = "Obnovit do základního nastavení",
+ ['normalreset'] = "Neutrální výraz",
+ ['moods'] = "Výrazy 😒",
+ ['infoupdate'] = "Kredity a nápady 🙏🏻",
+ ['infoupdateav'] = "Informace (aktualizace dostupná)",
+ ['infoupdateavtext'] = "Je k dispozici aktualizace, stáhněte si nejnovější verzi z ~y~https://github.com/TayMcKenzieNZ/dpemotes~w~",
+ ['suggestions'] = "Nápady?",
+ ['suggestionsinfo'] = "'TayMcKenzieNZ' na FiveM forums je pro jakýkoliv návrh! ✉️",
+ ['notvaliddance'] = "Není platný tanec.",
+ ['notvalidemote'] = "Není platná animace.",
+ ['nocancel'] = "Žádné animace ke zrušení.",
+ ['maleonly'] = "Tato emoce je pouze pro muže, omlouvám se!",
+ ['emotemenucmd'] = "Použíj /emotemenu pro otevření menu.",
+ ['shareemotes'] = "👫 Sdílené animace",
+ ['shareemotesinfo'] = "Pozvěte osobu v okolí, k tanci",
+ ['sharedanceemotes'] = "🕺 Sdílený tanece",
+ ['notvalidsharedemote'] = "Není platný Sdílený tanec.",
+ ['sentrequestto'] = "Odeslal jsi ~y~ žádost o tanec ",
+ ['nobodyclose'] = "Nikdo ~r~není~w~ v dostatečné blízkosti.",
+ ['doyouwanna'] = "~y~Y~w~ pro příjmutí, ~r~L~w~ pro odmitnutí (~g~",
+ ['refuseemote'] = "Emote odmítnut.",
+ ['makenearby'] = "nechat hráče poblíž hrát",
+ ['camera'] = "Stiskni ~y~G~w~ pro použítí blesku u fotoaparátu.",
+ ['makeitrain'] = "Stiskni ~y~G~w~ pro spuštení deště.",
+ ['pee'] = "Podrž ~y~G~w~ pro čůraní.",
+ ['spraychamp'] = "Podrž ~y~G~w~ pro stříkaní šampaňského",
+ ['stun'] = "Stiskni ~y~G~w~ pro 'použití' paralyzéru.",
+ ['bound'] = "Bound ",
+ ['to'] = "na",
+ ['currentlyboundemotes'] = "Momentálně nastavené animace:",
+ ['notvalidkey'] = "Není platná klávesa.",
+ ['keybinds'] = "🔢 Klávesové Zkratky",
+ ['keybindsinfo'] = "Use"
+ },
+ ['fr'] = { -- French 🇫🇷
+ ['emotes'] = 'Emotes 🎬',
+ ['danceemotes'] = "🕺 Danses",
+ ['animalemotes'] = "🐩 Emotes d'animaux",
+ ['propemotes'] = "📦 Emotes objet",
['favoriteemotes'] = "🌟 Favori",
- ['favoriteinfo'] = "Définir un emote comme favori.",
- ['rfavorite'] = "réinitialiser le favori.",
- ['prop2info'] = "❓ Prop Emotes peuvent être situés à la fin",
- ['set'] = "Set (",
- ['setboundemote'] = ") pour être votre emote lié?",
- ['newsetemote'] = "~w~ est maintenant votre emote liée, appuyez sur ~g~CapsLock~w~ pour l'utiliser.",
- ['cancelemote'] = "Annuler Emote",
- ['cancelemoteinfo'] = "~r~X~w~ Annule l'emote en cours de lecture",
- ['walkingstyles'] = "Styles de marche",
+ ['favoriteinfo'] = "Définir une emote comme favori.",
+ ['rfavorite'] = "Réinitialiser le favori.",
+ ['prop2info'] = "❓ Les emotes d'objet peuvent être à la fin",
+ ['set'] = "Mettre (",
+ ['setboundemote'] = ") en emote favorite?",
+ ['newsetemote'] = "~w~ est maintenant votre emote favorite, appuyez sur ~g~CapsLock~w~ pour l'utiliser.",
+ ['cancelemote'] = "Annuler Emote 🚷",
+ ['cancelemoteinfo'] = "~r~X~w~ Annule l'emote en cours",
+ ['walkingstyles'] = "Styles de marche 🚶🏻♂️",
['resetdef'] = "Réinitialiser aux valeurs par défaut",
['normalreset'] = "Normal (réinitialiser)",
- ['moods'] = "Humeurs",
- ['infoupdate'] = "Information",
+ ['moods'] = "Humeurs 😒",
+ ['infoupdate'] = "Crédits et suggestions 🙏🏻",
['infoupdateav'] = "Information (Mise à jour disponible)",
- ['infoupdateavtext'] = "Une mise à jour est disponible ~y~https://github.com/andristum/dpemotes~w~",
+ ['infoupdateavtext'] = "Une mise à jour est disponible ~y~https://github.com/TayMcKenzieNZ/dpemotes~w~",
['suggestions'] = "Suggestions?",
- ['suggestionsinfo'] = "'dullpear_dev' sur les forums FiveM pour toutes les suggestions de fonction / emote! ✉️",
- ['notvaliddance'] = "n'est pas une danse valide",
- ['notvalidemote'] = "n'est pas un emote valide",
+ ['suggestionsinfo'] = "'TayMcKenzieNZ' sur les forums FiveM pour toutes les suggestions! ✉️",
+ ['notvaliddance'] = "n'est pas une danse valide",
+ ['notvalidemote'] = "n'est pas une emote valide",
['nocancel'] = "Pas d'emote à annuler",
['maleonly'] = "Cet emote est réservé aux hommes, désolé!",
- ['emotemenucmd'] = "Do /emotemenu pour un menu",
- ['shareemotes'] = "👫 Em Emotes partagées",
- ['shareemotesinfo'] = "Inviter une personne proche à emoter",
+ ['emotemenucmd'] = "Fait /emotemenu pour ouvrir le menu",
+ ['shareemotes'] = "👫 Emotes partagées",
+ ['shareemotesinfo'] = "Invite une personne proche à faire une emote avec toi",
['sharedanceemotes'] = "🕺 Dances partagées",
- ['notvalidsharedemote'] = "n'est pas un emote partagé valide.",
+ ['notvalidsharedemote'] = "n'est pas un emote partagée valide.",
['sentrequestto'] = "Demande envoyée à ~g~",
- ['nobodyclose'] = "Personne assez proche.",
+ ['nobodyclose'] = "Personne n'esst assez proche.",
['doyouwanna'] = "~y~Y~w~ accepter, ~r~L~w~ refuser (~g~",
['refuseemote'] = "Emote refusée.",
['makenearby'] = "fait jouer le joueur à proximité",
- ['camera'] = "Presse ~y~G~w~ utiliser le flash de l'appareil.",
- ['makeitrain'] = "Presse ~y~G~w~ jeter de l'argent.",
- ['pee'] = "Tenir ~y~G~w~ faire pipi.",
- ['spraychamp'] = "Tenir ~y~G~w~ vaporiser du champagne.",
+ ['camera'] = "Presse ~y~G~w~ pour utiliser le flash de l'appareil.",
+ ['makeitrain'] = "Presse ~y~G~w~ pour jeter de l'argent.",
+ ['pee'] = "Tenir ~y~G~w~ pour faire pipi.",
+ ['spraychamp'] = "Tenir ~y~G~w~ pour vaporiser du champagne.",
['bound'] = "Liée ",
['to'] = "à",
- ['currentlyboundemotes'] = " Emotes actuellement liés:",
+ ['currentlyboundemotes'] = " Emotes actuellement liées:",
['notvalidkey'] = "n'est pas une clé valide.",
- ['keybinds'] = "🔢 Liens Clés",
- ['keybindsinfo'] = "Use"
- },
- ['de'] = {
- ['emotes'] = 'Emotes',
+ ['keybinds'] = "🔢 Raccourcis clavier",
+ ['keybindsinfo'] = "Utilise"
+ },
+ ['de'] = { -- German 🇩🇪
+ ['emotes'] = 'Emotes 🎬',
['danceemotes'] = "🕺 Tanz-Emotes",
+ ['animalemotes'] = "🐩 Animal Emotes",
['propemotes'] = "📦 Prop-Emotes",
['favoriteemotes'] = "🌟 Favorit",
['favoriteinfo'] = "Wählen Sie hier ein Emote aus, um es als gebundenes Emote festzulegen.",
@@ -153,17 +210,17 @@ Config.Languages = {
['set'] = "Set (",
['setboundemote'] = ") soll dein gebundenes Emote sein?",
['newsetemote'] = "~w~ ist jetzt dein gebundenes Emote, drücke ~g~CapsLock~w~, um es zu verwenden.",
- ['cancelemote'] = "Emote abbrechen",
+ ['cancelemote'] = "Emote abbrechen 🚷",
['cancelemoteinfo'] = "~r~ X ~w~ Bricht das aktuell wiedergegebene Emote ab",
- ['walkingstyles'] = "Gehstile",
+ ['walkingstyles'] = "Gehstile 🚶🏻♂️",
['resetdef'] = "Auf Standard zurücksetzen",
['normalreset'] = "Normal (Zurücksetzen)",
- ['moods'] = "Stimmungen",
- ['infoupdate'] = "Information",
+ ['moods'] = "Stimmungen 😒",
+ ['infoupdate'] = "Credits und Dank 🙏🏻",
['infoupdateav'] = "Information (Update verfügbar)",
- ['infoupdateavtext'] = "Eine Aktualisierung ist verfügbar ~y~https://github.com/andristum/dpemotes~w~",
+ ['infoupdateavtext'] = "Eine Aktualisierung ist verfügbar ~y~https://github.com/TayMcKenzieNZ/dpemotes~w~",
['suggestions'] = "Vorschläge?",
- ['suggestionsinfo'] = "'dullpear_dev' in FiveM-Foren für alle Feature- / Emote-Vorschläge! ✉️",
+ ['suggestionsinfo'] = "'TayMcKenzieNZ' in FiveM-Foren für alle Feature- / Emote-Vorschläge! ✉️",
['notvaliddance'] = "ist kein gültiger Tanz",
['notvalidemote'] = "ist kein gültiges Emote",
['nocancel'] = "Kein Emote zum Abbrechen",
@@ -175,7 +232,7 @@ Config.Languages = {
['notvalidsharedemote'] = "ist kein gültiges geteiltes Emote.",
['sentrequestto'] = "Gesendete Anfrage an ~g~",
['nobodyclose'] = "Niemand ist nah genug dran.",
- ['doyouwanna'] = "~y~Y~w~ zu akzeptieren, ~r~L~w~ zu verweigern (~g~",
+ ['doyouwanna'] = "~y~Z~w~ zu akzeptieren, ~r~L~w~ zu verweigern (~g~",
['refuseemote'] = "Emote abgelehnt.",
['makenearby'] = "Lässt den Spieler in der Nähe spielen",
['camera'] = "Drücken ~y~G~w~ Kamerablitz verwenden.",
@@ -188,10 +245,11 @@ Config.Languages = {
['notvalidkey'] = "ist kein gültiger schlüssel.",
['keybinds'] = "🔢 Tastenkombinationen",
['keybindsinfo'] = "verwenden"
- },
- ['sv'] = {
- ['emotes'] = 'Emotes',
+ },
+ ['sv'] = { -- Swedish 🇸🇪
+ ['emotes'] = 'Emotes 🎬',
['danceemotes'] = "🕺 Dans Emotes",
+ ['animalemotes'] = "🐩 Animal Emotes",
['propemotes'] = "📦 Objekt Emotes",
['favoriteemotes'] = "🌟 Favorit",
['favoriteinfo'] = "Välj en emote här för att ställa in den som din favorit emote.",
@@ -200,17 +258,17 @@ Config.Languages = {
['set'] = "Sätt (",
['setboundemote'] = ") till din favorit emote?",
['newsetemote'] = "~w~ är nu din favorit emote, tryck ~g~CapsLock~w~ för att använda den.",
- ['cancelemote'] = "Avbryt Emote",
+ ['cancelemote'] = "Avbryt Emote 🚷",
['cancelemoteinfo'] = "~r~X~w~ Avbryter det emote som för närvarande används.",
- ['walkingstyles'] = "Walking Stil",
+ ['walkingstyles'] = "Walking Stil 🚶🏻♂️",
['resetdef'] = "Återställ till standard",
['normalreset'] = "Normal (Återställ)",
- ['moods'] = "Humör",
- ['infoupdate'] = "Information",
+ ['moods'] = "Humör 😒",
+ ['infoupdate'] = "Krediter Och Förslag 🙏🏻",
['infoupdateav'] = "Information (Uppdatering tillgänglig)",
- ['infoupdateavtext'] = "En uppdatering är tillgänglig ~y~https://github.com/andristum/dpemotes~w~",
+ ['infoupdateavtext'] = "En uppdatering är tillgänglig ~y~https://github.com/TayMcKenzieNZ/dpemotes~w~",
['suggestions'] = "Förslag?",
- ['suggestionsinfo'] = "'dullpear_dev' på FiveM-forum för alla funktioner/emote-förslag! ✉️",
+ ['suggestionsinfo'] = "'TayMcKenzieNZ' på FiveM-forum för alla funktioner/emote-förslag! ✉️",
['notvaliddance'] = "är inte en giltig dans",
['notvalidemote'] = "är inte en giltig emote",
['nocancel'] = "Ingen emote att avbryta",
@@ -235,29 +293,30 @@ Config.Languages = {
['notvalidkey'] = "är inte en giltig tangent.",
['keybinds'] = "🔢 Keybinds",
['keybindsinfo'] = "Använd"
- },
- ['es'] = {
- ['emotes'] = "Animaciones",
+ },
+ ['es'] = { -- Spanish 🇪🇸
+ ['emotes'] = "Animaciones 🎬",
['danceemotes'] = "🕺 Bailes",
+ ['animalemotes'] = "🐩 Emotes de animales",
['propemotes'] = "📦 Objetos",
- ['keybindemotes'] = "🌟 Favorita",
- ['keybindinfo'] = "Selecciona una animacion como su favorita.",
- ['rkeybind'] = "Reiniciar favorito",
- ['prop2info'] = "❓ Animaciones de objetos al final.",
+ ['favoriteemotes'] = "🌟 Favoritos",
+ ['favoriteinfo'] = "Seleccione un emoticón aquí para configurarlo como su favorito.",
+ ['rfavorite'] = "Restablecer favorito",
+ ['prop2info'] = "❓ Prop Emotes se pueden ubicar al final",
['set'] = "Elegir (",
['setboundemote'] = ") como tu animacion favorita?",
['newsetemote'] = "~w~ es ahora tu animacion favorita, presiona ~g~[CapsLock]~w~ para usarla.",
- ['cancelemote'] = "Cancelar animacion",
+ ['cancelemote'] = "Cancelar animacion 🚷",
['cancelemoteinfo'] = "~r~X~w~ Cancela la animacion actual.",
- ['walkingstyles'] = "Formas de caminar",
+ ['walkingstyles'] = "Formas de caminar 🚶🏻♂️",
['resetdef'] = "Reiniciar a por defecto",
['normalreset'] = "Normal (Reiniciar)",
- ['moods'] = "Estados de animo",
- ['infoupdate'] = "Informacion",
+ ['moods'] = "Estados de animo 😒",
+ ['infoupdate'] = "Créditos Y Sugerencias 🙏🏻",
['infoupdateav'] = "Informacion (Actualizacion disponible)",
- ['infoupdateavtext'] = "Una actualizacion esta disponible, para conseguir la ultima version ingresa a ~y~https://github.com/andristum/dpemotes~w~",
+ ['infoupdateavtext'] = "Una actualizacion esta disponible, para conseguir la ultima version ingresa a ~y~https://github.com/TayMcKenzieNZ/dpemotes~w~",
['suggestions'] = "Sugerencias?",
- ['suggestionsinfo'] = "dullpear_dev' en el foro de FiveM para cualquier sugerencia! ✉️",
+ ['suggestionsinfo'] = "TayMcKenzieNZ' en el foro de FiveM para cualquier sugerencia! ✉️",
['notvaliddance'] = "no es un baile valido.",
['notvalidemote'] = "no es una animacion valida.",
['nocancel'] = "No hay animacion para cancelar.",
@@ -282,5 +341,249 @@ Config.Languages = {
['notvalidkey'] = "no es una clave válida.",
['keybinds'] = "🔢 Keybinds",
['keybindsinfo'] = "Utilizar"
- }
-}
\ No newline at end of file
+ },
+ ['nl'] = { -- Dutch 🇳🇱
+ ['emotes'] = 'Animaties 🎬',
+ ['danceemotes'] = "🕺 Dans Animaties",
+ ['animalemotes'] = "🐩 Dier Animaties",
+ ['propemotes'] = "📦 Prop Animaties",
+ ['favoriteemotes'] = "🌟 Favorieten",
+ ['favoriteinfo'] = "Selecteer hier een animatie om deze als favoriete in te stellen.",
+ ['rfavorite'] = "Reset Favorieten",
+ ['prop2info'] = "❓ Prop animaties staan aan het einde.",
+ ['set'] = "Maak (",
+ ['setboundemote'] = ") je toegewezen animatie?",
+ ['newsetemote'] = "~w~ is nu je toegewezen animatie, druk op ~g~CapsLock~w~ om hem te gebruiken.",
+ ['cancelemote'] = "Stop Animatie 🚷",
+ ['cancelemoteinfo'] = "~r~X~w~ Stopt je huidige animatie",
+ ['walkingstyles'] = "Loopjes 🚶🏻♂️",
+ ['resetdef'] = "Reset naar standaard",
+ ['normalreset'] = "Normaal (Reset)",
+ ['moods'] = "Stemmingen 😒",
+ ['infoupdate'] = "Credits en bedankt 🙏🏻",
+ ['infoupdateav'] = "Informatie (Update beschikbaar)",
+ ['infoupdateavtext'] = "Een update is beschikbaar, download de laatste versie via ~y~https://github.com/TayMcKenzieNZ/dpemotes~w~",
+ ['suggestions'] = "Suggesties?",
+ ['suggestionsinfo'] = "'TayMcKenzieNZ' op de FiveM forums om suggesties in te dienen! ✉️",
+ ['notvaliddance'] = "Is geen geldige dans.",
+ ['notvalidemote'] = "Is geen geldige animatie.",
+ ['nocancel'] = "Er is geen animatie om te annuleren.",
+ ['maleonly'] = "Deze animatie is alleen voor mannen, sorry!",
+ ['emotemenucmd'] = "Doe /emotemenu voor het animatiemenu.",
+ ['shareemotes'] = "👫 Gedeelde Animaties",
+ ['shareemotesinfo'] = "Nodig een persoon in de buurt uit om een animatie te doen.",
+ ['sharedanceemotes'] = "🕺 Gedeelde Dansjes",
+ ['notvalidsharedemote'] = "Is geen geldige gedeelde animatie.",
+ ['sentrequestto'] = "Verzoek gestuurd naar ~y~",
+ ['nobodyclose'] = "Er is niemand ~r~dichtbij~w~ genoeg.",
+ ['doyouwanna'] = "~y~Y~w~ om te accepteren, ~r~L~w~ om te weigeren (~g~",
+ ['refuseemote'] = "Animatie geweigerd.",
+ ['makenearby'] = "laat de dichtstbijzijnde persoon de animatie doen",
+ ['camera'] = "Druk op ~y~G~w~ om de flitser te gebruiken..",
+ ['makeitrain'] = "Druk op ~y~G~w~ om geld te gooien.",
+ ['pee'] = "Druk op ~y~G~w~ om te plassen.",
+ ['spraychamp'] = "Druk op ~y~G~w~ om batra's te spuiten.",
+ ['stun'] = "Druk op ~y~G~w~ om de taser te 'gebruiken'.",
+ ['bound'] = "Gebonden ",
+ ['to'] = "aan",
+ ['currentlyboundemotes'] = " Huidig gebonden animaties:",
+ ['notvalidkey'] = "Is geen geldige knop.",
+ ['keybinds'] = "🔢 Keybinds",
+ ['keybindsinfo'] = "Gebruik"
+ },
+ ['pt'] = { -- Brazilian Portuguese 🇧🇷
+ ['emotes'] = 'Emotes 🎬',
+ ['danceemotes'] = "🕺 Emotes de Danças",
+ ['animalemotes'] = "🐩 Emotes de Animais",
+ ['propemotes'] = "📦 Emotes com Props",
+ ['favoriteemotes'] = "🌟 Favoritos",
+ ['favoriteinfo'] = "Selecione um emote para colocá-lo nos seus favoritos",
+ ['rfavorite'] = "Limpar favoritos",
+ ['prop2info'] = "❓ Emotes de props podem ser localizados no fim",
+ ['set'] = "Set (",
+ ['setboundemote'] = ") para ser seu emote vinculado?",
+ ['newsetemote'] = "~w~ é o seu emote vinculado, pressione ~g~CapsLock~w~ para usá-lo",
+ ['cancelemote'] = "Cancelar emote 🚷",
+ ['cancelemoteinfo'] = "~r~X~w~ Cancela os emotes rodando atualmente",
+ ['walkingstyles'] = "Estilos de Caminhada 🚶🏻♂️",
+ ['resetdef'] = "Resetar para o padrão",
+ ['normalreset'] = "Normal (Resetar)",
+ ['moods'] = "Humores 😒",
+ ['infoupdate'] = "Crédito e agradecimento 🙏🏻",
+ ['infoupdateav'] = "Informação (Atualização disponível)",
+ ['infoupdateavtext'] = "Uma atualização disponível, veja ~y~https://github.com/TayMcKenzieNZ/dpemotes~w~ para pegar",
+ ['suggestions'] = "Sugestões?",
+ ['suggestionsinfo'] = "'TayMcKenzieNZ' no fórum do FiveM para qualquer sugestão de recurso/emotes! ✉️",
+ ['notvaliddance'] = "não é uma dança válida.",
+ ['notvalidemote'] = "não é um emote válido.",
+ ['nocancel'] = "Nenhum emote para cancelar",
+ ['maleonly'] = "Este emote é para homens, desculpe!",
+ ['emotemenucmd'] = "Faça /emotemenu para abrir o menu.",
+ ['shareemotes'] = "👫 Emotes compartilhados",
+ ['shareemotesinfo'] = "Convide uma pessoa próxima para para realizar a animação",
+ ['sharedanceemotes'] = "🕺 Danças compartilhadas",
+ ['notvalidsharedemote'] = "não é um emote compartilhado válido.",
+ ['sentrequestto'] = "Enviar solicitação para ~y~",
+ ['nobodyclose'] = "Ninguém próximo o ~r~rsuficiente~w~.",
+ ['doyouwanna'] = "~y~Y~w~ para aceitar, ~r~L~w~ para recursar (~g~",
+ ['refuseemote'] = "Emote recursado",
+ ['makenearby'] = "Faz o jogador próximo participar",
+ ['camera'] = "Pressione ~y~G~w~ para usar o flash da câmera",
+ ['makeitrain'] = "Pressione ~y~G~w~ para fazer chover.",
+ ['pee'] = "Mantenha pressionado ~y~G~w~ para fazer xixi.",
+ ['spraychamp'] = "Mantenha pressionado ~y~G~w~ jogar champagne",
+ ['stun'] = "Press ~y~G~w~ to 'use' stun gun.",
+ ['bound'] = "Vinculado ",
+ ['to'] = "para",
+ ['currentlyboundemotes'] = "Emotes atualmente vinculados: ",
+ ['notvalidkey'] = "isto não é uma chave válida",
+ ['keybinds'] = "🔢 Keybinds",
+ ['keybindsinfo'] = "Usar"
+ },
+ ['it'] = { -- Italian 🇮🇹
+ ['emotes'] = 'Animazioni 🎬',
+ ['danceemotes'] = "🕺 Animazioni Di Danza",
+ ['animalemotes'] = "🐩 Animazioni Di Animali",
+ ['propemotes'] = "📦 Animazioni Prop",
+ ['favoriteemotes'] = "🌟 Emote preferite",
+ ['favoriteinfo'] = "Seleziona un'animazione per metterla nei preferiti.",
+ ['rfavorite'] = "Rimuovi preferito",
+ ['prop2info'] = "❓ Le animazioni Prop possono essere trovate in fondo.",
+ ['set'] = "Imposta (",
+ ['setboundemote'] = ") come tua animazione corrente?",
+ ['newsetemote'] = "~w~ è ora la tua animazione corrente, premi ~g~CapsLock~w~ per usarla.",
+ ['cancelemote'] = "Annulla animazione 🚷",
+ ['cancelemoteinfo'] = "~r~X~w~ Cancella l'animazione in corso.",
+ ['walkingstyles'] = "Stili di camminata 🚶🏻♂️",
+ ['resetdef'] = "Ripristina predefiniti",
+ ['normalreset'] = "Normale (Reset)",
+ ['moods'] = "Umori 😒",
+ ['infoupdate'] = "Crediti e grazie 🙏🏻",
+ ['infoupdateav'] = "Informazioni (Aggiornamento disponibile)",
+ ['infoupdateavtext'] = "Un aggiornamento è disponibile, ottieni l'ulima versione qui ~y~https://github.com/TayMcKenzieNZ/dpemotes~w~",
+ ['suggestions'] = "Suggerimenti?",
+ ['suggestionsinfo'] = "'TayMcKenzieNZ' nei forum di FiveM per suggerimenti su funzionalitá/animazioni! ✉️",
+ ['notvaliddance'] = "non è un ballo valido.",
+ ['notvalidemote'] = "non è un'animazione valida.",
+ ['nocancel'] = "Nessun'animazione da cancellare.",
+ ['maleonly'] = "Quest'animazione è solo maschile!",
+ ['emotemenucmd'] = "Esegui /emotemenu per aprire il menù.",
+ ['shareemotes'] = "👫 Animazioni di coppia",
+ ['shareemotesinfo'] = "Invita un giocatore vicino ad un'animazione",
+ ['sharedanceemotes'] = "🕺 Balli di coppia",
+ ['notvalidsharedemote'] = "non è un'animazione di coppia valida.",
+ ['sentrequestto'] = "Richiesta mandata a ~y~",
+ ['nobodyclose'] = "Nessun giocatore abbastanza ~r~vicino~w~.",
+ ['doyouwanna'] = "~y~Y~w~ per accettare, ~r~L~w~ per rifiutare (~g~",
+ ['refuseemote'] = "Animazione rifiutata.",
+ ['makenearby'] = "fa eseguire l'animazione al giocatore vicino",
+ ['camera'] = "Premi ~y~G~w~ per usare il flash della fotocamera.",
+ ['makeitrain'] = "Premi ~y~G~w~ per far piovere.",
+ ['pee'] = "Tieni premuto ~y~G~w~ per urinare.",
+ ['spraychamp'] = "Tieni premuto ~y~G~w~ per spruzzare champagne",
+ ['stun'] = "Premi ~y~G~w~ per 'usare' la pistola stordente.",
+ ['bound'] = "É stato impostato ",
+ ['to'] = "per",
+ ['currentlyboundemotes'] = " Animazioni correnti:",
+ ['notvalidkey'] = "non è una chiave valida.",
+ ['keybinds'] = "🔢 Tasti",
+ ['keybindsinfo'] = "Utilizza"
+ },
+ ['da'] = { -- Danish 🇩🇰
+ ['emotes'] = 'Animationer',
+ ['danceemotes'] = "🕺 Danse Animationer",
+ ['animalemotes'] = "🐩 Dyr Animationer",
+ ['propemotes'] = "📦 Rekvisit Animationer",
+ ['favoriteemotes'] = "🌟 Favorit",
+ ['favoriteinfo'] = "Vælge en animationer her for at sætte den som din favorit.",
+ ['rfavorite'] = "Nulstil Favorit",
+ ['prop2info'] = "❓ Rekvisit emotes findes i slutningen",
+ ['set'] = "Sæt (",
+ ['setboundemote'] = ") til din favorit animationer?",
+ ['newsetemote'] = "~w~ Er nu din favorit animationer, tryk ~g~CapsLock~w~ for at anvende den.",
+ ['cancelemote'] = "Afbryd animationer",
+ ['cancelemoteinfo'] = "~r~X~w~ Anullere din igangværende animationer.",
+ ['walkingstyles'] = "Gågange",
+ ['resetdef'] = "Nulstil til standard",
+ ['normalreset'] = "Normal (Nulstil)",
+ ['moods'] = "Humør 😒",
+ ['infoupdate'] = "Info / opdateringer",
+ ['infoupdateav'] = "Information (Opdatering available)",
+ ['infoupdateavtext'] = "En opdatering er tilgænglig, hent den nyeste version fra ~y~https://github.com/TayMcKenzieNZ/dpemotes~w~",
+ ['suggestions'] = "Forslag?",
+ ['suggestionsinfo'] = "'TayMcKenzieNZ' på FiveM-forum for alle funktioner/emote-forslag! ✉️",
+ ['notvaliddance'] = "er ikke en gyldig dans",
+ ['notvalidemote'] = "er ikke en gyldig emote",
+ ['nocancel'] = "Ingen animationer afspilles lige nu",
+ ['maleonly'] = "Denne animationer virker desværre kun til mænd!",
+ ['emotemenucmd'] = "Skriv /emotemenu for animationer menuen",
+ ['shareemotes'] = "👫 Delte animationer",
+ ['shareemotesinfo'] = "Invitere en spillere i nærheden for afspille animationer",
+ ['sharedanceemotes'] = "🕺 Delete Danse",
+ ['notvalidsharedemote'] = "er ikke en gyldig delt animationer.",
+ ['sentrequestto'] = "Anmodning sendt til ~y~",
+ ['nobodyclose'] = "Ingen ~r~tæt~w~ nok.",
+ ['doyouwanna'] = "~y~Y~w~ for at acceptere, ~r~L~w~ for at nægte (~g~",
+ ['refuseemote'] = "Animationer nægtede.",
+ ['makenearby'] = "får den nærliggende spiller til at spille",
+ ['camera'] = "Tryk ~y~G~w~ for at bruge kamera kameraets blitz.",
+ ['makeitrain'] = "Tryk ~y~G~w~ for at regne med penge.",
+ ['pee'] = "Hold ~y~G~w~ for at tisse.",
+ ['spraychamp'] = "Hold ~y~G~w~ for at sprøjte med champagnen",
+ ['stun'] = "tryk på ~y~G~w~ for at bruge elektrisk pistol.",
+ ['bound'] = "Bundet ",
+ ['to'] = "til",
+ ['currentlyboundemotes'] = " Keybind animationer:",
+ ['notvalidkey'] = "er ikke en gyldigt nøgle.",
+ ['keybinds'] = "🔢 Keybinds",
+ ['keybindsinfo'] = "Brug"
+ },
+ ['fi'] = { -- Finnish 🇫🇮
+ ['emotes'] = 'Emotet 🎬',
+ ['danceemotes'] = "🕺 Tanssi Emotet",
+ ['animalemotes'] = "🐩 Eläin Emotet",
+ ['propemotes'] = "📦 Esine Emotet",
+ ['favoriteemotes'] = "🌟 Suosikit",
+ ['favoriteinfo'] = " Valitse emote täältä laittaaksesi sen suosikiksi.",
+ ['rfavorite'] = "Resettaa Suosikin.",
+ ['prop2info'] = "❓ Esine Emotet voivat sijaita lopussa",
+ ['set'] = "Aseta (",
+ ['setboundemote'] = ") on sinun bindattu emote ?",
+ ['newsetemote'] = "w on nyt bindattuna emotesi, paina gCapsLockw käyttääksesi",
+ ['cancelemote'] = "Peru emote 🚷",
+ ['cancelemoteinfo'] = "rXw Peruu meneillään olevan emoten ",
+ ['walkingstyles'] = "Kävelytyylit🚶🏻♂️",
+ ['resetdef'] = "Resettaa oletuksen",
+ ['normalreset'] = "Normaali (Reseettaa)",
+ ['moods'] = "Mielitilat😒",
+ ['infoupdate'] = "Krediitit & Ehdotukset 🙏🏻",
+ ['infoupdateav'] = "Informaatio (Päivitys Saatavilla)",
+ ['infoupdateavtext'] = " Uusin versio saatavilla täältä yhttps://github.com/TayMcKenzieNZ/dpemotes~w~",
+ ['suggestions'] = "Ehdotukset?",
+ ['suggestionsinfo'] = "'TayMcKenzieNZ' Fivem foormueilta mitä vain fiituria/emote ehdotusta! ✉️",
+ ['notvaliddance'] = "Ei ole tanssi.",
+ ['notvalidemote'] = "Ei ole emote.",
+ ['nocancel'] = "Ei ole emotea peruutettavaksi.",
+ ['maleonly'] = "Tämä emote on miehille ainostaan, anteeksi!",
+ ['emotemenucmd'] = "Tee /emotemenu avataksesi emote menun",
+ ['shareemotes'] = "👫 Yhteiset Emotet",
+ ['shareemotesinfo'] = "Kutsu lähin hahmo emoteen ",
+ ['sharedanceemotes'] = "🕺 Yhteiset Tanssit",
+ ['notvalidsharedemote'] = "Ei ole yhteinen tanssi emote.",
+ ['sentrequestto'] = "Lähetä kutsu y",
+ ['nobodyclose'] = "Ei ketään rlähelläw sinua.",
+ ['doyouwanna'] = "yYw hyväksyyksesi, rLw kieltäytyäksesi (g",
+ ['refuseemote'] = "Emote peruutettu.",
+ ['makenearby'] = "tekee lähimmän pelaaja osallistumaan ",
+ ['camera'] = "Paina yGw käyttääksesi kameran salamaa.",
+ ['makeitrain'] = "Paina yGw heittääksesi rahaa.",
+ ['pee'] = "Pidä yGw pissaksesi.",
+ ['spraychamp'] = "Pidä yGw suihkutaaksesi shamppaniaa",
+ ['stun'] = "Paina yGw to 'käytä' etälamautinta.",
+ ['bound'] = "Bindata",
+ ['to'] = 'lle',
+ ['currentlyboundemotes'] = " On jo bindattuna emotehin :",
+ ['notvalidkey'] = "Ei ole käytettävä näppäin.",
+ ['keybinds'] = "🔢 Pikanäppäimet",
+ ['keybindsinfo'] = "Käytä",
+}}
diff --git a/resources/EmoteMenu/NativeUI.lua b/resources/EmoteMenu/NativeUI.lua
index a62f2b56d..3fa972771 100644
--- a/resources/EmoteMenu/NativeUI.lua
+++ b/resources/EmoteMenu/NativeUI.lua
@@ -59,7 +59,7 @@ MenuPool.__index = MenuPool
NativeUI = {}
-CharacterMap = { [' '] = 6, ['!'] = 6, ['"'] = 6, ['#'] = 11,['$'] = 10, ['%'] = 17,['&'] = 13, ['\\'] = 4,['('] = 6, [')'] = 6,['*'] = 7, ['+'] = 10, [','] = 4, ['-'] = 6, ['.'] = 4, ['/'] = 7, ['0'] = 12, ['1'] = 7, ['2'] = 11, ['3'] = 11, ['4'] = 11, ['5'] = 11, ['6'] = 12, ['7'] = 10, ['8'] = 11, ['9'] = 11, [':'] = 5, [';'] = 4, ['<'] = 9, ['='] = 9, ['>'] = 9, ['?'] = 10, ['@'] = 15, ['A'] = 12, ['B'] = 13, ['C'] = 14, ['D'] = 14, ['E'] = 12, ['F'] = 12, ['G'] = 15, ['H'] = 14, ['I'] = 5, ['J'] = 11, ['K'] = 13, ['L'] = 11, ['M'] = 16, ['N'] = 14, ['O'] = 16, ['P'] = 12, ['Q'] = 15, ['R'] = 13, ['S'] = 12, ['T'] = 11, ['U'] = 13, ['V'] = 12, ['W'] = 18, ['X'] = 11, ['Y'] = 11, ['Z'] = 12, ['['] = 6, [']'] = 6, ['^'] = 9, ['_'] = 18, ['`'] = 8, ['a'] = 11, ['b'] = 12, ['c'] = 11, ['d'] = 12, ['e'] = 12, ['f'] = 5, ['g'] = 13, ['h'] = 11, ['i'] = 4, ['j'] = 4, ['k'] = 10, ['l'] = 4, ['m'] = 18, ['n'] = 11, ['o'] = 12, ['p'] = 12, ['q'] = 12, ['r'] = 7, ['s'] = 9, ['t'] = 5, ['u'] = 11, ['v'] = 10, ['w'] = 14, ['x'] = 9, ['y'] = 10, ['z'] = 9, ['{'] = 6, ['|'] = 3, ['}'] = 6 }
+CharacterMap = { [' '] = 6, ['!'] = 6, ['"'] = 6, ['#'] = 11, ['$'] = 10, ['%'] = 17, ['&'] = 13, ['\\'] = 4, ['('] = 6, [')'] = 6, ['*'] = 7, ['+'] = 10, [','] = 4, ['-'] = 6, ['.'] = 4, ['/'] = 7, ['0'] = 12, ['1'] = 7, ['2'] = 11, ['3'] = 11, ['4'] = 11, ['5'] = 11, ['6'] = 12, ['7'] = 10, ['8'] = 11, ['9'] = 11, [':'] = 5, [';'] = 4, ['<'] = 9, ['='] = 9, ['>'] = 9, ['?'] = 10, ['@'] = 15, ['A'] = 12, ['B'] = 13, ['C'] = 14, ['D'] = 14, ['E'] = 12, ['F'] = 12, ['G'] = 15, ['H'] = 14, ['I'] = 5, ['J'] = 11, ['K'] = 13, ['L'] = 11, ['M'] = 16, ['N'] = 14, ['O'] = 16, ['P'] = 12, ['Q'] = 15, ['R'] = 13, ['S'] = 12, ['T'] = 11, ['U'] = 13, ['V'] = 12, ['W'] = 18, ['X'] = 11, ['Y'] = 11, ['Z'] = 12, ['['] = 6, [']'] = 6, ['^'] = 9, ['_'] = 18, ['`'] = 8, ['a'] = 11, ['b'] = 12, ['c'] = 11, ['d'] = 12, ['e'] = 12, ['f'] = 5, ['g'] = 13, ['h'] = 11, ['i'] = 4, ['j'] = 4, ['k'] = 10, ['l'] = 4, ['m'] = 18, ['n'] = 11, ['o'] = 12, ['p'] = 12, ['q'] = 12, ['r'] = 7, ['s'] = 9, ['t'] = 5, ['u'] = 11, ['v'] = 10, ['w'] = 14, ['x'] = 9, ['y'] = 10, ['z'] = 9, ['{'] = 6, ['|'] = 3, ['}'] = 6 }
BadgeStyle = { None = 0, BronzeMedal = 1, GoldMedal = 2, SilverMedal = 3, Alert = 4, Crown = 5, Ammo = 6, Armour = 7, Barber = 8, Clothes = 9, Franklin = 10, Bike = 11, Car = 12, Gun = 13, Heart = 14, Makeup = 15, Mask = 16, Michael = 17, Star = 18, Tattoo = 19, Trevor = 20, Lock = 21, Tick = 22 }
@@ -72,7 +72,7 @@ BadgeTexture = {
[5] = function() return "mp_hostcrown" end,
[6] = function(Selected) if Selected then return "shop_ammo_icon_b" else return "shop_ammo_icon_a" end end,
[7] = function(Selected) if Selected then return "shop_armour_icon_b" else return "shop_armour_icon_a" end end,
- [8] = function(Selected) if Selected then return "shop_barber_icon_b" else return "shop_barber_icon_a" end end,
+ [8] = function(Selected) if Selected then return "shop_barber_icon_b" else return "shop_barber_icon_a" end end,
[9] = function(Selected) if Selected then return "shop_clothing_icon_b" else return "shop_clothing_icon_a" end end,
[10] = function(Selected) if Selected then return "shop_franklin_icon_b" else return "shop_franklin_icon_a" end end,
[11] = function(Selected) if Selected then return "shop_garage_bike_icon_b" else return "shop_garage_bike_icon_a" end end,
@@ -102,226 +102,226 @@ BadgeDictionary = {
BadgeColour = {
[5] = function(Selected) if Selected then return 0, 0, 0, 255 else return 255, 255, 255, 255 end end,
[21] = function(Selected) if Selected then return 0, 0, 0, 255 else return 255, 255, 255, 255 end end,
- [22] = function(Selected) if Selected then return 0, 0, 0, 255 else return 255, 255, 255, 255 end end,
+ [22] = function(Selected) if Selected then return 0, 0, 0, 255 else return 255, 255, 255, 255 end end,
}
Colours = {
- PureWhite = {255, 255, 255, 255},
- White = {240, 240, 240, 255},
- Black = {0, 0, 0, 255},
- Grey = {155, 155, 155, 255},
- GreyLight = {205, 205, 205, 255},
- GreyDark = {77, 77, 77, 255},
- Red = {224, 50, 50, 255},
- RedLight = {240, 153, 153, 255},
- RedDark = {112, 25, 25, 255},
- Blue = {93, 182, 229, 255},
- BlueLight = {174, 219, 242, 255},
- BlueDark = {47, 92, 115, 255},
- Yellow = {240, 200, 80, 255},
- YellowLight = {254, 235, 169, 255},
- YellowDark = {126, 107, 41, 255},
- Orange = {255, 133, 85, 255},
- OrangeLight = {255, 194, 170, 255},
- OrangeDark = {127, 66, 42, 255},
- Green = {114, 204, 114, 255},
- GreenLight = {185, 230, 185, 255},
- GreenDark = {57, 102, 57, 255},
- Purple = {132, 102, 226, 255},
- PurpleLight = {192, 179, 239, 255},
- PurpleDark = {67, 57, 111, 255},
- Pink = {203, 54, 148, 255},
- RadarHealth = {53, 154, 71, 255},
- RadarArmour = {93, 182, 229, 255},
- RadarDamage = {235, 36, 39, 255},
- NetPlayer1 = {194, 80, 80, 255},
- NetPlayer2 = {156, 110, 175, 255},
- NetPlayer3 = {255, 123, 196, 255},
- NetPlayer4 = {247, 159, 123, 255},
- NetPlayer5 = {178, 144, 132, 255},
- NetPlayer6 = {141, 206, 167, 255},
- NetPlayer7 = {113, 169, 175, 255},
- NetPlayer8 = {211, 209, 231, 255},
- NetPlayer9 = {144, 127, 153, 255},
- NetPlayer10 = {106, 196, 191, 255},
- NetPlayer11 = {214, 196, 153, 255},
- NetPlayer12 = {234, 142, 80, 255},
- NetPlayer13 = {152, 203, 234, 255},
- NetPlayer14 = {178, 98, 135, 255},
- NetPlayer15 = {144, 142, 122, 255},
- NetPlayer16 = {166, 117, 94, 255},
- NetPlayer17 = {175, 168, 168, 255},
- NetPlayer18 = {232, 142, 155, 255},
- NetPlayer19 = {187, 214, 91, 255},
- NetPlayer20 = {12, 123, 86, 255},
- NetPlayer21 = {123, 196, 255, 255},
- NetPlayer22 = {171, 60, 230, 255},
- NetPlayer23 = {206, 169, 13, 255},
- NetPlayer24 = {71, 99, 173, 255},
- NetPlayer25 = {42, 166, 185, 255},
- NetPlayer26 = {186, 157, 125, 255},
- NetPlayer27 = {201, 225, 255, 255},
- NetPlayer28 = {240, 240, 150, 255},
- NetPlayer29 = {237, 140, 161, 255},
- NetPlayer30 = {249, 138, 138, 255},
- NetPlayer31 = {252, 239, 166, 255},
- NetPlayer32 = {240, 240, 240, 255},
- SimpleBlipDefault = {159, 201, 166, 255},
- MenuBlue = {140, 140, 140, 255},
- MenuGreyLight = {140, 140, 140, 255},
- MenuBlueExtraDark = {40, 40, 40, 255},
- MenuYellow = {240, 160, 0, 255},
- MenuYellowDark = {240, 160, 0, 255},
- MenuGreen = {240, 160, 0, 255},
- MenuGrey = {140, 140, 140, 255},
- MenuGreyDark = {60, 60, 60, 255},
- MenuHighlight = {30, 30, 30, 255},
- MenuStandard = {140, 140, 140, 255},
- MenuDimmed = {75, 75, 75, 255},
- MenuExtraDimmed = {50, 50, 50, 255},
- BriefTitle = {95, 95, 95, 255},
- MidGreyMp = {100, 100, 100, 255},
- NetPlayer1Dark = {93, 39, 39, 255},
- NetPlayer2Dark = {77, 55, 89, 255},
- NetPlayer3Dark = {124, 62, 99, 255},
- NetPlayer4Dark = {120, 80, 80, 255},
- NetPlayer5Dark = {87, 72, 66, 255},
- NetPlayer6Dark = {74, 103, 83, 255},
- NetPlayer7Dark = {60, 85, 88, 255},
- NetPlayer8Dark = {105, 105, 64, 255},
- NetPlayer9Dark = {72, 63, 76, 255},
- NetPlayer10Dark = {53, 98, 95, 255},
- NetPlayer11Dark = {107, 98, 76, 255},
- NetPlayer12Dark = {117, 71, 40, 255},
- NetPlayer13Dark = {76, 101, 117, 255},
- NetPlayer14Dark = {65, 35, 47, 255},
- NetPlayer15Dark = {72, 71, 61, 255},
- NetPlayer16Dark = {85, 58, 47, 255},
- NetPlayer17Dark = {87, 84, 84, 255},
- NetPlayer18Dark = {116, 71, 77, 255},
- NetPlayer19Dark = {93, 107, 45, 255},
- NetPlayer20Dark = {6, 61, 43, 255},
- NetPlayer21Dark = {61, 98, 127, 255},
- NetPlayer22Dark = {85, 30, 115, 255},
- NetPlayer23Dark = {103, 84, 6, 255},
- NetPlayer24Dark = {35, 49, 86, 255},
- NetPlayer25Dark = {21, 83, 92, 255},
- NetPlayer26Dark = {93, 98, 62, 255},
- NetPlayer27Dark = {100, 112, 127, 255},
- NetPlayer28Dark = {120, 120, 75, 255},
- NetPlayer29Dark = {152, 76, 93, 255},
- NetPlayer30Dark = {124, 69, 69, 255},
- NetPlayer31Dark = {10, 43, 50, 255},
- NetPlayer32Dark = {95, 95, 10, 255},
- Bronze = {180, 130, 97, 255},
- Silver = {150, 153, 161, 255},
- Gold = {214, 181, 99, 255},
- Platinum = {166, 221, 190, 255},
- Gang1 = {29, 100, 153, 255},
- Gang2 = {214, 116, 15, 255},
- Gang3 = {135, 125, 142, 255},
- Gang4 = {229, 119, 185, 255},
- SameCrew = {252, 239, 166, 255},
- Freemode = {45, 110, 185, 255},
- PauseBg = {0, 0, 0, 255},
- Friendly = {93, 182, 229, 255},
- Enemy = {194, 80, 80, 255},
- Location = {240, 200, 80, 255},
- Pickup = {114, 204, 114, 255},
- PauseSingleplayer = {114, 204, 114, 255},
- FreemodeDark = {22, 55, 92, 255},
- InactiveMission = {154, 154, 154, 255},
- Damage = {194, 80, 80, 255},
- PinkLight = {252, 115, 201, 255},
- PmMitemHighlight = {252, 177, 49, 255},
- ScriptVariable = {0, 0, 0, 255},
- Yoga = {109, 247, 204, 255},
- Tennis = {241, 101, 34, 255},
- Golf = {214, 189, 97, 255},
- ShootingRange = {112, 25, 25, 255},
- FlightSchool = {47, 92, 115, 255},
- NorthBlue = {93, 182, 229, 255},
- SocialClub = {234, 153, 28, 255},
- PlatformBlue = {11, 55, 123, 255},
- PlatformGreen = {146, 200, 62, 255},
- PlatformGrey = {234, 153, 28, 255},
- FacebookBlue = {66, 89, 148, 255},
- IngameBg = {0, 0, 0, 255},
- Darts = {114, 204, 114, 255},
- Waypoint = {164, 76, 242, 255},
- Michael = {101, 180, 212, 255},
- Franklin = {171, 237, 171, 255},
- Trevor = {255, 163, 87, 255},
- GolfP1 = {240, 240, 240, 255},
- GolfP2 = {235, 239, 30, 255},
- GolfP3 = {255, 149, 14, 255},
- GolfP4 = {246, 60, 161, 255},
- WaypointLight = {210, 166, 249, 255},
- WaypointDark = {82, 38, 121, 255},
- PanelLight = {0, 0, 0, 255},
- MichaelDark = {72, 103, 116, 255},
- FranklinDark = {85, 118, 85, 255},
- TrevorDark = {127, 81, 43, 255},
- ObjectiveRoute = {240, 200, 80, 255},
- PausemapTint = {0, 0, 0, 255},
- PauseDeselect = {100, 100, 100, 255},
- PmWeaponsPurchasable = {45, 110, 185, 255},
- PmWeaponsLocked = {240, 240, 240, 255},
- ScreenBg = {0, 0, 0, 255},
- Chop = {224, 50, 50, 255},
- PausemapTintHalf = {0, 0, 0, 255},
- NorthBlueOfficial = {0, 71, 133, 255},
- ScriptVariable2 = {0, 0, 0, 255},
- H = {33, 118, 37, 255},
- HDark = {37, 102, 40, 255},
- T = {234, 153, 28, 255},
- TDark = {225, 140, 8, 255},
- HShard = {20, 40, 0, 255},
- ControllerMichael = {48, 255, 255, 255},
- ControllerFranklin = {48, 255, 0, 255},
- ControllerTrevor = {176, 80, 0, 255},
- ControllerChop = {127, 0, 0, 255},
- VideoEditorVideo = {53, 166, 224, 255},
- VideoEditorAudio = {162, 79, 157, 255},
- VideoEditorText = {104, 192, 141, 255},
- HbBlue = {29, 100, 153, 255},
- HbYellow = {234, 153, 28, 255},
- VideoEditorScore = {240, 160, 1, 255},
- VideoEditorAudioFadeout = {59, 34, 57, 255},
- VideoEditorTextFadeout = {41, 68, 53, 255},
- VideoEditorScoreFadeout = {82, 58, 10, 255},
- HeistBackground = {37, 102, 40, 255},
- VideoEditorAmbient = {240, 200, 80, 255},
- VideoEditorAmbientFadeout = {80, 70, 34, 255},
- Gb = {255, 133, 85, 255},
- G = {255, 194, 170, 255},
- B = {255, 133, 85, 255},
- LowFlow = {240, 200, 80, 255},
- LowFlowDark = {126, 107, 41, 255},
- G1 = {247, 159, 123, 255},
- G2 = {226, 134, 187, 255},
- G3 = {239, 238, 151, 255},
- G4 = {113, 169, 175, 255},
- G5 = {160, 140, 193, 255},
- G6 = {141, 206, 167, 255},
- G7 = {181, 214, 234, 255},
- G8 = {178, 144, 132, 255},
- G9 = {0, 132, 114, 255},
- G10 = {216, 85, 117, 255},
- G11 = {30, 100, 152, 255},
- G12 = {43, 181, 117, 255},
- G13 = {233, 141, 79, 255},
- G14 = {137, 210, 215, 255},
- G15 = {134, 125, 141, 255},
- Adversary = {109, 34, 33, 255},
- DegenRed = {255, 0, 0, 255},
- DegenYellow = {255, 255, 0, 255},
- DegenGreen = {0, 255, 0, 255},
- DegenCyan = {0, 255, 255, 255},
- DegenBlue = {0, 0, 255, 255},
- DegenMagenta = {255, 0, 255, 255},
- Stunt1 = {38, 136, 234, 255},
- Stunt2 = {224, 50, 50, 255},
+ PureWhite = { 255, 255, 255, 255 },
+ White = { 240, 240, 240, 255 },
+ Black = { 0, 0, 0, 255 },
+ Grey = { 155, 155, 155, 255 },
+ GreyLight = { 205, 205, 205, 255 },
+ GreyDark = { 77, 77, 77, 255 },
+ Red = { 224, 50, 50, 255 },
+ RedLight = { 240, 153, 153, 255 },
+ RedDark = { 112, 25, 25, 255 },
+ Blue = { 93, 182, 229, 255 },
+ BlueLight = { 174, 219, 242, 255 },
+ BlueDark = { 47, 92, 115, 255 },
+ Yellow = { 240, 200, 80, 255 },
+ YellowLight = { 254, 235, 169, 255 },
+ YellowDark = { 126, 107, 41, 255 },
+ Orange = { 255, 133, 85, 255 },
+ OrangeLight = { 255, 194, 170, 255 },
+ OrangeDark = { 127, 66, 42, 255 },
+ Green = { 114, 204, 114, 255 },
+ GreenLight = { 185, 230, 185, 255 },
+ GreenDark = { 57, 102, 57, 255 },
+ Purple = { 132, 102, 226, 255 },
+ PurpleLight = { 192, 179, 239, 255 },
+ PurpleDark = { 67, 57, 111, 255 },
+ Pink = { 203, 54, 148, 255 },
+ RadarHealth = { 53, 154, 71, 255 },
+ RadarArmour = { 93, 182, 229, 255 },
+ RadarDamage = { 235, 36, 39, 255 },
+ NetPlayer1 = { 194, 80, 80, 255 },
+ NetPlayer2 = { 156, 110, 175, 255 },
+ NetPlayer3 = { 255, 123, 196, 255 },
+ NetPlayer4 = { 247, 159, 123, 255 },
+ NetPlayer5 = { 178, 144, 132, 255 },
+ NetPlayer6 = { 141, 206, 167, 255 },
+ NetPlayer7 = { 113, 169, 175, 255 },
+ NetPlayer8 = { 211, 209, 231, 255 },
+ NetPlayer9 = { 144, 127, 153, 255 },
+ NetPlayer10 = { 106, 196, 191, 255 },
+ NetPlayer11 = { 214, 196, 153, 255 },
+ NetPlayer12 = { 234, 142, 80, 255 },
+ NetPlayer13 = { 152, 203, 234, 255 },
+ NetPlayer14 = { 178, 98, 135, 255 },
+ NetPlayer15 = { 144, 142, 122, 255 },
+ NetPlayer16 = { 166, 117, 94, 255 },
+ NetPlayer17 = { 175, 168, 168, 255 },
+ NetPlayer18 = { 232, 142, 155, 255 },
+ NetPlayer19 = { 187, 214, 91, 255 },
+ NetPlayer20 = { 12, 123, 86, 255 },
+ NetPlayer21 = { 123, 196, 255, 255 },
+ NetPlayer22 = { 171, 60, 230, 255 },
+ NetPlayer23 = { 206, 169, 13, 255 },
+ NetPlayer24 = { 71, 99, 173, 255 },
+ NetPlayer25 = { 42, 166, 185, 255 },
+ NetPlayer26 = { 186, 157, 125, 255 },
+ NetPlayer27 = { 201, 225, 255, 255 },
+ NetPlayer28 = { 240, 240, 150, 255 },
+ NetPlayer29 = { 237, 140, 161, 255 },
+ NetPlayer30 = { 249, 138, 138, 255 },
+ NetPlayer31 = { 252, 239, 166, 255 },
+ NetPlayer32 = { 240, 240, 240, 255 },
+ SimpleBlipDefault = { 159, 201, 166, 255 },
+ MenuBlue = { 140, 140, 140, 255 },
+ MenuGreyLight = { 140, 140, 140, 255 },
+ MenuBlueExtraDark = { 40, 40, 40, 255 },
+ MenuYellow = { 240, 160, 0, 255 },
+ MenuYellowDark = { 240, 160, 0, 255 },
+ MenuGreen = { 240, 160, 0, 255 },
+ MenuGrey = { 140, 140, 140, 255 },
+ MenuGreyDark = { 60, 60, 60, 255 },
+ MenuHighlight = { 30, 30, 30, 255 },
+ MenuStandard = { 140, 140, 140, 255 },
+ MenuDimmed = { 75, 75, 75, 255 },
+ MenuExtraDimmed = { 50, 50, 50, 255 },
+ BriefTitle = { 95, 95, 95, 255 },
+ MidGreyMp = { 100, 100, 100, 255 },
+ NetPlayer1Dark = { 93, 39, 39, 255 },
+ NetPlayer2Dark = { 77, 55, 89, 255 },
+ NetPlayer3Dark = { 124, 62, 99, 255 },
+ NetPlayer4Dark = { 120, 80, 80, 255 },
+ NetPlayer5Dark = { 87, 72, 66, 255 },
+ NetPlayer6Dark = { 74, 103, 83, 255 },
+ NetPlayer7Dark = { 60, 85, 88, 255 },
+ NetPlayer8Dark = { 105, 105, 64, 255 },
+ NetPlayer9Dark = { 72, 63, 76, 255 },
+ NetPlayer10Dark = { 53, 98, 95, 255 },
+ NetPlayer11Dark = { 107, 98, 76, 255 },
+ NetPlayer12Dark = { 117, 71, 40, 255 },
+ NetPlayer13Dark = { 76, 101, 117, 255 },
+ NetPlayer14Dark = { 65, 35, 47, 255 },
+ NetPlayer15Dark = { 72, 71, 61, 255 },
+ NetPlayer16Dark = { 85, 58, 47, 255 },
+ NetPlayer17Dark = { 87, 84, 84, 255 },
+ NetPlayer18Dark = { 116, 71, 77, 255 },
+ NetPlayer19Dark = { 93, 107, 45, 255 },
+ NetPlayer20Dark = { 6, 61, 43, 255 },
+ NetPlayer21Dark = { 61, 98, 127, 255 },
+ NetPlayer22Dark = { 85, 30, 115, 255 },
+ NetPlayer23Dark = { 103, 84, 6, 255 },
+ NetPlayer24Dark = { 35, 49, 86, 255 },
+ NetPlayer25Dark = { 21, 83, 92, 255 },
+ NetPlayer26Dark = { 93, 98, 62, 255 },
+ NetPlayer27Dark = { 100, 112, 127, 255 },
+ NetPlayer28Dark = { 120, 120, 75, 255 },
+ NetPlayer29Dark = { 152, 76, 93, 255 },
+ NetPlayer30Dark = { 124, 69, 69, 255 },
+ NetPlayer31Dark = { 10, 43, 50, 255 },
+ NetPlayer32Dark = { 95, 95, 10, 255 },
+ Bronze = { 180, 130, 97, 255 },
+ Silver = { 150, 153, 161, 255 },
+ Gold = { 214, 181, 99, 255 },
+ Platinum = { 166, 221, 190, 255 },
+ Gang1 = { 29, 100, 153, 255 },
+ Gang2 = { 214, 116, 15, 255 },
+ Gang3 = { 135, 125, 142, 255 },
+ Gang4 = { 229, 119, 185, 255 },
+ SameCrew = { 252, 239, 166, 255 },
+ Freemode = { 45, 110, 185, 255 },
+ PauseBg = { 0, 0, 0, 255 },
+ Friendly = { 93, 182, 229, 255 },
+ Enemy = { 194, 80, 80, 255 },
+ Location = { 240, 200, 80, 255 },
+ Pickup = { 114, 204, 114, 255 },
+ PauseSingleplayer = { 114, 204, 114, 255 },
+ FreemodeDark = { 22, 55, 92, 255 },
+ InactiveMission = { 154, 154, 154, 255 },
+ Damage = { 194, 80, 80, 255 },
+ PinkLight = { 252, 115, 201, 255 },
+ PmMitemHighlight = { 252, 177, 49, 255 },
+ ScriptVariable = { 0, 0, 0, 255 },
+ Yoga = { 109, 247, 204, 255 },
+ Tennis = { 241, 101, 34, 255 },
+ Golf = { 214, 189, 97, 255 },
+ ShootingRange = { 112, 25, 25, 255 },
+ FlightSchool = { 47, 92, 115, 255 },
+ NorthBlue = { 93, 182, 229, 255 },
+ SocialClub = { 234, 153, 28, 255 },
+ PlatformBlue = { 11, 55, 123, 255 },
+ PlatformGreen = { 146, 200, 62, 255 },
+ PlatformGrey = { 234, 153, 28, 255 },
+ FacebookBlue = { 66, 89, 148, 255 },
+ IngameBg = { 0, 0, 0, 255 },
+ Darts = { 114, 204, 114, 255 },
+ Waypoint = { 164, 76, 242, 255 },
+ Michael = { 101, 180, 212, 255 },
+ Franklin = { 171, 237, 171, 255 },
+ Trevor = { 255, 163, 87, 255 },
+ GolfP1 = { 240, 240, 240, 255 },
+ GolfP2 = { 235, 239, 30, 255 },
+ GolfP3 = { 255, 149, 14, 255 },
+ GolfP4 = { 246, 60, 161, 255 },
+ WaypointLight = { 210, 166, 249, 255 },
+ WaypointDark = { 82, 38, 121, 255 },
+ PanelLight = { 0, 0, 0, 255 },
+ MichaelDark = { 72, 103, 116, 255 },
+ FranklinDark = { 85, 118, 85, 255 },
+ TrevorDark = { 127, 81, 43, 255 },
+ ObjectiveRoute = { 240, 200, 80, 255 },
+ PausemapTint = { 0, 0, 0, 255 },
+ PauseDeselect = { 100, 100, 100, 255 },
+ PmWeaponsPurchasable = { 45, 110, 185, 255 },
+ PmWeaponsLocked = { 240, 240, 240, 255 },
+ ScreenBg = { 0, 0, 0, 255 },
+ Chop = { 224, 50, 50, 255 },
+ PausemapTintHalf = { 0, 0, 0, 255 },
+ NorthBlueOfficial = { 0, 71, 133, 255 },
+ ScriptVariable2 = { 0, 0, 0, 255 },
+ H = { 33, 118, 37, 255 },
+ HDark = { 37, 102, 40, 255 },
+ T = { 234, 153, 28, 255 },
+ TDark = { 225, 140, 8, 255 },
+ HShard = { 20, 40, 0, 255 },
+ ControllerMichael = { 48, 255, 255, 255 },
+ ControllerFranklin = { 48, 255, 0, 255 },
+ ControllerTrevor = { 176, 80, 0, 255 },
+ ControllerChop = { 127, 0, 0, 255 },
+ VideoEditorVideo = { 53, 166, 224, 255 },
+ VideoEditorAudio = { 162, 79, 157, 255 },
+ VideoEditorText = { 104, 192, 141, 255 },
+ HbBlue = { 29, 100, 153, 255 },
+ HbYellow = { 234, 153, 28, 255 },
+ VideoEditorScore = { 240, 160, 1, 255 },
+ VideoEditorAudioFadeout = { 59, 34, 57, 255 },
+ VideoEditorTextFadeout = { 41, 68, 53, 255 },
+ VideoEditorScoreFadeout = { 82, 58, 10, 255 },
+ HeistBackground = { 37, 102, 40, 255 },
+ VideoEditorAmbient = { 240, 200, 80, 255 },
+ VideoEditorAmbientFadeout = { 80, 70, 34, 255 },
+ Gb = { 255, 133, 85, 255 },
+ G = { 255, 194, 170, 255 },
+ B = { 255, 133, 85, 255 },
+ LowFlow = { 240, 200, 80, 255 },
+ LowFlowDark = { 126, 107, 41, 255 },
+ G1 = { 247, 159, 123, 255 },
+ G2 = { 226, 134, 187, 255 },
+ G3 = { 239, 238, 151, 255 },
+ G4 = { 113, 169, 175, 255 },
+ G5 = { 160, 140, 193, 255 },
+ G6 = { 141, 206, 167, 255 },
+ G7 = { 181, 214, 234, 255 },
+ G8 = { 178, 144, 132, 255 },
+ G9 = { 0, 132, 114, 255 },
+ G10 = { 216, 85, 117, 255 },
+ G11 = { 30, 100, 152, 255 },
+ G12 = { 43, 181, 117, 255 },
+ G13 = { 233, 141, 79, 255 },
+ G14 = { 137, 210, 215, 255 },
+ G15 = { 134, 125, 141, 255 },
+ Adversary = { 109, 34, 33, 255 },
+ DegenRed = { 255, 0, 0, 255 },
+ DegenYellow = { 255, 255, 0, 255 },
+ DegenGreen = { 0, 255, 0, 255 },
+ DegenCyan = { 0, 255, 255, 255 },
+ DegenBlue = { 0, 0, 255, 255 },
+ DegenMagenta = { 255, 0, 255, 255 },
+ Stunt1 = { 38, 136, 234, 255 },
+ Stunt2 = { 224, 50, 50, 255 },
}
--[[
@@ -331,7 +331,7 @@ Colours = {
function GetResolution()
local W, H = GetActiveScreenResolution()
- if (W/H) > 3.5 then
+ if (W / H) > 3.5 then
return GetScreenResolution()
else
return W, H
@@ -339,7 +339,7 @@ function GetResolution()
end
function FormatXWYH(Value, Value2)
- return Value/1920, Value2/1080
+ return Value / 1920, Value2 / 1080
end
function math.round(num, numDecimalPlaces)
@@ -348,20 +348,21 @@ end
function tobool(input)
if input == "true" or tonumber(input) == 1 or input == true then
- return true
+ return true
else
- return false
+ return false
end
end
function string.split(inputstr, sep)
if sep == nil then
- sep = "%s"
+ sep = "%s"
end
- local t={} ; i=1
- for str in string.gmatch(inputstr, "([^"..sep.."]+)") do
- t[i] = str
- i = i + 1
+ local t = {};
+ i = 1
+ for str in string.gmatch(inputstr, "([^" .. sep .. "]+)") do
+ t[i] = str
+ i = i + 1
end
return t
@@ -387,7 +388,7 @@ function GetSafeZoneBounds()
local W, H = 1920, 1080
- return {X = math.round(SafeSize * ((W/H) * 5.4)), Y = math.round(SafeSize * 5.4)}
+ return { X = math.round(SafeSize * ((W / H) * 5.4)), Y = math.round(SafeSize * 5.4) }
end
function Controller()
@@ -405,7 +406,7 @@ function UIResRectangle.New(X, Y, Width, Height, R, G, B, A)
Y = tonumber(Y) or 0,
Width = tonumber(Width) or 0,
Height = tonumber(Height) or 0,
- _Colour = {R = tonumber(R) or 255, G = tonumber(G) or 255, B = tonumber(B) or 255, A = tonumber(A) or 255},
+ _Colour = { R = tonumber(R) or 255, G = tonumber(G) or 255, B = tonumber(B) or 255, A = tonumber(A) or 255 },
}
return setmetatable(_UIResRectangle, UIResRectangle)
end
@@ -415,7 +416,7 @@ function UIResRectangle:Position(X, Y)
self.X = tonumber(X)
self.Y = tonumber(Y)
else
- return {X = self.X, Y = self.Y}
+ return { X = self.X, Y = self.Y }
end
end
@@ -424,7 +425,7 @@ function UIResRectangle:Size(Width, Height)
self.Width = tonumber(Width)
self.Height = tonumber(Height)
else
- return {Width = self.Width, Height = self.Height}
+ return { Width = self.Width, Height = self.Height }
end
end
@@ -474,7 +475,7 @@ function GetByteCount(str)
local bytes = 0
for c in str:gmatch("[%z\1-\127\194-\244][\128-\191]*") do
- local a,b,c,d = c:byte(1, -1)
+ local a, b, c, d = c:byte(1, -1)
if a ~= nil then
bytes = bytes + 1
end
@@ -518,7 +519,7 @@ function AddLongStringForUtf8(str)
end
end
AddTextComponentSubstringPlayerName(string.sub(str, startIndex, GetCharacterCount(str) - startIndex))
-end
+end
function AddLongString(str)
local bytecount = GetByteCount(str)
@@ -547,7 +548,7 @@ function UIResText.New(Text, X, Y, Scale, R, G, B, A, Font, Alignment, DropShado
X = tonumber(X) or 0,
Y = tonumber(Y) or 0,
Scale = tonumber(Scale) or 0,
- _Colour = {R = tonumber(R) or 255, G = tonumber(G) or 255, B = tonumber(B) or 255, A = tonumber(A) or 255},
+ _Colour = { R = tonumber(R) or 255, G = tonumber(G) or 255, B = tonumber(B) or 255, A = tonumber(A) or 255 },
Font = tonumber(Font) or 0,
Alignment = Alignment or nil,
DropShadow = Dropshadow or nil,
@@ -562,7 +563,7 @@ function UIResText:Position(X, Y)
self.X = tonumber(X)
self.Y = tonumber(Y)
else
- return {X = self.X, Y = self.Y}
+ return { X = self.X, Y = self.Y }
end
end
@@ -666,10 +667,10 @@ function Sprite.New(TxtDictionary, TxtName, X, Y, Width, Height, Heading, R, G,
TxtName = tostring(TxtName),
X = tonumber(X) or 0,
Y = tonumber(Y) or 0,
- Width = tonumber(Width) or 0,
+ Width = tonumber(Width) or 0,
Height = tonumber(Height) or 0,
Heading = tonumber(Heading) or 0,
- _Colour = {R = tonumber(R) or 255, G = tonumber(G) or 255, B = tonumber(B) or 255, A = tonumber(A) or 255},
+ _Colour = { R = tonumber(R) or 255, G = tonumber(G) or 255, B = tonumber(B) or 255, A = tonumber(A) or 255 },
}
return setmetatable(_Sprite, Sprite)
end
@@ -679,7 +680,7 @@ function Sprite:Position(X, Y)
self.X = tonumber(X)
self.Y = tonumber(Y)
else
- return {X = self.X, Y = self.Y}
+ return { X = self.X, Y = self.Y }
end
end
@@ -688,7 +689,7 @@ function Sprite:Size(Width, Height)
self.Width = tonumber(Width)
self.Height = tonumber(Height)
else
- return {Width = self.Width, Height = self.Height}
+ return { Width = self.Width, Height = self.Height }
end
end
@@ -784,17 +785,17 @@ function UIMenuItem.New(Text, Description)
Text = UIResText.New(tostring(Text) or "", 8, 0, 0.33, 245, 245, 245, 255, 0),
_Description = tostring(Description) or "";
SelectedSprite = Sprite.New("commonmenu", "gradient_nav", 0, 0, 431, 38),
- LeftBadge = { Sprite = Sprite.New("commonmenu", "", 0, 0, 40, 40), Badge = 0},
- RightBadge = { Sprite = Sprite.New("commonmenu", "", 0, 0, 40, 40), Badge = 0},
+ LeftBadge = { Sprite = Sprite.New("commonmenu", "", 0, 0, 40, 40), Badge = 0 },
+ RightBadge = { Sprite = Sprite.New("commonmenu", "", 0, 0, 40, 40), Badge = 0 },
Label = {
Text = UIResText.New("", 0, 0, 0.35, 245, 245, 245, 255, 0, "Right"),
- MainColour = {R = 255, G = 255, B = 255, A = 255},
- HighlightColour = {R = 0, G = 0, B = 0, A = 255},
+ MainColour = { R = 255, G = 255, B = 255, A = 255 },
+ HighlightColour = { R = 0, G = 0, B = 0, A = 255 },
},
_Selected = false,
_Hovered = false,
_Enabled = true,
- _Offset = {X = 0, Y = 0},
+ _Offset = { X = 0, Y = 0 },
ParentMenu = nil,
Panels = {},
Activated = function(menu, item, panels) end,
@@ -1463,8 +1464,8 @@ function UIMenuSliderItem:Draw()
self.LeftArrow:Colour(163, 159, 148, 255)
self.RightArrow:Colour(163, 159, 148, 255)
end
-
- local Offset = ((self.Background.Width - self.Slider.Width)/(#self.Items - 1)) * (self._Index-1)
+
+ local Offset = ((self.Background.Width - self.Slider.Width) / (#self.Items - 1)) * (self._Index - 1)
self.Slider:Position(250 + self.Base._Offset.X + Offset + self.Base.ParentMenu.WidthOffset, self.Slider.Y)
@@ -1486,8 +1487,8 @@ end
--]]
function UIMenuColouredItem.New(Text, Description, MainColour, HighlightColour)
- if type(Colour) ~= "table" then Colour = {R = 0, G = 0, B = 0, A = 255} end
- if type(HighlightColour) ~= "table" then Colour = {R = 255, G = 255, B = 255, A = 255} end
+ if type(Colour) ~= "table" then Colour = { R = 0, G = 0, B = 0, A = 255 } end
+ if type(HighlightColour) ~= "table" then Colour = { R = 255, G = 255, B = 255, A = 255 } end
local _UIMenuColouredItem = {
Base = UIMenuItem.New(Text or "", Description or ""),
Rectangle = UIResRectangle.New(0, 0, 431, 38, MainColour.R, MainColour.G, MainColour.B, MainColour.A),
@@ -1625,12 +1626,12 @@ function UIMenuProgressItem.New(Text, Items, Index, Description, Counter)
_UIMenuProgressItem.Base.SelectedSprite.Height = 60
if _UIMenuProgressItem.Data.Counter then
- _UIMenuProgressItem.Base:RightLabel(_UIMenuProgressItem.Data.Index.."/"..#_UIMenuProgressItem.Data.Items)
+ _UIMenuProgressItem.Base:RightLabel(_UIMenuProgressItem.Data.Index .. "/" .. #_UIMenuProgressItem.Data.Items)
else
_UIMenuProgressItem.Base:RightLabel((type(_UIMenuProgressItem.Data.Items[_UIMenuProgressItem.Data.Index]) == "table") and tostring(_UIMenuProgressItem.Data.Items[_UIMenuProgressItem.Data.Index].Name) or tostring(_UIMenuProgressItem.Data.Items[_UIMenuProgressItem.Data.Index]))
end
- _UIMenuProgressItem.Bar.Width = _UIMenuProgressItem.Data.Index/#_UIMenuProgressItem.Data.Items * _UIMenuProgressItem.Data.Max
+ _UIMenuProgressItem.Bar.Width = _UIMenuProgressItem.Data.Index / #_UIMenuProgressItem.Data.Items * _UIMenuProgressItem.Data.Max
return setmetatable(_UIMenuProgressItem, UIMenuProgressItem)
end
@@ -1715,12 +1716,12 @@ function UIMenuProgressItem:Index(Index)
end
if self.Data.Counter then
- self.Base:RightLabel(self.Data.Index.."/"..#self.Data.Items)
+ self.Base:RightLabel(self.Data.Index .. "/" .. #self.Data.Items)
else
self.Base:RightLabel((type(self.Data.Items[self.Data.Index]) == "table") and tostring(self.Data.Items[self.Data.Index].Name) or tostring(self.Data.Items[self.Data.Index]))
end
- self.Bar.Width = self.Data.Index/#self.Data.Items * self.Data.Max
+ self.Bar.Width = self.Data.Index / #self.Data.Items * self.Data.Max
else
return self.Data.Index
end
@@ -1759,7 +1760,7 @@ end
function UIMenuProgressItem:CalculateProgress(CursorX)
local Progress = CursorX - self.Bar.X
- self:Index(math.round(#self.Data.Items * (((Progress >= 0 and Progress <= self.Data.Max) and Progress or ((Progress < 0) and 0 or self.Data.Max))/self.Data.Max)))
+ self:Index(math.round(#self.Data.Items * (((Progress >= 0 and Progress <= self.Data.Max) and Progress or ((Progress < 0) and 0 or self.Data.Max)) / self.Data.Max)))
end
function UIMenuProgressItem:Draw()
@@ -1789,11 +1790,11 @@ function UIMenuHeritageWindow.New(Mum, Dad)
if not (Dad >= 0 and Dad <= 23) then Dad = 0 end
_UIMenuHeritageWindow = {
Background = Sprite.New("pause_menu_pages_char_mom_dad", "mumdadbg", 0, 0, 431, 228), -- Background is required, must be a sprite or a rectangle.
- MumSprite = Sprite.New("char_creator_portraits", ((Mum < 21) and "female_"..Mum or "special_female_"..(tonumber(string.sub(Mum, 2, 2)) - 1)), 0, 0, 228, 228),
- DadSprite = Sprite.New("char_creator_portraits", ((Dad < 21) and "male_"..Dad or "special_male_"..(tonumber(string.sub(Dad, 2, 2)) - 1)), 0, 0, 228, 228),
+ MumSprite = Sprite.New("char_creator_portraits", ((Mum < 21) and "female_" .. Mum or "special_female_" .. (tonumber(string.sub(Mum, 2, 2)) - 1)), 0, 0, 228, 228),
+ DadSprite = Sprite.New("char_creator_portraits", ((Dad < 21) and "male_" .. Dad or "special_male_" .. (tonumber(string.sub(Dad, 2, 2)) - 1)), 0, 0, 228, 228),
Mum = Mum,
Dad = Dad,
- _Offset = {X = 0, Y = 0}, -- required
+ _Offset = { X = 0, Y = 0 }, -- required
ParentMenu = nil, -- required
}
return setmetatable(_UIMenuHeritageWindow, UIMenuHeritageWindow)
@@ -1823,8 +1824,8 @@ end
function UIMenuHeritageWindow:Position(Y) -- required
if tonumber(Y) then
self.Background:Position(self._Offset.X, 144 + Y + self._Offset.Y)
- self.MumSprite:Position(self._Offset.X + (self.ParentMenu.WidthOffset/2) + 25, 144 + Y + self._Offset.Y)
- self.DadSprite:Position(self._Offset.X + (self.ParentMenu.WidthOffset/2) + 195, 144 + Y + self._Offset.Y)
+ self.MumSprite:Position(self._Offset.X + (self.ParentMenu.WidthOffset / 2) + 25, 144 + Y + self._Offset.Y)
+ self.DadSprite:Position(self._Offset.X + (self.ParentMenu.WidthOffset / 2) + 195, 144 + Y + self._Offset.Y)
end
end
@@ -1837,8 +1838,8 @@ function UIMenuHeritageWindow:Index(Mum, Dad)
self.Mum = Mum
self.Dad = Dad
- self.MumSprite.TxtName = ((self.Mum < 21) and "female_"..self.Mum or "special_female_"..(tonumber(string.sub(Mum, 2, 2)) - 1))
- self.DadSprite.TxtName = ((self.Dad < 21) and "male_"..self.Dad or "special_male_"..(tonumber(string.sub(Dad, 2, 2)) - 1))
+ self.MumSprite.TxtName = ((self.Mum < 21) and "female_" .. self.Mum or "special_female_" .. (tonumber(string.sub(Mum, 2, 2)) - 1))
+ self.DadSprite.TxtName = ((self.Dad < 21) and "male_" .. self.Dad or "special_male_" .. (tonumber(string.sub(Dad, 2, 2)) - 1))
end
function UIMenuHeritageWindow:Draw() -- required
@@ -1864,8 +1865,8 @@ function UIMenuGridPanel.New(TopText, LeftText, RightText, BottomText)
},
Background = Sprite.New("commonmenu", "gradient_bgd", 0, 0, 431, 275),
Grid = Sprite.New("pause_menu_pages_char_mom_dad", "nose_grid", 0, 0, 200, 200, 0),
- Circle = Sprite.New("mpinventory","in_world_circle", 0, 0, 20, 20, 0),
- Audio = {Slider = "CONTINUOUS_SLIDER", Library = "HUD_FRONTEND_DEFAULT_SOUNDSET", Id = nil},
+ Circle = Sprite.New("mpinventory", "in_world_circle", 0, 0, 20, 20, 0),
+ Audio = { Slider = "CONTINUOUS_SLIDER", Library = "HUD_FRONTEND_DEFAULT_SOUNDSET", Id = nil },
ParentItem = nil,
Text = {
Top = UIResText.New(TopText or "Top", 0, 0, 0.35, 255, 255, 255, 255, 0, "Centre"),
@@ -1895,23 +1896,23 @@ end
function UIMenuGridPanel:CirclePosition(X, Y)
if tonumber(X) and tonumber(Y) then
- self.Circle.X = (self.Grid.X + 20) + ((self.Grid.Width - 40) * ((X >= 0.0 and X <= 1.0) and X or 0.0)) - (self.Circle.Width/2)
- self.Circle.Y = (self.Grid.Y + 20) + ((self.Grid.Height - 40) * ((Y >= 0.0 and Y <= 1.0) and Y or 0.0)) - (self.Circle.Height/2)
+ self.Circle.X = (self.Grid.X + 20) + ((self.Grid.Width - 40) * ((X >= 0.0 and X <= 1.0) and X or 0.0)) - (self.Circle.Width / 2)
+ self.Circle.Y = (self.Grid.Y + 20) + ((self.Grid.Height - 40) * ((Y >= 0.0 and Y <= 1.0) and Y or 0.0)) - (self.Circle.Height / 2)
else
- return math.round((self.Circle.X - (self.Grid.X + 20) + (self.Circle.Width/2))/(self.Grid.Width - 40), 2), math.round((self.Circle.Y - (self.Grid.Y + 20) + (self.Circle.Height/2))/(self.Grid.Height - 40), 2)
+ return math.round((self.Circle.X - (self.Grid.X + 20) + (self.Circle.Width / 2)) / (self.Grid.Width - 40), 2), math.round((self.Circle.Y - (self.Grid.Y + 20) + (self.Circle.Height / 2)) / (self.Grid.Height - 40), 2)
end
end
function UIMenuGridPanel:Position(Y) -- required
if tonumber(Y) then
local ParentOffsetX, ParentOffsetWidth = self.ParentItem:Offset().X, self.ParentItem:SetParentMenu().WidthOffset
-
+
self.Background:Position(ParentOffsetX, Y)
- self.Grid:Position(ParentOffsetX + 115.5 + (ParentOffsetWidth/2), 37.5 + Y)
- self.Text.Top:Position(ParentOffsetX + 215.5 + (ParentOffsetWidth/2), 5 + Y)
- self.Text.Left:Position(ParentOffsetX + 57.75 + (ParentOffsetWidth/2), 120 + Y)
- self.Text.Right:Position(ParentOffsetX + 373.25 + (ParentOffsetWidth/2), 120 + Y)
- self.Text.Bottom:Position(ParentOffsetX + 215.5 + (ParentOffsetWidth/2), 240 + Y)
+ self.Grid:Position(ParentOffsetX + 115.5 + (ParentOffsetWidth / 2), 37.5 + Y)
+ self.Text.Top:Position(ParentOffsetX + 215.5 + (ParentOffsetWidth / 2), 5 + Y)
+ self.Text.Left:Position(ParentOffsetX + 57.75 + (ParentOffsetWidth / 2), 120 + Y)
+ self.Text.Right:Position(ParentOffsetX + 373.25 + (ParentOffsetWidth / 2), 120 + Y)
+ self.Text.Bottom:Position(ParentOffsetX + 215.5 + (ParentOffsetWidth / 2), 240 + Y)
if not self.CircleLocked then
self.CircleLocked = true
@@ -1925,7 +1926,7 @@ function UIMenuGridPanel:UpdateParent(X, Y)
if ParentType == "UIMenuListItem" then
local PanelItemIndex = self.ParentItem:FindPanelItem()
if PanelItemIndex then
- self.ParentItem.Items[PanelItemIndex].Value[self.ParentItem:FindPanelIndex(self)] = {X = X, Y = Y}
+ self.ParentItem.Items[PanelItemIndex].Value[self.ParentItem:FindPanelIndex(self)] = { X = X, Y = Y }
self.ParentItem:Index(PanelItemIndex)
self.ParentItem.Base.ParentMenu.OnListChange(self.ParentItem.Base.ParentMenu, self.ParentItem, self.ParentItem._Index)
self.ParentItem.OnListChanged(self.ParentItem.Base.ParentMenu, self.ParentItem, self.ParentItem._Index)
@@ -1934,23 +1935,23 @@ function UIMenuGridPanel:UpdateParent(X, Y)
for Index = 1, #self.ParentItem.Items do
if type(self.ParentItem.Items[Index]) == "table" then
if not self.ParentItem.Items[Index].Panels then self.ParentItem.Items[Index].Panels = {} end
- self.ParentItem.Items[Index].Panels[PanelIndex] = {X = X, Y = Y}
+ self.ParentItem.Items[Index].Panels[PanelIndex] = { X = X, Y = Y }
else
- self.ParentItem.Items[Index] = {Name = tostring(self.ParentItem.Items[Index]), Value = self.ParentItem.Items[Index], Panels = {[PanelIndex] = {X = X, Y = Y}}}
+ self.ParentItem.Items[Index] = { Name = tostring(self.ParentItem.Items[Index]), Value = self.ParentItem.Items[Index], Panels = { [PanelIndex] = { X = X, Y = Y } } }
end
end
self.ParentItem.Base.ParentMenu.OnListChange(self.ParentItem.Base.ParentMenu, self.ParentItem, self.ParentItem._Index)
- self.ParentItem.OnListChanged(self.ParentItem.Base.ParentMenu, self.ParentItem, self.ParentItem._Index)
+ self.ParentItem.OnListChanged(self.ParentItem.Base.ParentMenu, self.ParentItem, self.ParentItem._Index)
end
elseif ParentType == "UIMenuItem" then
- self.ParentItem.ActivatedPanel(self.ParentItem.ParentMenu, self.ParentItem, self, {X = X, Y = Y})
+ self.ParentItem.ActivatedPanel(self.ParentItem.ParentMenu, self.ParentItem, self, { X = X, Y = Y })
end
end
function UIMenuGridPanel:Functions()
- local SafeZone = {X = 0, Y = 0}
+ local SafeZone = { X = 0, Y = 0 }
if self.ParentItem:SetParentMenu().Settings.ScaleWithSafezone then
- SafeZone = GetSafeZoneBounds()
+ SafeZone = GetSafeZoneBounds()
end
if IsMouseInBounds(self.Grid.X + 20 + SafeZone.X, self.Grid.Y + 20 + SafeZone.Y, self.Grid.Width - 40, self.Grid.Height - 40) then
@@ -1962,9 +1963,9 @@ function UIMenuGridPanel:Functions()
PlaySoundFrontend(self.Audio.Id, self.Audio.Slider, self.Audio.Library, 1)
while IsDisabledControlPressed(0, 24) and IsMouseInBounds(self.Grid.X + 20 + SafeZone.X, self.Grid.Y + 20 + SafeZone.Y, self.Grid.Width - 40, self.Grid.Height - 40) do
Citizen.Wait(0)
- local CursorX, CursorY = math.round(GetControlNormal(0, 239) * 1920) - SafeZone.X - (self.Circle.Width/2), math.round(GetControlNormal(0, 240) * 1080) - SafeZone.Y - (self.Circle.Height/2)
+ local CursorX, CursorY = math.round(GetControlNormal(0, 239) * 1920) - SafeZone.X - (self.Circle.Width / 2), math.round(GetControlNormal(0, 240) * 1080) - SafeZone.Y - (self.Circle.Height / 2)
- self.Circle:Position(((CursorX > (self.Grid.X + 10 + self.Grid.Width - 40)) and (self.Grid.X + 10 + self.Grid.Width - 40) or ((CursorX < (self.Grid.X + 20 - (self.Circle.Width/2))) and (self.Grid.X + 20 - (self.Circle.Width/2)) or CursorX)), ((CursorY > (self.Grid.Y + 10 + self.Grid.Height - 40)) and (self.Grid.Y + 10 + self.Grid.Height - 40) or ((CursorY < (self.Grid.Y + 20 - (self.Circle.Height/2))) and (self.Grid.Y + 20 - (self.Circle.Height/2)) or CursorY)))
+ self.Circle:Position(((CursorX > (self.Grid.X + 10 + self.Grid.Width - 40)) and (self.Grid.X + 10 + self.Grid.Width - 40) or ((CursorX < (self.Grid.X + 20 - (self.Circle.Width / 2))) and (self.Grid.X + 20 - (self.Circle.Width / 2)) or CursorX)), ((CursorY > (self.Grid.Y + 10 + self.Grid.Height - 40)) and (self.Grid.Y + 10 + self.Grid.Height - 40) or ((CursorY < (self.Grid.Y + 20 - (self.Circle.Height / 2))) and (self.Grid.Y + 20 - (self.Circle.Height / 2)) or CursorY)))
end
StopSound(self.Audio.Id)
ReleaseSoundId(self.Audio.Id)
@@ -1973,7 +1974,7 @@ function UIMenuGridPanel:Functions()
Citizen.CreateThread(function()
while IsDisabledControlPressed(0, 24) and IsMouseInBounds(self.Grid.X + 20 + SafeZone.X, self.Grid.Y + 20 + SafeZone.Y, self.Grid.Width - 40, self.Grid.Height - 40) do
Citizen.Wait(75)
- local ResultX, ResultY = math.round((self.Circle.X - (self.Grid.X + 20) + (self.Circle.Width/2))/(self.Grid.Width - 40), 2), math.round((self.Circle.Y - (self.Grid.Y + 20) + (self.Circle.Height/2))/(self.Grid.Height - 40), 2)
+ local ResultX, ResultY = math.round((self.Circle.X - (self.Grid.X + 20) + (self.Circle.Width / 2)) / (self.Grid.Width - 40), 2), math.round((self.Circle.Y - (self.Grid.Y + 20) + (self.Circle.Height / 2)) / (self.Grid.Height - 40), 2)
self:UpdateParent((((ResultX >= 0.0 and ResultX <= 1.0) and ResultX or ((ResultX <= 0) and 0.0) or 1.0) * 2) - 1, (((ResultY >= 0.0 and ResultY <= 1.0) and ResultY or ((ResultY <= 0) and 0.0) or 1.0) * 2) - 1)
end
@@ -2026,7 +2027,7 @@ function UIMenuColourPanel.New(Title, Colours)
LeftArrow = Sprite.New("commonmenu", "arrowleft", 0, 0, 30, 30),
RightArrow = Sprite.New("commonmenu", "arrowright", 0, 0, 30, 30),
SelectedRectangle = UIResRectangle.New(0, 0, 44.5, 8),
- Text = UIResText.New(Title.." (1 of "..#Colours..")" or "Title".." (1 of "..#Colours..")", 0, 0, 0.35, 255, 255, 255, 255, 0, "Centre"),
+ Text = UIResText.New(Title .. " (1 of " .. #Colours .. ")" or "Title" .. " (1 of " .. #Colours .. ")", 0, 0, 0.35, 255, 255, 255, 255, 0, "Centre"),
ParentItem = nil,
}
@@ -2068,12 +2069,12 @@ function UIMenuColourPanel:Position(Y) -- required
self.Background:Position(ParentOffsetX, Y)
for Index = 1, #self.Bar do
- self.Bar[Index]:Position(15 + (44.5 * (Index - 1)) + ParentOffsetX + (ParentOffsetWidth/2), 55 + Y)
+ self.Bar[Index]:Position(15 + (44.5 * (Index - 1)) + ParentOffsetX + (ParentOffsetWidth / 2), 55 + Y)
end
- self.SelectedRectangle:Position(15 + (44.5 * ((self:CurrentSelection() - self.Data.Pagination.Min) - 1)) + ParentOffsetX + (ParentOffsetWidth/2), 47 + Y)
- self.LeftArrow:Position(7.5 + ParentOffsetX + (ParentOffsetWidth/2), 15 + Y)
- self.RightArrow:Position(393.5 + ParentOffsetX + (ParentOffsetWidth/2), 15 + Y)
- self.Text:Position(215.5 + ParentOffsetX + (ParentOffsetWidth/2), 15 + Y)
+ self.SelectedRectangle:Position(15 + (44.5 * ((self:CurrentSelection() - self.Data.Pagination.Min) - 1)) + ParentOffsetX + (ParentOffsetWidth / 2), 47 + Y)
+ self.LeftArrow:Position(7.5 + ParentOffsetX + (ParentOffsetWidth / 2), 15 + Y)
+ self.RightArrow:Position(393.5 + ParentOffsetX + (ParentOffsetWidth / 2), 15 + Y)
+ self.Text:Position(215.5 + ParentOffsetX + (ParentOffsetWidth / 2), 15 + Y)
end
end
@@ -2123,11 +2124,11 @@ function UIMenuColourPanel:UpdateParent(Colour)
if not self.ParentItem.Items[Index].Panels then self.ParentItem.Items[Index].Panels = {} end
self.ParentItem.Items[Index].Panels[PanelIndex] = Colour
else
- self.ParentItem.Items[Index] = {Name = tostring(self.ParentItem.Items[Index]), Value = self.ParentItem.Items[Index], Panels = {[PanelIndex] = Colour}}
+ self.ParentItem.Items[Index] = { Name = tostring(self.ParentItem.Items[Index]), Value = self.ParentItem.Items[Index], Panels = { [PanelIndex] = Colour } }
end
end
self.ParentItem.Base.ParentMenu.OnListChange(self.ParentItem.Base.ParentMenu, self.ParentItem, self.ParentItem._Index)
- self.ParentItem.OnListChanged(self.ParentItem.Base.ParentMenu, self.ParentItem, self.ParentItem._Index)
+ self.ParentItem.OnListChanged(self.ParentItem.Base.ParentMenu, self.ParentItem, self.ParentItem._Index)
end
elseif ParentType == "UIMenuItem" then
self.ParentItem.ActivatedPanel(self.ParentItem.ParentMenu, self.ParentItem, self, Colour)
@@ -2143,14 +2144,14 @@ function UIMenuColourPanel:UpdateSelection(PreventUpdate)
for Index = 1, 9 do
self.Bar[Index]:Colour(table.unpack(self.Data.Items[self.Data.Pagination.Min + Index]))
end
- self.Text:Text(self.Data.Title.." ("..CurrentSelection.." of "..#self.Data.Items..")")
+ self.Text:Text(self.Data.Title .. " (" .. CurrentSelection .. " of " .. #self.Data.Items .. ")")
end
function UIMenuColourPanel:Functions()
- local SafeZone = {X = 0, Y = 0}
+ local SafeZone = { X = 0, Y = 0 }
if self.ParentItem:SetParentMenu().Settings.ScaleWithSafezone then
- SafeZone = GetSafeZoneBounds()
+ SafeZone = GetSafeZoneBounds()
end
@@ -2254,7 +2255,7 @@ function UIMenuPercentagePanel.New(MinText, MaxText)
Max = UIResText.New("100%", 0, 0, 0.35, 255, 255, 255, 255, 0, "Centre"),
Title = UIResText.New(MaxText or "Opacity", 0, 0, 0.35, 255, 255, 255, 255, 0, "Centre"),
},
- Audio = {Slider = "CONTINUOUS_SLIDER", Library = "HUD_FRONTEND_DEFAULT_SOUNDSET", Id = nil},
+ Audio = { Slider = "CONTINUOUS_SLIDER", Library = "HUD_FRONTEND_DEFAULT_SOUNDSET", Id = nil },
ParentItem = nil,
}
@@ -2281,11 +2282,11 @@ function UIMenuPercentagePanel:Position(Y) -- required
if tonumber(Y) then
local ParentOffsetX, ParentOffsetWidth = self.ParentItem:Offset().X, self.ParentItem:SetParentMenu().WidthOffset
self.Background:Position(ParentOffsetX, Y)
- self.ActiveBar:Position(ParentOffsetX + (ParentOffsetWidth/2) + 9, 50 + Y)
- self.BackgroundBar:Position(ParentOffsetX + (ParentOffsetWidth/2) + 9, 50 + Y)
- self.Text.Min:Position(ParentOffsetX + (ParentOffsetWidth/2) + 25, 15 + Y)
- self.Text.Max:Position(ParentOffsetX + (ParentOffsetWidth/2) + 398, 15 + Y)
- self.Text.Title:Position(ParentOffsetX + (ParentOffsetWidth/2) + 215.5, 15 + Y)
+ self.ActiveBar:Position(ParentOffsetX + (ParentOffsetWidth / 2) + 9, 50 + Y)
+ self.BackgroundBar:Position(ParentOffsetX + (ParentOffsetWidth / 2) + 9, 50 + Y)
+ self.Text.Min:Position(ParentOffsetX + (ParentOffsetWidth / 2) + 25, 15 + Y)
+ self.Text.Max:Position(ParentOffsetX + (ParentOffsetWidth / 2) + 398, 15 + Y)
+ self.Text.Title:Position(ParentOffsetX + (ParentOffsetWidth / 2) + 215.5, 15 + Y)
end
end
@@ -2294,13 +2295,13 @@ function UIMenuPercentagePanel:Percentage(Value)
local Percent = ((Value < 0.0) and 0.0) or ((Value > 1.0) and 1.0 or Value)
self.ActiveBar:Size(self.BackgroundBar.Width * Percent, self.ActiveBar.Height)
else
- local SafeZone = {X = 0, Y = 0}
+ local SafeZone = { X = 0, Y = 0 }
if self.ParentItem:SetParentMenu().Settings.ScaleWithSafezone then
- SafeZone = GetSafeZoneBounds()
+ SafeZone = GetSafeZoneBounds()
end
-
+
local Progress = (math.round(GetControlNormal(0, 239) * 1920) - SafeZone.X) - self.ActiveBar.X
- return math.round(((Progress >= 0 and Progress <= 413) and Progress or ((Progress < 0) and 0 or 413))/self.BackgroundBar.Width, 2)
+ return math.round(((Progress >= 0 and Progress <= 413) and Progress or ((Progress < 0) and 0 or 413)) / self.BackgroundBar.Width, 2)
end
end
@@ -2320,11 +2321,11 @@ function UIMenuPercentagePanel:UpdateParent(Percentage)
if not self.ParentItem.Items[Index].Panels then self.ParentItem.Items[Index].Panels = {} end
self.ParentItem.Items[Index].Panels[PanelIndex] = Percentage
else
- self.ParentItem.Items[Index] = {Name = tostring(self.ParentItem.Items[Index]), Value = self.ParentItem.Items[Index], Panels = {[PanelIndex] = Percentage}}
+ self.ParentItem.Items[Index] = { Name = tostring(self.ParentItem.Items[Index]), Value = self.ParentItem.Items[Index], Panels = { [PanelIndex] = Percentage } }
end
end
self.ParentItem.Base.ParentMenu.OnListChange(self.ParentItem.Base.ParentMenu, self.ParentItem, self.ParentItem._Index)
- self.ParentItem.OnListChanged(self.ParentItem.Base.ParentMenu, self.ParentItem, self.ParentItem._Index)
+ self.ParentItem.OnListChanged(self.ParentItem.Base.ParentMenu, self.ParentItem, self.ParentItem._Index)
end
elseif ParentType == "UIMenuItem" then
self.ParentItem.ActivatedPanel(self.ParentItem.ParentMenu, self.ParentItem, self, Percentage)
@@ -2333,9 +2334,9 @@ end
function UIMenuPercentagePanel:Functions()
- local SafeZone = {X = 0, Y = 0}
+ local SafeZone = { X = 0, Y = 0 }
if self.ParentItem:SetParentMenu().Settings.ScaleWithSafezone then
- SafeZone = GetSafeZoneBounds()
+ SafeZone = GetSafeZoneBounds()
end
if IsMouseInBounds(self.BackgroundBar.X + SafeZone.X, self.BackgroundBar.Y - 4 + SafeZone.Y, self.BackgroundBar.Width, self.BackgroundBar.Height + 8) then
@@ -2358,7 +2359,7 @@ function UIMenuPercentagePanel:Functions()
while IsDisabledControlPressed(0, 24) and IsMouseInBounds(self.BackgroundBar.X + SafeZone.X, self.BackgroundBar.Y - 4 + SafeZone.Y, self.BackgroundBar.Width, self.BackgroundBar.Height + 8) do
Citizen.Wait(75)
local Progress = (math.round(GetControlNormal(0, 239) * 1920) - SafeZone.X) - self.ActiveBar.X
- self:UpdateParent(math.round(((Progress >= 0 and Progress <= 413) and Progress or ((Progress < 0) and 0 or 413))/self.BackgroundBar.Width, 2))
+ self:UpdateParent(math.round(((Progress >= 0 and Progress <= 413) and Progress or ((Progress < 0) and 0 or 413)) / self.BackgroundBar.Width, 2))
end
end)
end
@@ -2394,11 +2395,11 @@ function UIMenu.New(Title, Subtitle, X, Y, TxtDictionary, TxtName)
Logo = Sprite.New(TxtDictionary, TxtName, 0 + X, 0 + Y, 431, 107),
Banner = nil,
Title = UIResText.New(Title, 215 + X, 20 + Y, 1.15, 255, 255, 255, 255, 1, 1),
- Subtitle = {ExtraY = 0},
+ Subtitle = { ExtraY = 0 },
WidthOffset = 0,
- Position = {X = X, Y = Y},
- Pagination = {Min = 0, Max = 9, Total = 9},
- PageCounter = {PreText = ""},
+ Position = { X = X, Y = Y },
+ Pagination = { Min = 0, Max = 9, Total = 9 },
+ PageCounter = { PreText = "" },
Extra = {},
Description = {},
Items = {},
@@ -2461,58 +2462,58 @@ function UIMenu.New(Title, Subtitle, X, Y, TxtDictionary, TxtName)
},
EnabledControls = {
Controller = {
- {0, 2}, -- Look Up and Down
- {0, 1}, -- Look Left and Right
- {0, 25}, -- Aim
- {0, 24}, -- Attack
+ { 0, 2 }, -- Look Up and Down
+ { 0, 1 }, -- Look Left and Right
+ { 0, 25 }, -- Aim
+ { 0, 24 }, -- Attack
},
Keyboard = {
- {0, 0}, -- Camera
- {0, 1}, -- Look Left and Right
- {0, 2}, -- Look Up and Down
- {0, 8}, -- Fly Up and Down
- {0, 9}, -- Fly Left and Right
- {0, 21}, -- Sprint
- {0, 22}, -- Jump
- {0, 23}, -- Enter
- {0, 24}, -- Attack
- {0, 25}, -- Aim
- {0, 26}, -- C
- {0, 30}, -- Move Left and Right
- {0, 31}, -- Move Up and Down
- {0, 47}, -- G
- {0, 59}, -- Move Vehicle Left and Right
- {0, 71}, -- Accelerate Vehicle
- {0, 72}, -- Vehicle Brake
- {0, 73}, -- X
- {0, 75}, -- Exit Vehicle
- {0, 76}, -- Vehicle Handbrake
- {0, 89}, -- Fly Yaw Left
- {0, 90}, -- Fly Yaw Right
- {0, 108}, -- Num Pad 4
- {0, 109}, -- Num Pad 6
- {0, 110}, -- Num Pad 5
- {0, 111}, -- Num Pad 8
- {0, 117}, -- Num Pad 7
- {0, 118}, -- Num Pad 9
- {0, 171}, -- CAPSLOCK
- {0, 187}, -- Down
- {0, 188}, -- Up
- {0, 189}, -- Left
- {0, 190}, -- Right
- {0, 195}, -- X axis
- {0, 196}, -- Y axis
- {0, 201}, -- Select
- {0, 202}, -- Back
- {0, 203}, -- Spacebar?
- {0, 217}, -- Select
- {0, 239}, -- Cursor X
- {0, 240}, -- Cursor Y
- {0, 241}, -- Scroll up
- {0, 242}, -- Scroll down
- {0, 249}, -- N
- {0, 305}, -- B
- {0, 306}, -- N
+ { 0, 0 }, -- Camera
+ { 0, 1 }, -- Look Left and Right
+ { 0, 2 }, -- Look Up and Down
+ { 0, 8 }, -- Fly Up and Down
+ { 0, 9 }, -- Fly Left and Right
+ { 0, 21 }, -- Sprint
+ { 0, 22 }, -- Jump
+ { 0, 23 }, -- Enter
+ { 0, 24 }, -- Attack
+ { 0, 25 }, -- Aim
+ { 0, 26 }, -- C
+ { 0, 30 }, -- Move Left and Right
+ { 0, 31 }, -- Move Up and Down
+ { 0, 47 }, -- G
+ { 0, 59 }, -- Move Vehicle Left and Right
+ { 0, 71 }, -- Accelerate Vehicle
+ { 0, 72 }, -- Vehicle Brake
+ { 0, 73 }, -- X
+ { 0, 75 }, -- Exit Vehicle
+ { 0, 76 }, -- Vehicle Handbrake
+ { 0, 89 }, -- Fly Yaw Left
+ { 0, 90 }, -- Fly Yaw Right
+ { 0, 108 }, -- Num Pad 4
+ { 0, 109 }, -- Num Pad 6
+ { 0, 110 }, -- Num Pad 5
+ { 0, 111 }, -- Num Pad 8
+ { 0, 117 }, -- Num Pad 7
+ { 0, 118 }, -- Num Pad 9
+ { 0, 171 }, -- CAPSLOCK
+ { 0, 187 }, -- Down
+ { 0, 188 }, -- Up
+ { 0, 189 }, -- Left
+ { 0, 190 }, -- Right
+ { 0, 195 }, -- X axis
+ { 0, 196 }, -- Y axis
+ { 0, 201 }, -- Select
+ { 0, 202 }, -- Back
+ { 0, 203 }, -- Spacebar?
+ { 0, 217 }, -- Select
+ { 0, 239 }, -- Cursor X
+ { 0, 240 }, -- Cursor Y
+ { 0, 241 }, -- Scroll up
+ { 0, 242 }, -- Scroll down
+ { 0, 249 }, -- N
+ { 0, 305 }, -- B
+ { 0, 306 }, -- N
},
}
}
@@ -2529,7 +2530,7 @@ function UIMenu.New(Title, Subtitle, X, Y, TxtDictionary, TxtName)
_UIMenu.PageCounter.Text = UIResText.New("", 425 + _UIMenu.Position.X, 110 + _UIMenu.Position.Y, 0.35, 245, 245, 245, 255, 0, "Right")
_UIMenu.Subtitle.ExtraY = 37
end
-
+
_UIMenu.ArrowSprite = Sprite.New("commonmenu", "shop_arrows_upanddown", 190 + _UIMenu.Position.X, 147 + 37 * (_UIMenu.Pagination.Total + 1) + _UIMenu.Position.Y - 37 + _UIMenu.Subtitle.ExtraY, 50, 50)
_UIMenu.Extra.Up = UIResRectangle.New(0 + _UIMenu.Position.X, 144 + 38 * (_UIMenu.Pagination.Total + 1) + _UIMenu.Position.Y - 37 + _UIMenu.Subtitle.ExtraY, 431, 18, 0, 0, 0, 200)
_UIMenu.Extra.Down = UIResRectangle.New(0 + _UIMenu.Position.X, 144 + 18 + 38 * (_UIMenu.Pagination.Total + 1) + _UIMenu.Position.Y - 37 + _UIMenu.Subtitle.ExtraY, 431, 18, 0, 0, 0, 200)
@@ -2555,9 +2556,9 @@ function UIMenu:SetMenuWidthOffset(Offset)
if tonumber(Offset) then
self.WidthOffset = math.floor(tonumber(Offset))
self.Logo:Size(431 + self.WidthOffset, 107)
- self.Title:Position(((self.WidthOffset + 431)/2) + self.Position.X, 20 + self.Position.Y)
+ self.Title:Position(((self.WidthOffset + 431) / 2) + self.Position.X, 20 + self.Position.Y)
if self.Subtitle.Rectangle ~= nil then
- self.Subtitle.Rectangle:Size(431 + self.WidthOffset + 100, 37)
+ self.Subtitle.Rectangle:Size(431 + self.WidthOffset + 100, 37)
self.PageCounter.Text:Position(425 + self.Position.X + self.WidthOffset, 110 + self.Position.Y)
end
if self.Banner ~= nil then
@@ -2643,7 +2644,7 @@ function UIMenu:CurrentSelection(value)
elseif self:CurrentSelection() < self.Pagination.Min then
self.Pagination.Min = self:CurrentSelection()
self.Pagination.Max = self:CurrentSelection() + self.Pagination.Total
- end
+ end
else
if #self.Items == 0 then
return 1
@@ -2880,7 +2881,7 @@ function UIMenu:ProcessControl()
if self.Controls.Back.Enabled and (IsDisabledControlJustReleased(0, 177) or IsDisabledControlJustReleased(1, 177) or IsDisabledControlJustReleased(2, 177) or IsDisabledControlJustReleased(0, 199) or IsDisabledControlJustReleased(1, 199) or IsDisabledControlJustReleased(2, 199)) then
self:GoBack()
end
-
+
if #self.Items == 0 then
return
end
@@ -3029,7 +3030,7 @@ function UIMenu:GoDownOverflow()
self.Pagination.Min = self.Pagination.Max - (self.Pagination.Total + 1)
self.Items[self:CurrentSelection()]:Selected(false)
self.ActiveItem = self.ActiveItem + 1
- self.Items[self:CurrentSelection()]:Selected(true)
+ self.Items[self:CurrentSelection()]:Selected(true)
end
else
self.Items[self:CurrentSelection()]:Selected(false)
@@ -3048,7 +3049,7 @@ function UIMenu:GoDown()
self.Items[self:CurrentSelection()]:Selected(false)
self.ActiveItem = self.ActiveItem + 1
- self.Items[self:CurrentSelection()]:Selected(true)
+ self.Items[self:CurrentSelection()]:Selected(true)
PlaySoundFrontend(-1, self.Settings.Audio.UpDown, self.Settings.Audio.Library, true)
self.OnIndexChange(self, self:CurrentSelection())
self.ReDraw = true
@@ -3064,7 +3065,7 @@ function UIMenu:GoLeft()
PlaySoundFrontend(-1, self.Settings.Audio.Error, self.Settings.Audio.Library, true)
return
end
-
+
if subtype == "UIMenuListItem" then
local Item = self.Items[self:CurrentSelection()]
Item:Index(Item._Index - 1)
@@ -3141,7 +3142,7 @@ function UIMenu:SelectItem()
elseif subtype == "UIMenuProgressItem" then
PlaySoundFrontend(-1, self.Settings.Audio.Select, self.Settings.Audio.Library, true)
self.OnProgressSelect(self, Item, Item.Data.Index)
- Item.OnProgressSelected(Item.Data.Index)
+ Item.OnProgressSelected(Item.Data.Index)
else
PlaySoundFrontend(-1, self.Settings.Audio.Select, self.Settings.Audio.Library, true)
self.OnItemSelect(self, Item, self:CurrentSelection())
@@ -3233,8 +3234,8 @@ function UIMenu:Draw()
if #self.Windows ~= 0 then
local WindowOffset = 0
for index = 1, #self.Windows do
- if self.Windows[index - 1] then
- WindowOffset = WindowOffset + self.Windows[index - 1].Background:Size().Height
+ if self.Windows[index - 1] then
+ WindowOffset = WindowOffset + self.Windows[index - 1].Background:Size().Height
end
local Window = self.Windows[index]
Window:Position(WindowOffset + self.Subtitle.ExtraY - 37)
@@ -3262,7 +3263,7 @@ function UIMenu:Draw()
if #self.Items[CurrentSelection].Panels ~= 0 then
local PanelOffset = self:CaclulatePanelPosition(self.Items[CurrentSelection]:Description() ~= "")
for index = 1, #self.Items[CurrentSelection].Panels do
- if self.Items[CurrentSelection].Panels[index - 1] then
+ if self.Items[CurrentSelection].Panels[index - 1] then
PanelOffset = PanelOffset + self.Items[CurrentSelection].Panels[index - 1].Background:Size().Height + 5
end
self.Items[CurrentSelection].Panels[index]:Position(PanelOffset)
@@ -3324,10 +3325,10 @@ function UIMenu:ProcessMouse()
return
end
- local SafeZone = {X = 0, Y = 0}
+ local SafeZone = { X = 0, Y = 0 }
local WindowHeight = self:CalculateWindowHeight()
if self.Settings.ScaleWithSafezone then
- SafeZone = GetSafeZoneBounds()
+ SafeZone = GetSafeZoneBounds()
end
local Limit = #self.Items
@@ -3344,7 +3345,7 @@ function UIMenu:ProcessMouse()
SetCursorSprite(6)
elseif IsMouseInBounds(1920 - 30, 0, 30, 1080) and self.Settings.MouseEdgeEnabled then
SetGameplayCamRelativeHeading(GetGameplayCamRelativeHeading() - 5)
- SetCursorSprite(7)
+ SetCursorSprite(7)
elseif self.Settings.MouseEdgeEnabled then
SetCursorSprite(1)
end
@@ -3397,7 +3398,7 @@ function UIMenu:ProcessMouse()
self:SelectItem()
end
elseif not Item:Selected() then
- self:CurrentSelection(i-1)
+ self:CurrentSelection(i - 1)
PlaySoundFrontend(-1, self.Settings.Audio.Error, self.Settings.Audio.Library, true)
self.OnIndexChange(self, self:CurrentSelection())
self.ReDraw = true
@@ -3432,7 +3433,7 @@ function UIMenu:ProcessMouse()
end
end
elseif not Item:Selected() then
- self:CurrentSelection(i-1)
+ self:CurrentSelection(i - 1)
PlaySoundFrontend(-1, self.Settings.Audio.Error, self.Settings.Audio.Library, true)
self.OnIndexChange(self, self:CurrentSelection())
self.ReDraw = true
@@ -3440,7 +3441,7 @@ function UIMenu:ProcessMouse()
elseif not Item:Enabled() and Item:Selected() then
PlaySoundFrontend(-1, self.Settings.Audio.Error, self.Settings.Audio.Library, true)
end
- Citizen.Wait(125)
+ Citizen.Wait(125)
end
self.Controls.MousePressed = false
end)
@@ -3477,7 +3478,7 @@ function UIMenu:ProcessMouse()
end
Citizen.Wait(125)
end
- self.Controls.MousePressed = false
+ self.Controls.MousePressed = false
end)
end
end
@@ -3506,7 +3507,7 @@ function UIMenu:ProcessMouse()
end
Citizen.Wait(125)
end
- self.Controls.MousePressed = false
+ self.Controls.MousePressed = false
end)
end
end
@@ -3540,7 +3541,7 @@ end
function UIMenu:AddEnabledControl(Inputgroup, Control, Controller)
if tonumber(Inputgroup) and tonumber(Control) then
- table.insert(self.Settings.EnabledControls[(Controller and "Controller" or "Keyboard")], {Inputgroup, Control})
+ table.insert(self.Settings.EnabledControls[(Controller and "Controller" or "Keyboard")], { Inputgroup, Control })
end
end
@@ -3558,7 +3559,7 @@ function UIMenu:UpdateScaleform()
if not self._Visible or not self.Settings.InstructionalButtons then
return
end
-
+
PushScaleformMovieFunction(self.InstructionalScaleform, "CLEAR_ALL")
PopScaleformMovieFunction()
@@ -3646,13 +3647,13 @@ function MenuPool:Add(Menu)
end
function MenuPool:Clear()
- self = {
- Menus = {}
- }
+ self = {
+ Menus = {}
+ }
end
function MenuPool:Remove()
- self = nil
+ self = nil
end
function MenuPool:MouseEdgeEnabled(bool)
@@ -3808,6 +3809,7 @@ function MenuPool:TotalItemsPerPage(Value)
end
end
end
+
--[[
Wrappers
--]]
diff --git a/resources/EmoteMenu/README.md b/resources/EmoteMenu/README.md
index 5d31cec0d..75a08d9ed 100644
--- a/resources/EmoteMenu/README.md
+++ b/resources/EmoteMenu/README.md
@@ -1,12 +1,215 @@
-# dpemotes
-Emotes / Animations for fiveM with Prop support.
+# DpEmotes 🏋️
-Installation Instructions:
+Emotes / Animations for FiveM with human, animal and prop support 🐩
-add dpemotes to your server.cfg
+# Available in:
-start dpemotes
+* Brazilian Portuguese 🇧🇷
+
+* Czech 🇨🇿
+
+* Danish 🇩🇰
+
+* Dutch 🇳🇱
+
+* English 🇬🇧
+
+* Finnish 🇫🇮
+
+* French 🇫🇷
+
+* German 🇩🇪
+
+* Italian 🇮🇹
+
+* Spanish 🇪🇸
+
+* Swedish 🇸🇪
+
+All languages were either translated using Google Translate or contributed by you, the community.
+
+If you happen to find any incorrect translations or would like to add more languages, please feel free to provide an "issue" with the correct / additional translations.
+
+Languages can be selected and/or added in config.lua.
+
+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------
+
+# Ragdoll 🥴
+
+* To enable ragdoll, change `RagdollEnabled = false,` to true in config.lua.
+
+* To change which key is responsible for ragdoll, `RagdollKeybind = 303` is currently set to `U` by default., -- Get the button number [here](https://docs.fivem.net/game-references/controls/)
+
+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
+
+# Menu Keybind 🎛️
+
+**Important Note:**
+
+The keybind uses RegisterKeyMapping. By default, the server owner configured keybind in the *initial* config.lua will be the default key, however once the keybind is set for a user, it'll stay with this new value. Editing the config keybind will change it for new players only.
+
+* Menu key:* F5
+
+F3 and F4 clash with [Menyoo](https://github.com/MAFINS/MenyooSP) and controllers 🎮
+
+Server owners can change this in the `config.lua`;
+
+```lua
+MenuKeybind = 'F5', -- Get the button string here https://docs.fivem.net/docs/game-references/input-mapper-parameter-ids/keyboard/
+```
+
+Alternatively, the player base can set their own menu keybind to open DpEmotes
+
+```lua
+Esc > settings > keybinds > fivem > dpemotes
+```
+
+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------
+
+# Keybinds and SQL 🎛️
+
+The original dpemotes uses mysql-async which was then changed to ghmattimysql. Unfortunately, they are no longer maintained.
+
+To use the SQL features, install the [oxmysql](https://github.com/overextended/oxmysql) resource. If you do not want to use the SQL features, comment out the `oxmysql` region in fxmanifest.lua.
+
+
+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------
+
+# Screenshots 📸
+
+
+
+| | | |
+|-|-|-|
+|
|
|
|
+|
|
|
|
+|
|
|
|
+|
|
|
+|
|
+
+
+
+-----------------------------------------------------------------------------------------------------------------------------------------------------
+
+
+# Installation Instructions ⚙️:
+
+* add DpEmotes to your `server.cfg`
+
+* [Enforce gamebuild to latest build](https://forum.cfx.re/t/tutorial-forcing-gamebuild-to-casino-cayo-perico-or-tuners-update/4784977) for all emotes and props to work correctly
+
+* start dpemotes
+
+
+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------
+
+# Shared emotes 👩🏻❤️💋👨🏼
+
+Emotes will work with either `SyncOffsetFront` or `Attachto`.
+
+- If it is with `SyncOffsetFront`, then the offset used is the one of the emote the player started.
+For example, if player one starts the emote `handshake`, then player one will have the SyncOffsetFront but not the other player.
+
+
+- If it is with `Attachto`, then it'll either be player one's data used for attaching, or the player two's data.
+For example, if player one start the emote carry, then the other player will be attached but not the player one because Attachto is set in `carry2` and not `carry`.
+- If player one starts the emote `carry2`, then player one will be attached and not the other player.
+it's the player who start the animation who will in most cases be moved
+
+
+*Special case, if both emote have the `Attachto` then only the player who started the emote will be attached.*
+
+You can find a list of ped bones to attach the other player here: [Ped Bones](https://wiki.rage.mp/index.php?title=Bones)
+
+Using the website provided above, enter the bone ID, ie `1356` and not 111, which is the Bone Index.
+
+
+
+
+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------
+
+
+# Add-Ons 🛠️
+
+* Fixed an issue with the clipboard and adds textures to paper (/e clipboard)
+
+* Changes umbrella texture to black (/e umbrella)
+
+# Optional Add-Ons 🛠️
+
+* Adds textures to the mugshot prop (/e mugshot)
+
+* Retextured protest sign (can be changed using Texture Toolkit: https://www.gta5-mods.com/tools/texture-toolkit)
+
+**Grab it here:**
+
+[Add-Ons For DpEmotes](https://github.com/TayMcKenzieNZ/addonsfordpemotes)
+
+
+--------------------------------------------------------
+
+
+# Additional Instructions ⚙️
+
+[Please check the fivem forum thread](https://forum.fivem.net/t/dpemotes-356ish-emotes-usable-while-walking-props-and-more/843105)
+
+
+
+----------------------
+
+# Police Badge 👮
+
+- Custom LSPD police badge by [LSPDFR member Sam](https://www.lcpdfr.com/downloads/gta5mods/misc/23386-lspd-police-badge/)
+
+- LSPD reskinned badge by [GTA5Mods user Sladus_Slawonkus](https://www.gta5-mods.com/misc/lspd-police-badge-replace-sladus_slawonkus)
+
+
+----------------------
+
+# FAQs 🗨️
+
+**Q: Why do some emotes not work with females?**
+
+**A:** Blame Rockstar Games. I've done my best to replicate animations to work with females, however some male scenarios have sound effects and particles, of which I am unfamiliar with and syncing particles is out of my expertise.
+
+----------------------
+
+**Q: Why do some emotes not work at all?**
+
+**A:** Check the Installation Instructions above as you need to be on the highest FiveM gamebuild.
+
+----------------------
+
+**Q: Why do I see particle effects but other players don't?**
+
+**A:** Dullpear and I can't figure out how to sync particles. If you know how, feel free to inform me.
+
+----------------------
+
+**Q: I bought this script off someone and notice it had a lot of the same animations. Can you help me?**
+
+**A:** You got scammed and that's your fault. Dpemotes is and always will be **FREE**.
+
+----------------------
+
+**Q: Can I add my own emotes to this?**
+
+**A:** Of course, see my in depth [tutorial](https://forum.cfx.re/t/how-to-menyoo-to-dpemotes-conversion/4775018) for using Menyoo and converting them to work with dpemotes.
+
+You may sell ***custom made*** animations, however the menu must remain free.
+
+----------------------
+
+**Q: I bought a pack of custom animations, how can I add them to your fork of dpemotes?**
+
+**A:** Usually the person who created them will provide code snippets for adding animations to dpemotes. If for whatever reason they haven't, you should contact them.
+
+----------------------
+
+**Q: How do I reset the SQL keybinds?**
+
+**A:** No idea, but apparently only the server owner can 🤷🏻♂️ Google exist; Maybe contact the creator.
+
+----------------------
-Other instructions please check the fivem forum thread
-https://forum.fivem.net/t/dpemotes-356ish-emotes-usable-while-walking-props-and-more/843105
diff --git a/resources/EmoteMenu/Server/Server.lua b/resources/EmoteMenu/Server/Server.lua
index 42fcbe798..0a3472a0a 100644
--- a/resources/EmoteMenu/Server/Server.lua
+++ b/resources/EmoteMenu/Server/Server.lua
@@ -1,80 +1,125 @@
-
-----------------------------------------------------------------------------------------------------
-- Shared Emotes Syncing ---------------------------------------------------------------------------
-----------------------------------------------------------------------------------------------------
RegisterServerEvent("ServerEmoteRequest")
AddEventHandler("ServerEmoteRequest", function(target, emotename, etype)
- TriggerClientEvent("ClientEmoteRequestReceive", target, emotename, etype)
+ TriggerClientEvent("ClientEmoteRequestReceive", target, emotename, etype)
end)
-RegisterServerEvent("ServerValidEmote")
+RegisterServerEvent("ServerValidEmote")
AddEventHandler("ServerValidEmote", function(target, requestedemote, otheremote)
- TriggerClientEvent("SyncPlayEmote", source, otheremote, source)
- TriggerClientEvent("SyncPlayEmoteSource", target, requestedemote)
+ TriggerClientEvent("SyncPlayEmote", source, otheremote, target)
+ TriggerClientEvent("SyncPlayEmoteSource", target, requestedemote, source)
+end)
+
+RegisterServerEvent("ServerEmoteCancel")
+AddEventHandler("ServerEmoteCancel", function(target)
+ TriggerClientEvent("SyncCancelEmote", target, source)
end)
-----------------------------------------------------------------------------------------------------
-- Keybinding --------------------------------------------------------------------------------------
-----------------------------------------------------------------------------------------------------
-if Config.SqlKeybinding then
- MySQL.ready(function()
+local function addKeybindEventHandlers()
+ RegisterServerEvent("dp:ServerKeybindExist")
+ AddEventHandler('dp:ServerKeybindExist', function()
+ local src = source
+ local srcid = GetPlayerIdentifier(source)
+ MySQL.query('SELECT * FROM dpkeybinds WHERE `id`=@id;', { id = srcid }, function(dpkeybinds)
+ if dpkeybinds[1] then
+ TriggerClientEvent("dp:ClientKeybindExist", src, true)
+ else
+ TriggerClientEvent("dp:ClientKeybindExist", src, false)
+ end
+ end)
+ end)
- RegisterServerEvent("dp:ServerKeybindExist")
- AddEventHandler('dp:ServerKeybindExist', function()
- local src = source local srcid = GetPlayerIdentifier(source)
- MySQL.Async.fetchAll('SELECT * FROM dpkeybinds WHERE `id`=@id;', {id = srcid}, function(dpkeybinds)
- if dpkeybinds[1] then
- TriggerClientEvent("dp:ClientKeybindExist", src, true)
- else
- TriggerClientEvent("dp:ClientKeybindExist", src, false)
- end
- end)
- end)
+ -- This is my first time doing SQL stuff, and after i finished everything i realized i didnt have to store the keybinds in the database at all.
+ -- But remaking it now is a little pointless since it does it job just fine!
- -- This is my first time doing SQL stuff, and after i finished everything i realized i didnt have to store the keybinds in the database at all.
- -- But remaking it now is a little pointless since it does it job just fine!
+ RegisterServerEvent("dp:ServerKeybindCreate")
+ AddEventHandler("dp:ServerKeybindCreate", function()
+ local src = source
+ local srcid = GetPlayerIdentifier(source)
+ MySQL.insert('INSERT INTO dpkeybinds (`id`, `keybind1`, `emote1`, `keybind2`, `emote2`, `keybind3`, `emote3`, `keybind4`, `emote4`, `keybind5`, `emote5`, `keybind6`, `emote6`) VALUES (@id, @keybind1, @emote1, @keybind2, @emote2, @keybind3, @emote3, @keybind4, @emote4, @keybind5, @emote5, @keybind6, @emote6);',
+ { id = srcid, keybind1 = "num4", emote1 = "", keybind2 = "num5", emote2 = "", keybind3 = "num6", emote3 = "", keybind4 = "num7", emote4 = "", keybind5 = "num8", emote5 = "", keybind6 = "num9", emote6 = "" }, function(created) print("[dp] ^2" .. GetPlayerName(src) .. "^7 got created!") TriggerClientEvent("dp:ClientKeybindGet", src, "num4", "", "num5", "", "num6", "", "num7", "", "num8", "", "num8", "") end)
+ end)
- RegisterServerEvent("dp:ServerKeybindCreate")
- AddEventHandler("dp:ServerKeybindCreate", function()
- local src = source local srcid = GetPlayerIdentifier(source)
- MySQL.Async.execute('INSERT INTO dpkeybinds (`id`, `keybind1`, `emote1`, `keybind2`, `emote2`, `keybind3`, `emote3`, `keybind4`, `emote4`, `keybind5`, `emote5`, `keybind6`, `emote6`) VALUES (@id, @keybind1, @emote1, @keybind2, @emote2, @keybind3, @emote3, @keybind4, @emote4, @keybind5, @emote5, @keybind6, @emote6);',
- {id = srcid, keybind1 = "num4", emote1 = "", keybind2 = "num5", emote2 = "", keybind3 = "num6", emote3 = "", keybind4 = "num7", emote4 = "", keybind5 = "num8", emote5 = "", keybind6 = "num9", emote6 = ""}, function(created) print("[dp] ^2"..GetPlayerName(src).."^7 got created!") TriggerClientEvent("dp:ClientKeybindGet", src, "num4", "", "num5", "", "num6", "", "num7", "", "num8", "", "num8", "") end)
- end)
+ RegisterServerEvent("dp:ServerKeybindGrab")
+ AddEventHandler("dp:ServerKeybindGrab", function()
+ local src = source
+ local srcid = GetPlayerIdentifier(source)
+ MySQL.query('SELECT keybind1, emote1, keybind2, emote2, keybind3, emote3, keybind4, emote4, keybind5, emote5, keybind6, emote6 FROM `dpkeybinds` WHERE `id` = @id'
+ ,
+ { ['@id'] = srcid }, function(kb)
+ if kb[1].keybind1 ~= nil then
+ TriggerClientEvent("dp:ClientKeybindGet", src, kb[1].keybind1, kb[1].emote1, kb[1].keybind2, kb[1].emote2 , kb[1].keybind3, kb[1].emote3, kb[1].keybind4, kb[1].emote4, kb[1].keybind5, kb[1].emote5, kb[1].keybind6, kb[1].emote6)
+ else
+ TriggerClientEvent("dp:ClientKeybindGet", src, "num4", "", "num5", "", "num6", "", "num7", "", "num8", "", "num8", "")
+ end
+ end)
+ end)
- RegisterServerEvent("dp:ServerKeybindGrab")
- AddEventHandler("dp:ServerKeybindGrab", function()
- local src = source local srcid = GetPlayerIdentifier(source)
- MySQL.Async.fetchAll('SELECT keybind1, emote1, keybind2, emote2, keybind3, emote3, keybind4, emote4, keybind5, emote5, keybind6, emote6 FROM `dpkeybinds` WHERE `id` = @id',
- {['@id'] = srcid}, function(kb)
- if kb[1].keybind1 ~= nil then
- TriggerClientEvent("dp:ClientKeybindGet", src, kb[1].keybind1, kb[1].emote1, kb[1].keybind2, kb[1].emote2, kb[1].keybind3, kb[1].emote3, kb[1].keybind4, kb[1].emote4, kb[1].keybind5, kb[1].emote5, kb[1].keybind6, kb[1].emote6)
- else
- TriggerClientEvent("dp:ClientKeybindGet", src, "num4", "", "num5", "", "num6", "", "num7", "", "num8", "", "num8", "")
- end
- end)
- end)
-
- RegisterServerEvent("dp:ServerKeybindUpdate")
- AddEventHandler("dp:ServerKeybindUpdate", function(key, emote)
- local src = source local myid = GetPlayerIdentifier(source)
- if key == "num4" then chosenk = "keybind1" elseif key == "num5" then chosenk = "keybind2" elseif key == "num6" then chosenk = "keybind3" elseif key == "num7" then chosenk = "keybind4" elseif key == "num8" then chosenk = "keybind5" elseif key == "num9" then chosenk = "keybind6" end
- if chosenk == "keybind1" then
- MySQL.Async.execute("UPDATE dpkeybinds SET emote1=@emote WHERE id=@id", {id = myid, emote = emote}, function() TriggerClientEvent("dp:ClientKeybindGetOne", src, key, emote) end)
- elseif chosenk == "keybind2" then
- MySQL.Async.execute("UPDATE dpkeybinds SET emote2=@emote WHERE id=@id", {id = myid, emote = emote}, function() TriggerClientEvent("dp:ClientKeybindGetOne", src, key, emote) end)
- elseif chosenk == "keybind3" then
- MySQL.Async.execute("UPDATE dpkeybinds SET emote3=@emote WHERE id=@id", {id = myid, emote = emote}, function() TriggerClientEvent("dp:ClientKeybindGetOne", src, key, emote) end)
- elseif chosenk == "keybind4" then
- MySQL.Async.execute("UPDATE dpkeybinds SET emote4=@emote WHERE id=@id", {id = myid, emote = emote}, function() TriggerClientEvent("dp:ClientKeybindGetOne", src, key, emote) end)
- elseif chosenk == "keybind5" then
- MySQL.Async.execute("UPDATE dpkeybinds SET emote5=@emote WHERE id=@id", {id = myid, emote = emote}, function() TriggerClientEvent("dp:ClientKeybindGetOne", src, key, emote) end)
- elseif chosenk == "keybind6" then
- MySQL.Async.execute("UPDATE dpkeybinds SET emote6=@emote WHERE id=@id", {id = myid, emote = emote}, function() TriggerClientEvent("dp:ClientKeybindGetOne", src, key, emote) end)
- end
- end)
- end)
-else
- print("[dp] ^3Sql Keybinding^7 is turned ^1off^7, if you want to enable /emotebind, import dpkeybinding.sql and set ^3SqlKeybinding = ^2true^7 in config.lua.")
+ RegisterServerEvent("dp:ServerKeybindUpdate")
+ AddEventHandler("dp:ServerKeybindUpdate", function(key, emote)
+ local src = source
+ local myid = GetPlayerIdentifier(source)
+ if key == "num4" then chosenk = "keybind1"
+ elseif key == "num5" then chosenk = "keybind2"
+ elseif key == "num6" then chosenk = "keybind3"
+ elseif key == "num7" then chosenk = "keybind4"
+ elseif key == "num8" then chosenk = "keybind5"
+ elseif key == "num9" then chosenk = "keybind6"
+ end
+ if chosenk == "keybind1" then
+ MySQL.update("UPDATE dpkeybinds SET emote1=@emote WHERE id=@id", { id = myid, emote = emote },
+ function() TriggerClientEvent("dp:ClientKeybindGetOne", src, key, emote) end)
+ elseif chosenk == "keybind2" then
+ MySQL.update("UPDATE dpkeybinds SET emote2=@emote WHERE id=@id", { id = myid, emote = emote },
+ function() TriggerClientEvent("dp:ClientKeybindGetOne", src, key, emote) end)
+ elseif chosenk == "keybind3" then
+ MySQL.update("UPDATE dpkeybinds SET emote3=@emote WHERE id=@id", { id = myid, emote = emote },
+ function() TriggerClientEvent("dp:ClientKeybindGetOne", src, key, emote) end)
+ elseif chosenk == "keybind4" then
+ MySQL.update("UPDATE dpkeybinds SET emote4=@emote WHERE id=@id", { id = myid, emote = emote },
+ function() TriggerClientEvent("dp:ClientKeybindGetOne", src, key, emote) end)
+ elseif chosenk == "keybind5" then
+ MySQL.update("UPDATE dpkeybinds SET emote5=@emote WHERE id=@id", { id = myid, emote = emote },
+ function() TriggerClientEvent("dp:ClientKeybindGetOne", src, key, emote) end)
+ elseif chosenk == "keybind6" then
+ MySQL.update("UPDATE dpkeybinds SET emote6=@emote WHERE id=@id", { id = myid, emote = emote },
+ function() TriggerClientEvent("dp:ClientKeybindGetOne", src, key, emote) end)
+ end
+ end)
+end
+
+if Config.SqlKeybinding and MySQL then
+ MySQL.update(
+ [[
+ CREATE TABLE IF NOT EXISTS `dpkeybinds` (
+ `id` varchar(50) NULL DEFAULT NULL,
+ `keybind1` varchar(50) NULL DEFAULT "num4",
+ `emote1` varchar(255) NULL DEFAULT "",
+ `keybind2` varchar(50) NULL DEFAULT "num5",
+ `emote2` varchar(255) NULL DEFAULT "",
+ `keybind3` varchar(50) NULL DEFAULT "num6",
+ `emote3` varchar(255) NULL DEFAULT "",
+ `keybind4` varchar(50) NULL DEFAULT "num7",
+ `emote4` varchar(255) NULL DEFAULT "",
+ `keybind5` varchar(50) NULL DEFAULT "num8",
+ `emote5` varchar(255) NULL DEFAULT "",
+ `keybind6` varchar(50) NULL DEFAULT "num9",
+ `emote6` varchar(255) NULL DEFAULT ""
+ ) ENGINE=InnoDB COLLATE=latin1_swedish_ci;
+ ]], {}, function(success)
+ if success then
+ addKeybindEventHandlers()
+ else
+ print("[dp] ^3Error connecting to DB^7")
+ end
+ end)
+else
+ print("[dp] ^3Sql Keybinding^7 is turned ^1off^7, if you want to enable /emotebind, set ^3SqlKeybinding = ^2true^7 in config.lua and uncomment oxmysql lines in fxmanifest.lua.")
end
diff --git a/resources/EmoteMenu/Server/Updates.lua b/resources/EmoteMenu/Server/Updates.lua
index bdb646576..9ae344f1d 100644
--- a/resources/EmoteMenu/Server/Updates.lua
+++ b/resources/EmoteMenu/Server/Updates.lua
@@ -1,12 +1,12 @@
if Config.CheckForUpdates then
- Citizen.CreateThread( function()
- updatePath = "/andristum/dpemotes"
- resourceName = "dp Emotes ("..GetCurrentResourceName()..")"
- PerformHttpRequest("https://raw.githubusercontent.com"..updatePath.."/master/version", checkVersion, "GET")
+ Citizen.CreateThread(function()
+ updatePath = "/TayMcKenzieNZ/dpemotes"
+ resourceName = "dp Emotes (" .. GetCurrentResourceName() .. ")"
+ PerformHttpRequest("https://raw.githubusercontent.com" .. updatePath .. "/master/version", checkVersion, "GET")
end)
end
-RegisterServerEvent("dp:CheckVersion")
+RegisterServerEvent("dp:CheckVersion")
AddEventHandler("dp:CheckVersion", function()
if updateavail then
TriggerClientEvent("dp:Update", source, true)
@@ -15,19 +15,19 @@ AddEventHandler("dp:CheckVersion", function()
end
end)
-function checkVersion(err,responseText, headers)
+function checkVersion(err, responseText, headers)
curVersion = LoadResourceFile(GetCurrentResourceName(), "version")
if curVersion ~= responseText and tonumber(curVersion) < tonumber(responseText) then
updateavail = true
print("\n^1----------------------------------------------------------------------------------^7")
- print(resourceName.." is outdated, latest version is: ^2"..responseText.."^7, installed version: ^1"..curVersion.."^7!\nupdate from https://github.com"..updatePath.."")
+ print(resourceName .. " is outdated, latest version is: ^2" .. responseText .. "^7, installed version: ^1" .. curVersion .. "^7!\nupdate from https://github.com" .. updatePath .. "")
print("^1----------------------------------------------------------------------------------^7")
elseif tonumber(curVersion) > tonumber(responseText) then
print("\n^3----------------------------------------------------------------------------------^7")
- print(resourceName.." git version is: ^2"..responseText.."^7, installed version: ^1"..curVersion.."^7!")
+ print(resourceName .. " git version is: ^2" .. responseText .. "^7, installed version: ^1" .. curVersion .. "^7!")
print("^3----------------------------------------------------------------------------------^7")
else
- print("\n"..resourceName.." is up to date. (^2"..curVersion.."^7)")
+ print("\n" .. resourceName .. " is up to date. (^2" .. curVersion .. "^7)")
end
-end
\ No newline at end of file
+end
diff --git a/resources/EmoteMenu/__resource.lua b/resources/EmoteMenu/__resource.lua
deleted file mode 100644
index 82e2ac5fd..000000000
--- a/resources/EmoteMenu/__resource.lua
+++ /dev/null
@@ -1,13 +0,0 @@
-resource_manifest_version '05cfa83c-a124-4cfa-a768-c24a5811d8f9'
-
-client_scripts {
- 'NativeUI.lua',
- 'Config.lua',
- 'Client/*.lua'
-}
-
-server_scripts {
- 'Config.lua',
- '@mysql-async/lib/MySQL.lua',
- 'Server/*.lua'
-}
\ No newline at end of file
diff --git a/resources/EmoteMenu/dpkeybinds.sql b/resources/EmoteMenu/dpkeybinds.sql
deleted file mode 100644
index 08d83189e..000000000
--- a/resources/EmoteMenu/dpkeybinds.sql
+++ /dev/null
@@ -1,16 +0,0 @@
-
-CREATE TABLE IF NOT EXISTS `dpkeybinds` (
- `id` varchar(50) NULL DEFAULT NULL,
- `keybind1` varchar(50) NULL DEFAULT "num4",
- `emote1` varchar(255) NULL DEFAULT "",
- `keybind2` varchar(50) NULL DEFAULT "num5",
- `emote2` varchar(255) NULL DEFAULT "",
- `keybind3` varchar(50) NULL DEFAULT "num6",
- `emote3` varchar(255) NULL DEFAULT "",
- `keybind4` varchar(50) NULL DEFAULT "num7",
- `emote4` varchar(255) NULL DEFAULT "",
- `keybind5` varchar(50) NULL DEFAULT "num8",
- `emote5` varchar(255) NULL DEFAULT "",
- `keybind6` varchar(50) NULL DEFAULT "num9",
- `emote6` varchar(255) NULL DEFAULT ""
-) ENGINE=InnoDB COLLATE=latin1_swedish_ci;
\ No newline at end of file
diff --git a/resources/dpemotes-master/fxmanifest.lua b/resources/EmoteMenu/fxmanifest.lua
similarity index 100%
rename from resources/dpemotes-master/fxmanifest.lua
rename to resources/EmoteMenu/fxmanifest.lua
diff --git a/resources/dpemotes-master/printer.lua b/resources/EmoteMenu/printer.lua
similarity index 100%
rename from resources/dpemotes-master/printer.lua
rename to resources/EmoteMenu/printer.lua
diff --git a/resources/dpemotes-master/screenshots/boop.jpg b/resources/EmoteMenu/screenshots/boop.jpg
similarity index 100%
rename from resources/dpemotes-master/screenshots/boop.jpg
rename to resources/EmoteMenu/screenshots/boop.jpg
diff --git a/resources/dpemotes-master/screenshots/cb_before.jpg b/resources/EmoteMenu/screenshots/cb_before.jpg
similarity index 100%
rename from resources/dpemotes-master/screenshots/cb_before.jpg
rename to resources/EmoteMenu/screenshots/cb_before.jpg
diff --git a/resources/dpemotes-master/screenshots/cp_after.jpg b/resources/EmoteMenu/screenshots/cp_after.jpg
similarity index 100%
rename from resources/dpemotes-master/screenshots/cp_after.jpg
rename to resources/EmoteMenu/screenshots/cp_after.jpg
diff --git a/resources/dpemotes-master/screenshots/flag1.jpg b/resources/EmoteMenu/screenshots/flag1.jpg
similarity index 100%
rename from resources/dpemotes-master/screenshots/flag1.jpg
rename to resources/EmoteMenu/screenshots/flag1.jpg
diff --git a/resources/dpemotes-master/screenshots/flag2.jpg b/resources/EmoteMenu/screenshots/flag2.jpg
similarity index 100%
rename from resources/dpemotes-master/screenshots/flag2.jpg
rename to resources/EmoteMenu/screenshots/flag2.jpg
diff --git a/resources/dpemotes-master/screenshots/flag3.jpg b/resources/EmoteMenu/screenshots/flag3.jpg
similarity index 100%
rename from resources/dpemotes-master/screenshots/flag3.jpg
rename to resources/EmoteMenu/screenshots/flag3.jpg
diff --git a/resources/dpemotes-master/screenshots/flag4.jpg b/resources/EmoteMenu/screenshots/flag4.jpg
similarity index 100%
rename from resources/dpemotes-master/screenshots/flag4.jpg
rename to resources/EmoteMenu/screenshots/flag4.jpg
diff --git a/resources/dpemotes-master/screenshots/flag5.jpg b/resources/EmoteMenu/screenshots/flag5.jpg
similarity index 100%
rename from resources/dpemotes-master/screenshots/flag5.jpg
rename to resources/EmoteMenu/screenshots/flag5.jpg
diff --git a/resources/dpemotes-master/screenshots/flag6.jpg b/resources/EmoteMenu/screenshots/flag6.jpg
similarity index 100%
rename from resources/dpemotes-master/screenshots/flag6.jpg
rename to resources/EmoteMenu/screenshots/flag6.jpg
diff --git a/resources/dpemotes-master/screenshots/flag7.jpg b/resources/EmoteMenu/screenshots/flag7.jpg
similarity index 100%
rename from resources/dpemotes-master/screenshots/flag7.jpg
rename to resources/EmoteMenu/screenshots/flag7.jpg
diff --git a/resources/dpemotes-master/screenshots/flag8.jpg b/resources/EmoteMenu/screenshots/flag8.jpg
similarity index 100%
rename from resources/dpemotes-master/screenshots/flag8.jpg
rename to resources/EmoteMenu/screenshots/flag8.jpg
diff --git a/resources/dpemotes-master/screenshots/flag9.jpg b/resources/EmoteMenu/screenshots/flag9.jpg
similarity index 100%
rename from resources/dpemotes-master/screenshots/flag9.jpg
rename to resources/EmoteMenu/screenshots/flag9.jpg
diff --git a/resources/dpemotes-master/screenshots/menu.jpg b/resources/EmoteMenu/screenshots/menu.jpg
similarity index 100%
rename from resources/dpemotes-master/screenshots/menu.jpg
rename to resources/EmoteMenu/screenshots/menu.jpg
diff --git a/resources/dpemotes-master/screenshots/umbrella.jpg b/resources/EmoteMenu/screenshots/umbrella.jpg
similarity index 100%
rename from resources/dpemotes-master/screenshots/umbrella.jpg
rename to resources/EmoteMenu/screenshots/umbrella.jpg
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@bar@special_peds@lauren@01a@base@.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@bar@special_peds@lauren@01a@base@.ycd
deleted file mode 100644
index 4d3461195..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@bar@special_peds@lauren@01a@base@.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@bar@special_peds@taylor@01a@base@.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@bar@special_peds@taylor@01a@base@.ycd
deleted file mode 100644
index 03a5d53c1..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@bar@special_peds@taylor@01a@base@.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@collect@comic_shop@.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@collect@comic_shop@.ycd
deleted file mode 100644
index 0fcf111dc..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@collect@comic_shop@.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@game@slots@male.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@game@slots@male.ycd
deleted file mode 100644
index 729bcbc72..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@game@slots@male.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@games@threecardpoker@ped_male@regular_withdrink@01a@trans.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@games@threecardpoker@ped_male@regular_withdrink@01a@trans.ycd
deleted file mode 100644
index 442ff40a4..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@games@threecardpoker@ped_male@regular_withdrink@01a@trans.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@games@threecardpoker@ped_male@regular_withdrink@01b@trans.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@games@threecardpoker@ped_male@regular_withdrink@01b@trans.ycd
deleted file mode 100644
index a0d1f5ff9..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@games@threecardpoker@ped_male@regular_withdrink@01b@trans.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_female@stand@01a@.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_female@stand@01a@.ycd
deleted file mode 100644
index 4b0918718..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_female@stand@01a@.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_female@stand@01a@base.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_female@stand@01a@base.ycd
deleted file mode 100644
index 91c944996..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_female@stand@01a@base.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_female@stand@01a@enter.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_female@stand@01a@enter.ycd
deleted file mode 100644
index 1590e2d3a..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_female@stand@01a@enter.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_female@stand@01a@exit.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_female@stand@01a@exit.ycd
deleted file mode 100644
index c9cd7418b..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_female@stand@01a@exit.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_female@stand@01a@idles.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_female@stand@01a@idles.ycd
deleted file mode 100644
index 648e41098..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_female@stand@01a@idles.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_female@stand@01a@idles_convo.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_female@stand@01a@idles_convo.ycd
deleted file mode 100644
index 4b66b5be8..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_female@stand@01a@idles_convo.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_female@stand@01b@base.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_female@stand@01b@base.ycd
deleted file mode 100644
index f9db11f6f..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_female@stand@01b@base.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_female@stand@01b@enter.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_female@stand@01b@enter.ycd
deleted file mode 100644
index 7bd36ba54..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_female@stand@01b@enter.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_female@stand@01b@exit.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_female@stand@01b@exit.ycd
deleted file mode 100644
index 977646323..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_female@stand@01b@exit.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_female@stand@01b@idles.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_female@stand@01b@idles.ycd
deleted file mode 100644
index a1782a97b..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_female@stand@01b@idles.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_female@stand@01b@idles_convo.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_female@stand@01b@idles_convo.ycd
deleted file mode 100644
index 94de168ec..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_female@stand@01b@idles_convo.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_female@stand@02a@base.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_female@stand@02a@base.ycd
deleted file mode 100644
index d802bd7ad..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_female@stand@02a@base.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_female@stand@02a@enter.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_female@stand@02a@enter.ycd
deleted file mode 100644
index f88547100..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_female@stand@02a@enter.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_female@stand@02a@exit.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_female@stand@02a@exit.ycd
deleted file mode 100644
index 7b3b031f9..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_female@stand@02a@exit.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_female@stand@02a@idles.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_female@stand@02a@idles.ycd
deleted file mode 100644
index e3cb2a0a1..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_female@stand@02a@idles.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_female@stand@02a@idles_convo.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_female@stand@02a@idles_convo.ycd
deleted file mode 100644
index a776ad765..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_female@stand@02a@idles_convo.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_female@stand@02b@base.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_female@stand@02b@base.ycd
deleted file mode 100644
index b72876ed7..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_female@stand@02b@base.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_female@stand@02b@enter.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_female@stand@02b@enter.ycd
deleted file mode 100644
index 9c292a600..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_female@stand@02b@enter.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_female@stand@02b@exit.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_female@stand@02b@exit.ycd
deleted file mode 100644
index 82a4d6b5c..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_female@stand@02b@exit.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_female@stand@02b@idles.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_female@stand@02b@idles.ycd
deleted file mode 100644
index bd81113ea..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_female@stand@02b@idles.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_female@stand@02b@idles_convo.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_female@stand@02b@idles_convo.ycd
deleted file mode 100644
index 1e50f070d..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_female@stand@02b@idles_convo.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_female@stand@03a@base.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_female@stand@03a@base.ycd
deleted file mode 100644
index f3356b86c..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_female@stand@03a@base.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_female@stand@03a@enter.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_female@stand@03a@enter.ycd
deleted file mode 100644
index f134c9580..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_female@stand@03a@enter.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_female@stand@03a@exit.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_female@stand@03a@exit.ycd
deleted file mode 100644
index 86be9998b..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_female@stand@03a@exit.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_female@stand@03a@idles.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_female@stand@03a@idles.ycd
deleted file mode 100644
index 82e260c39..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_female@stand@03a@idles.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_female@stand@03a@idles_convo.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_female@stand@03a@idles_convo.ycd
deleted file mode 100644
index 1c7a61753..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_female@stand@03a@idles_convo.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_female@stand@03b@base.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_female@stand@03b@base.ycd
deleted file mode 100644
index 2c3f0e575..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_female@stand@03b@base.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_female@stand@03b@enter.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_female@stand@03b@enter.ycd
deleted file mode 100644
index 514255b12..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_female@stand@03b@enter.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_female@stand@03b@exit.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_female@stand@03b@exit.ycd
deleted file mode 100644
index 4daf90b42..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_female@stand@03b@exit.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_female@stand@03b@idles.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_female@stand@03b@idles.ycd
deleted file mode 100644
index 233aba333..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_female@stand@03b@idles.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_female@stand@03b@idles_convo.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_female@stand@03b@idles_convo.ycd
deleted file mode 100644
index 2ba0cc59e..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_female@stand@03b@idles_convo.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_female@stand_withdrink@01a@base.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_female@stand_withdrink@01a@base.ycd
deleted file mode 100644
index aecade250..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_female@stand_withdrink@01a@base.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_female@stand_withdrink@01a@enter.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_female@stand_withdrink@01a@enter.ycd
deleted file mode 100644
index 708a03c1f..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_female@stand_withdrink@01a@enter.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_female@stand_withdrink@01a@exit.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_female@stand_withdrink@01a@exit.ycd
deleted file mode 100644
index c6a9e10c0..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_female@stand_withdrink@01a@exit.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_female@stand_withdrink@01a@idles.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_female@stand_withdrink@01a@idles.ycd
deleted file mode 100644
index 03dca8554..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_female@stand_withdrink@01a@idles.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_female@stand_withdrink@01a@idles_convo.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_female@stand_withdrink@01a@idles_convo.ycd
deleted file mode 100644
index 643e1d0e5..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_female@stand_withdrink@01a@idles_convo.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_female@stand_withdrink@01b@base.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_female@stand_withdrink@01b@base.ycd
deleted file mode 100644
index ed1fe6475..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_female@stand_withdrink@01b@base.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_female@stand_withdrink@01b@enter.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_female@stand_withdrink@01b@enter.ycd
deleted file mode 100644
index 244e3be04..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_female@stand_withdrink@01b@enter.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_female@stand_withdrink@01b@exit.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_female@stand_withdrink@01b@exit.ycd
deleted file mode 100644
index befcb1fc3..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_female@stand_withdrink@01b@exit.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_female@stand_withdrink@01b@idles.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_female@stand_withdrink@01b@idles.ycd
deleted file mode 100644
index e6fc3276b..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_female@stand_withdrink@01b@idles.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_female@stand_withdrink@01b@idles_convo.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_female@stand_withdrink@01b@idles_convo.ycd
deleted file mode 100644
index 099a06e87..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_female@stand_withdrink@01b@idles_convo.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_male@stand@01a@base.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_male@stand@01a@base.ycd
deleted file mode 100644
index 2c8aec7d5..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_male@stand@01a@base.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_male@stand@01a@enter.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_male@stand@01a@enter.ycd
deleted file mode 100644
index 5ed4698f0..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_male@stand@01a@enter.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_male@stand@01a@exit.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_male@stand@01a@exit.ycd
deleted file mode 100644
index 33eacf5cb..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_male@stand@01a@exit.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_male@stand@01a@idles.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_male@stand@01a@idles.ycd
deleted file mode 100644
index dc859f98d..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_male@stand@01a@idles.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_male@stand@01a@idles_convo.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_male@stand@01a@idles_convo.ycd
deleted file mode 100644
index a2de76658..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_male@stand@01a@idles_convo.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_male@stand@01b@base.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_male@stand@01b@base.ycd
deleted file mode 100644
index 907bce3b7..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_male@stand@01b@base.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_male@stand@01b@enter.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_male@stand@01b@enter.ycd
deleted file mode 100644
index 16672021f..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_male@stand@01b@enter.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_male@stand@01b@exit.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_male@stand@01b@exit.ycd
deleted file mode 100644
index 590199428..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_male@stand@01b@exit.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_male@stand@01b@idles.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_male@stand@01b@idles.ycd
deleted file mode 100644
index 7369638d7..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_male@stand@01b@idles.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_male@stand@01b@idles_convo.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_male@stand@01b@idles_convo.ycd
deleted file mode 100644
index 0c23eeac8..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_male@stand@01b@idles_convo.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_male@stand@02a@base.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_male@stand@02a@base.ycd
deleted file mode 100644
index 11cf39707..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_male@stand@02a@base.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_male@stand@02a@enter.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_male@stand@02a@enter.ycd
deleted file mode 100644
index de4198908..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_male@stand@02a@enter.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_male@stand@02a@exit.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_male@stand@02a@exit.ycd
deleted file mode 100644
index 0f0df627f..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_male@stand@02a@exit.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_male@stand@02a@idles.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_male@stand@02a@idles.ycd
deleted file mode 100644
index cee470024..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_male@stand@02a@idles.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_male@stand@02a@idles_convo.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_male@stand@02a@idles_convo.ycd
deleted file mode 100644
index 0adbf3863..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_male@stand@02a@idles_convo.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_male@stand@02a@trans.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_male@stand@02a@trans.ycd
deleted file mode 100644
index d723c9920..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_male@stand@02a@trans.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_male@stand@02b@base.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_male@stand@02b@base.ycd
deleted file mode 100644
index f43883e75..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_male@stand@02b@base.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_male@stand@02b@enter.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_male@stand@02b@enter.ycd
deleted file mode 100644
index c80834bcb..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_male@stand@02b@enter.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_male@stand@02b@exit.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_male@stand@02b@exit.ycd
deleted file mode 100644
index b81edcf19..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_male@stand@02b@exit.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_male@stand@02b@idles.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_male@stand@02b@idles.ycd
deleted file mode 100644
index 3d77fa25f..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_male@stand@02b@idles.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_male@stand@02b@idles_convo.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_male@stand@02b@idles_convo.ycd
deleted file mode 100644
index fb9676c9c..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_male@stand@02b@idles_convo.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_male@stand@02b@trans.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_male@stand@02b@trans.ycd
deleted file mode 100644
index fe745b80f..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_male@stand@02b@trans.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_male@stand@03a@base.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_male@stand@03a@base.ycd
deleted file mode 100644
index 5b6cc33cb..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_male@stand@03a@base.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_male@stand@03a@enter.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_male@stand@03a@enter.ycd
deleted file mode 100644
index f457f67b0..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_male@stand@03a@enter.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_male@stand@03a@exit.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_male@stand@03a@exit.ycd
deleted file mode 100644
index 45f33483a..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_male@stand@03a@exit.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_male@stand@03a@idles.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_male@stand@03a@idles.ycd
deleted file mode 100644
index f733de8b8..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_male@stand@03a@idles.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_male@stand@03a@idles_convo.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_male@stand@03a@idles_convo.ycd
deleted file mode 100644
index 6960749bc..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_male@stand@03a@idles_convo.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_male@stand@03b@base.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_male@stand@03b@base.ycd
deleted file mode 100644
index 45a3790fe..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_male@stand@03b@base.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_male@stand@03b@enter.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_male@stand@03b@enter.ycd
deleted file mode 100644
index 4b9093172..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_male@stand@03b@enter.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_male@stand@03b@exit.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_male@stand@03b@exit.ycd
deleted file mode 100644
index c0b429b2b..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_male@stand@03b@exit.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_male@stand@03b@idles.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_male@stand@03b@idles.ycd
deleted file mode 100644
index 24e955011..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_male@stand@03b@idles.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_male@stand@03b@idles_convo.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_male@stand@03b@idles_convo.ycd
deleted file mode 100644
index 4cbbf8305..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_male@stand@03b@idles_convo.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_male@stand_withdrink@01a@base.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_male@stand_withdrink@01a@base.ycd
deleted file mode 100644
index dc5034de7..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_male@stand_withdrink@01a@base.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_male@stand_withdrink@01a@enter.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_male@stand_withdrink@01a@enter.ycd
deleted file mode 100644
index 7e12e5232..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_male@stand_withdrink@01a@enter.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_male@stand_withdrink@01a@exit.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_male@stand_withdrink@01a@exit.ycd
deleted file mode 100644
index f3bcae825..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_male@stand_withdrink@01a@exit.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_male@stand_withdrink@01a@idles.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_male@stand_withdrink@01a@idles.ycd
deleted file mode 100644
index db79c0aa1..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_male@stand_withdrink@01a@idles.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_male@stand_withdrink@01a@idles_convo.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_male@stand_withdrink@01a@idles_convo.ycd
deleted file mode 100644
index f7f4632bb..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_male@stand_withdrink@01a@idles_convo.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_male@stand_withdrink@01b@base.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_male@stand_withdrink@01b@base.ycd
deleted file mode 100644
index bf856dc39..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_male@stand_withdrink@01b@base.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_male@stand_withdrink@01b@enter.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_male@stand_withdrink@01b@enter.ycd
deleted file mode 100644
index f10df2ebb..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_male@stand_withdrink@01b@enter.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_male@stand_withdrink@01b@exit.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_male@stand_withdrink@01b@exit.ycd
deleted file mode 100644
index c60174f8c..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_male@stand_withdrink@01b@exit.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_male@stand_withdrink@01b@idles.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_male@stand_withdrink@01b@idles.ycd
deleted file mode 100644
index ea990f372..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_male@stand_withdrink@01b@idles.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_male@stand_withdrink@01b@idles_convo.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_male@stand_withdrink@01b@idles_convo.ycd
deleted file mode 100644
index 2df87f269..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@hangout@ped_male@stand_withdrink@01b@idles_convo.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@mini@dance@dance_solo@female@var_a@.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@mini@dance@dance_solo@female@var_a@.ycd
deleted file mode 100644
index b4a6ffe26..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@mini@dance@dance_solo@female@var_a@.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@mini@dance@dance_solo@female@var_b@.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@mini@dance@dance_solo@female@var_b@.ycd
deleted file mode 100644
index 6f1cf9b3e..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@mini@dance@dance_solo@female@var_b@.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@mini@drinking@bar@drink@heels@base.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@mini@drinking@bar@drink@heels@base.ycd
deleted file mode 100644
index 7a0522858..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@mini@drinking@bar@drink@heels@base.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@mini@drinking@bar@drink@heels@beer.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@mini@drinking@bar@drink@heels@beer.ycd
deleted file mode 100644
index aed843db3..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@mini@drinking@bar@drink@heels@beer.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@mini@drinking@bar@drink@heels@four.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@mini@drinking@bar@drink@heels@four.ycd
deleted file mode 100644
index e90ec6007..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@mini@drinking@bar@drink@heels@four.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@mini@drinking@bar@drink@heels@idle_a.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@mini@drinking@bar@drink@heels@idle_a.ycd
deleted file mode 100644
index 40a6e865d..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@mini@drinking@bar@drink@heels@idle_a.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@mini@drinking@bar@drink@heels@one.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@mini@drinking@bar@drink@heels@one.ycd
deleted file mode 100644
index a971b340c..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@mini@drinking@bar@drink@heels@one.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@mini@drinking@bar@drink@heels@three.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@mini@drinking@bar@drink@heels@three.ycd
deleted file mode 100644
index e5d890c26..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@mini@drinking@bar@drink@heels@three.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@mini@drinking@bar@drink@heels@two.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@mini@drinking@bar@drink@heels@two.ycd
deleted file mode 100644
index 871a37f5c..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@mini@drinking@bar@drink@heels@two.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@mini@drinking@bar@drink_v2@heels@base.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@mini@drinking@bar@drink_v2@heels@base.ycd
deleted file mode 100644
index e46b6ba15..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@mini@drinking@bar@drink_v2@heels@base.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@mini@drinking@bar@drink_v2@heels@beer.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@mini@drinking@bar@drink_v2@heels@beer.ycd
deleted file mode 100644
index 82b4ea47d..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@mini@drinking@bar@drink_v2@heels@beer.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@mini@drinking@bar@drink_v2@heels@idle_a.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@mini@drinking@bar@drink_v2@heels@idle_a.ycd
deleted file mode 100644
index 0d807bf4f..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@mini@drinking@bar@drink_v2@heels@idle_a.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@out_of_money@ped_female@01a@base.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@out_of_money@ped_female@01a@base.ycd
deleted file mode 100644
index 0749b9b27..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@out_of_money@ped_female@01a@base.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@out_of_money@ped_female@01a@idles.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@out_of_money@ped_female@01a@idles.ycd
deleted file mode 100644
index a4cb85276..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@out_of_money@ped_female@01a@idles.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@out_of_money@ped_female@01b@base.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@out_of_money@ped_female@01b@base.ycd
deleted file mode 100644
index bb5e1223b..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@out_of_money@ped_female@01b@base.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@out_of_money@ped_female@01b@idles.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@out_of_money@ped_female@01b@idles.ycd
deleted file mode 100644
index 2bfd46af8..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@out_of_money@ped_female@01b@idles.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@out_of_money@ped_female@02a@base.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@out_of_money@ped_female@02a@base.ycd
deleted file mode 100644
index bb62fece3..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@out_of_money@ped_female@02a@base.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@out_of_money@ped_female@02a@idles.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@out_of_money@ped_female@02a@idles.ycd
deleted file mode 100644
index 079404f10..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@out_of_money@ped_female@02a@idles.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@out_of_money@ped_female@02b@base.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@out_of_money@ped_female@02b@base.ycd
deleted file mode 100644
index 9b0a9720a..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@out_of_money@ped_female@02b@base.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@out_of_money@ped_female@02b@idles.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@out_of_money@ped_female@02b@idles.ycd
deleted file mode 100644
index 44234ce78..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@out_of_money@ped_female@02b@idles.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@out_of_money@ped_male@01a@base.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@out_of_money@ped_male@01a@base.ycd
deleted file mode 100644
index a3cabb7a8..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@out_of_money@ped_male@01a@base.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@out_of_money@ped_male@01a@idles.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@out_of_money@ped_male@01a@idles.ycd
deleted file mode 100644
index 5e23b65a1..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@out_of_money@ped_male@01a@idles.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@out_of_money@ped_male@01b@base.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@out_of_money@ped_male@01b@base.ycd
deleted file mode 100644
index ed5b2a567..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@out_of_money@ped_male@01b@base.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@out_of_money@ped_male@01b@idles.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@out_of_money@ped_male@01b@idles.ycd
deleted file mode 100644
index 6cc833fed..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@out_of_money@ped_male@01b@idles.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@out_of_money@ped_male@02a@base.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@out_of_money@ped_male@02a@base.ycd
deleted file mode 100644
index 48f9b9f30..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@out_of_money@ped_male@02a@base.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@out_of_money@ped_male@02a@idles.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@out_of_money@ped_male@02a@idles.ycd
deleted file mode 100644
index 7458a91bf..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@out_of_money@ped_male@02a@idles.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@out_of_money@ped_male@02b@base.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@out_of_money@ped_male@02b@base.ycd
deleted file mode 100644
index bf51e0cc9..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@out_of_money@ped_male@02b@base.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@out_of_money@ped_male@02b@idles.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@out_of_money@ped_male@02b@idles.ycd
deleted file mode 100644
index 8bb165cf1..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@out_of_money@ped_male@02b@idles.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@peds@.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@peds@.ycd
deleted file mode 100644
index b7564f3a3..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@peds@.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@shop@ped_female@01a@base.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@shop@ped_female@01a@base.ycd
deleted file mode 100644
index f84679e6a..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@shop@ped_female@01a@base.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@shop@ped_female@01a@idles.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@shop@ped_female@01a@idles.ycd
deleted file mode 100644
index 675c46bdb..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@shop@ped_female@01a@idles.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@shop@ped_male@01a@base.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@shop@ped_male@01a@base.ycd
deleted file mode 100644
index 02ec2e131..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@shop@ped_male@01a@base.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@shop@ped_male@01a@idles.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@shop@ped_male@01a@idles.ycd
deleted file mode 100644
index 53b54c181..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@shop@ped_male@01a@idles.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@shop@special_peds@carol@01a@base.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@shop@special_peds@carol@01a@base.ycd
deleted file mode 100644
index fe76f8b08..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@shop@special_peds@carol@01a@base.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@shop@special_peds@carol@01a@idles.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@shop@special_peds@carol@01a@idles.ycd
deleted file mode 100644
index c9a2f8cb2..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@shop@special_peds@carol@01a@idles.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@shop@special_peds@dean@01a@base.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@shop@special_peds@dean@01a@base.ycd
deleted file mode 100644
index 40fade60e..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@shop@special_peds@dean@01a@base.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@shop@special_peds@dean@01a@idles.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@shop@special_peds@dean@01a@idles.ycd
deleted file mode 100644
index ad1b146c1..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@casino@shop@special_peds@dean@01a@idles.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@stand_withdrink@01a@base.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@stand_withdrink@01a@base.ycd
deleted file mode 100644
index bd66eb489..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@stand_withdrink@01a@base.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@waving@female.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@waving@female.ycd
deleted file mode 100644
index a0690dd89..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@waving@female.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@waving@male.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@waving@male.ycd
deleted file mode 100644
index b3a752f9e..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@amb@waving@male.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@move_f@waitress.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@move_f@waitress.ycd
deleted file mode 100644
index 62effcee3..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@move_f@waitress.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@mp_player_intcelebrationfemale@cry_baby.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@mp_player_intcelebrationfemale@cry_baby.ycd
deleted file mode 100644
index 6e48c5a2c..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@mp_player_intcelebrationfemale@cry_baby.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@mp_player_intcelebrationfemale@cut_throat.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@mp_player_intcelebrationfemale@cut_throat.ycd
deleted file mode 100644
index 7d9e86993..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@mp_player_intcelebrationfemale@cut_throat.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@mp_player_intcelebrationfemale@karate_chops.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@mp_player_intcelebrationfemale@karate_chops.ycd
deleted file mode 100644
index 2e6fb1a65..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@mp_player_intcelebrationfemale@karate_chops.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@mp_player_intcelebrationfemale@mind_blown.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@mp_player_intcelebrationfemale@mind_blown.ycd
deleted file mode 100644
index ddc5f8b31..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@mp_player_intcelebrationfemale@mind_blown.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@mp_player_intcelebrationfemale@shadow_boxing.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@mp_player_intcelebrationfemale@shadow_boxing.ycd
deleted file mode 100644
index 3a2087761..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@mp_player_intcelebrationfemale@shadow_boxing.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@mp_player_intcelebrationfemale@stinker.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@mp_player_intcelebrationfemale@stinker.ycd
deleted file mode 100644
index 0040e4751..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@mp_player_intcelebrationfemale@stinker.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@mp_player_intcelebrationfemale@the_woogie.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@mp_player_intcelebrationfemale@the_woogie.ycd
deleted file mode 100644
index fb78d5322..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@mp_player_intcelebrationfemale@the_woogie.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@mp_player_intcelebrationmale@cry_baby.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@mp_player_intcelebrationmale@cry_baby.ycd
deleted file mode 100644
index 4671066fa..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@mp_player_intcelebrationmale@cry_baby.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@mp_player_intcelebrationmale@cut_throat.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@mp_player_intcelebrationmale@cut_throat.ycd
deleted file mode 100644
index 351e9ae0e..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@mp_player_intcelebrationmale@cut_throat.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@mp_player_intcelebrationmale@karate_chops.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@mp_player_intcelebrationmale@karate_chops.ycd
deleted file mode 100644
index 4b3f79d74..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@mp_player_intcelebrationmale@karate_chops.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@mp_player_intcelebrationmale@mind_blown.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@mp_player_intcelebrationmale@mind_blown.ycd
deleted file mode 100644
index 7834262a0..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@mp_player_intcelebrationmale@mind_blown.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@mp_player_intcelebrationmale@shadow_boxing.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@mp_player_intcelebrationmale@shadow_boxing.ycd
deleted file mode 100644
index 4231828c7..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@mp_player_intcelebrationmale@shadow_boxing.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@mp_player_intcelebrationmale@stinker.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@mp_player_intcelebrationmale@stinker.ycd
deleted file mode 100644
index 805d05eb8..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@mp_player_intcelebrationmale@stinker.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@mp_player_intcelebrationmale@the_woogie.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@mp_player_intcelebrationmale@the_woogie.ycd
deleted file mode 100644
index 24ac9eceb..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@mp_player_intcelebrationmale@the_woogie.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@mp_player_intuppercry_baby.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@mp_player_intuppercry_baby.ycd
deleted file mode 100644
index fe0f4ff9f..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@mp_player_intuppercry_baby.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@mp_player_intuppercut_throat.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@mp_player_intuppercut_throat.ycd
deleted file mode 100644
index 639788777..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@mp_player_intuppercut_throat.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@mp_player_intupperkarate_chops.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@mp_player_intupperkarate_chops.ycd
deleted file mode 100644
index 0f7bbd52a..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@mp_player_intupperkarate_chops.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@mp_player_intuppermind_blown.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@mp_player_intuppermind_blown.ycd
deleted file mode 100644
index 95840cf14..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@mp_player_intuppermind_blown.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@mp_player_intuppershadow_boxing.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@mp_player_intuppershadow_boxing.ycd
deleted file mode 100644
index 2dd299e45..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@mp_player_intuppershadow_boxing.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@mp_player_intupperstinker.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@mp_player_intupperstinker.ycd
deleted file mode 100644
index b6b128045..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@mp_player_intupperstinker.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@mp_player_intupperthe_woogie.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@mp_player_intupperthe_woogie.ycd
deleted file mode 100644
index c81b7881a..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@mp_player_intupperthe_woogie.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@mugging@mugger@catch_1h_gun@.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@mugging@mugger@catch_1h_gun@.ycd
deleted file mode 100644
index 5775335b9..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@mugging@mugger@catch_1h_gun@.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@mugging@mugger@catch_2h_gun@.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@mugging@mugger@catch_2h_gun@.ycd
deleted file mode 100644
index fd0f39de7..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@mugging@mugger@catch_2h_gun@.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@mugging@mugger@catch_melee@.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@mugging@mugger@catch_melee@.ycd
deleted file mode 100644
index 4bf376291..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@mugging@mugger@catch_melee@.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@mugging@victim@toss_ped@.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@mugging@victim@toss_ped@.ycd
deleted file mode 100644
index 285d5f3fa..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@mugging@victim@toss_ped@.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@special_peds@alien_landing.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@special_peds@alien_landing.ycd
deleted file mode 100644
index 712e6f6c3..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@special_peds@alien_landing.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@special_peds@casino@bar@ped_male@sit_withdrink@01a@base.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@special_peds@casino@bar@ped_male@sit_withdrink@01a@base.ycd
deleted file mode 100644
index 621ce925d..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@special_peds@casino@bar@ped_male@sit_withdrink@01a@base.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@special_peds@casino@bar@ped_male@sit_withdrink@01a@idles.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@special_peds@casino@bar@ped_male@sit_withdrink@01a@idles.ycd
deleted file mode 100644
index f06ac091e..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@special_peds@casino@bar@ped_male@sit_withdrink@01a@idles.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@special_peds@casino@bar@ped_male@stand_withdrink@01a@base.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@special_peds@casino@bar@ped_male@stand_withdrink@01a@base.ycd
deleted file mode 100644
index 3c4d00cbf..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@special_peds@casino@bar@ped_male@stand_withdrink@01a@base.ycd and /dev/null differ
diff --git a/resources/EmoteMenu/stream/CasinoEmotes/anim@special_peds@casino@dean@slots@.ycd b/resources/EmoteMenu/stream/CasinoEmotes/anim@special_peds@casino@dean@slots@.ycd
deleted file mode 100644
index 7be9ba830..000000000
Binary files a/resources/EmoteMenu/stream/CasinoEmotes/anim@special_peds@casino@dean@slots@.ycd and /dev/null differ
diff --git a/resources/dpemotes-master/stream/[Custom Emotes]/MissSnowieEmotes/misssnowie@hearthands.ycd b/resources/EmoteMenu/stream/[Custom Emotes]/MissSnowieEmotes/misssnowie@hearthands.ycd
similarity index 100%
rename from resources/dpemotes-master/stream/[Custom Emotes]/MissSnowieEmotes/misssnowie@hearthands.ycd
rename to resources/EmoteMenu/stream/[Custom Emotes]/MissSnowieEmotes/misssnowie@hearthands.ycd
diff --git a/resources/dpemotes-master/stream/[Custom Emotes]/MissSnowieEmotes/misssnowie@little_doggy_lying_down.ycd b/resources/EmoteMenu/stream/[Custom Emotes]/MissSnowieEmotes/misssnowie@little_doggy_lying_down.ycd
similarity index 100%
rename from resources/dpemotes-master/stream/[Custom Emotes]/MissSnowieEmotes/misssnowie@little_doggy_lying_down.ycd
rename to resources/EmoteMenu/stream/[Custom Emotes]/MissSnowieEmotes/misssnowie@little_doggy_lying_down.ycd
diff --git a/resources/dpemotes-master/stream/[Props]/FixedClipboard/p_cs_clipboard.ydr b/resources/EmoteMenu/stream/[Props]/FixedClipboard/p_cs_clipboard.ydr
similarity index 100%
rename from resources/dpemotes-master/stream/[Props]/FixedClipboard/p_cs_clipboard.ydr
rename to resources/EmoteMenu/stream/[Props]/FixedClipboard/p_cs_clipboard.ydr
diff --git a/resources/dpemotes-master/stream/[Props]/Pride Props/_manifestlilflags.ymf b/resources/EmoteMenu/stream/[Props]/Pride Props/_manifestlilflags.ymf
similarity index 100%
rename from resources/dpemotes-master/stream/[Props]/Pride Props/_manifestlilflags.ymf
rename to resources/EmoteMenu/stream/[Props]/Pride Props/_manifestlilflags.ymf
diff --git a/resources/dpemotes-master/stream/[Props]/Pride Props/_manifestprideprops.ymf b/resources/EmoteMenu/stream/[Props]/Pride Props/_manifestprideprops.ymf
similarity index 100%
rename from resources/dpemotes-master/stream/[Props]/Pride Props/_manifestprideprops.ymf
rename to resources/EmoteMenu/stream/[Props]/Pride Props/_manifestprideprops.ymf
diff --git a/resources/dpemotes-master/stream/[Props]/Pride Props/lilflags_ytyp.ytyp b/resources/EmoteMenu/stream/[Props]/Pride Props/lilflags_ytyp.ytyp
similarity index 100%
rename from resources/dpemotes-master/stream/[Props]/Pride Props/lilflags_ytyp.ytyp
rename to resources/EmoteMenu/stream/[Props]/Pride Props/lilflags_ytyp.ytyp
diff --git a/resources/dpemotes-master/stream/[Props]/Pride Props/lilprideflag1.ydr b/resources/EmoteMenu/stream/[Props]/Pride Props/lilprideflag1.ydr
similarity index 100%
rename from resources/dpemotes-master/stream/[Props]/Pride Props/lilprideflag1.ydr
rename to resources/EmoteMenu/stream/[Props]/Pride Props/lilprideflag1.ydr
diff --git a/resources/dpemotes-master/stream/[Props]/Pride Props/lilprideflag2.ydr b/resources/EmoteMenu/stream/[Props]/Pride Props/lilprideflag2.ydr
similarity index 100%
rename from resources/dpemotes-master/stream/[Props]/Pride Props/lilprideflag2.ydr
rename to resources/EmoteMenu/stream/[Props]/Pride Props/lilprideflag2.ydr
diff --git a/resources/dpemotes-master/stream/[Props]/Pride Props/lilprideflag3.ydr b/resources/EmoteMenu/stream/[Props]/Pride Props/lilprideflag3.ydr
similarity index 100%
rename from resources/dpemotes-master/stream/[Props]/Pride Props/lilprideflag3.ydr
rename to resources/EmoteMenu/stream/[Props]/Pride Props/lilprideflag3.ydr
diff --git a/resources/dpemotes-master/stream/[Props]/Pride Props/lilprideflag4.ydr b/resources/EmoteMenu/stream/[Props]/Pride Props/lilprideflag4.ydr
similarity index 100%
rename from resources/dpemotes-master/stream/[Props]/Pride Props/lilprideflag4.ydr
rename to resources/EmoteMenu/stream/[Props]/Pride Props/lilprideflag4.ydr
diff --git a/resources/dpemotes-master/stream/[Props]/Pride Props/lilprideflag5.ydr b/resources/EmoteMenu/stream/[Props]/Pride Props/lilprideflag5.ydr
similarity index 100%
rename from resources/dpemotes-master/stream/[Props]/Pride Props/lilprideflag5.ydr
rename to resources/EmoteMenu/stream/[Props]/Pride Props/lilprideflag5.ydr
diff --git a/resources/dpemotes-master/stream/[Props]/Pride Props/lilprideflag6.ydr b/resources/EmoteMenu/stream/[Props]/Pride Props/lilprideflag6.ydr
similarity index 100%
rename from resources/dpemotes-master/stream/[Props]/Pride Props/lilprideflag6.ydr
rename to resources/EmoteMenu/stream/[Props]/Pride Props/lilprideflag6.ydr
diff --git a/resources/dpemotes-master/stream/[Props]/Pride Props/lilprideflag7.ydr b/resources/EmoteMenu/stream/[Props]/Pride Props/lilprideflag7.ydr
similarity index 100%
rename from resources/dpemotes-master/stream/[Props]/Pride Props/lilprideflag7.ydr
rename to resources/EmoteMenu/stream/[Props]/Pride Props/lilprideflag7.ydr
diff --git a/resources/dpemotes-master/stream/[Props]/Pride Props/lilprideflag8.ydr b/resources/EmoteMenu/stream/[Props]/Pride Props/lilprideflag8.ydr
similarity index 100%
rename from resources/dpemotes-master/stream/[Props]/Pride Props/lilprideflag8.ydr
rename to resources/EmoteMenu/stream/[Props]/Pride Props/lilprideflag8.ydr
diff --git a/resources/dpemotes-master/stream/[Props]/Pride Props/lilprideflag9.ydr b/resources/EmoteMenu/stream/[Props]/Pride Props/lilprideflag9.ydr
similarity index 100%
rename from resources/dpemotes-master/stream/[Props]/Pride Props/lilprideflag9.ydr
rename to resources/EmoteMenu/stream/[Props]/Pride Props/lilprideflag9.ydr
diff --git a/resources/dpemotes-master/stream/[Props]/Pride Props/pride_sign_01.ydr b/resources/EmoteMenu/stream/[Props]/Pride Props/pride_sign_01.ydr
similarity index 100%
rename from resources/dpemotes-master/stream/[Props]/Pride Props/pride_sign_01.ydr
rename to resources/EmoteMenu/stream/[Props]/Pride Props/pride_sign_01.ydr
diff --git a/resources/dpemotes-master/stream/[Props]/Pride Props/prideflag1.ydr b/resources/EmoteMenu/stream/[Props]/Pride Props/prideflag1.ydr
similarity index 100%
rename from resources/dpemotes-master/stream/[Props]/Pride Props/prideflag1.ydr
rename to resources/EmoteMenu/stream/[Props]/Pride Props/prideflag1.ydr
diff --git a/resources/dpemotes-master/stream/[Props]/Pride Props/prideflag2.ydr b/resources/EmoteMenu/stream/[Props]/Pride Props/prideflag2.ydr
similarity index 100%
rename from resources/dpemotes-master/stream/[Props]/Pride Props/prideflag2.ydr
rename to resources/EmoteMenu/stream/[Props]/Pride Props/prideflag2.ydr
diff --git a/resources/dpemotes-master/stream/[Props]/Pride Props/prideflag3.ydr b/resources/EmoteMenu/stream/[Props]/Pride Props/prideflag3.ydr
similarity index 100%
rename from resources/dpemotes-master/stream/[Props]/Pride Props/prideflag3.ydr
rename to resources/EmoteMenu/stream/[Props]/Pride Props/prideflag3.ydr
diff --git a/resources/dpemotes-master/stream/[Props]/Pride Props/prideflag4.ydr b/resources/EmoteMenu/stream/[Props]/Pride Props/prideflag4.ydr
similarity index 100%
rename from resources/dpemotes-master/stream/[Props]/Pride Props/prideflag4.ydr
rename to resources/EmoteMenu/stream/[Props]/Pride Props/prideflag4.ydr
diff --git a/resources/dpemotes-master/stream/[Props]/Pride Props/prideflag5.ydr b/resources/EmoteMenu/stream/[Props]/Pride Props/prideflag5.ydr
similarity index 100%
rename from resources/dpemotes-master/stream/[Props]/Pride Props/prideflag5.ydr
rename to resources/EmoteMenu/stream/[Props]/Pride Props/prideflag5.ydr
diff --git a/resources/dpemotes-master/stream/[Props]/Pride Props/prideflag6.ydr b/resources/EmoteMenu/stream/[Props]/Pride Props/prideflag6.ydr
similarity index 100%
rename from resources/dpemotes-master/stream/[Props]/Pride Props/prideflag6.ydr
rename to resources/EmoteMenu/stream/[Props]/Pride Props/prideflag6.ydr
diff --git a/resources/dpemotes-master/stream/[Props]/Pride Props/prideflag7.ydr b/resources/EmoteMenu/stream/[Props]/Pride Props/prideflag7.ydr
similarity index 100%
rename from resources/dpemotes-master/stream/[Props]/Pride Props/prideflag7.ydr
rename to resources/EmoteMenu/stream/[Props]/Pride Props/prideflag7.ydr
diff --git a/resources/dpemotes-master/stream/[Props]/Pride Props/prideflag8.ydr b/resources/EmoteMenu/stream/[Props]/Pride Props/prideflag8.ydr
similarity index 100%
rename from resources/dpemotes-master/stream/[Props]/Pride Props/prideflag8.ydr
rename to resources/EmoteMenu/stream/[Props]/Pride Props/prideflag8.ydr
diff --git a/resources/dpemotes-master/stream/[Props]/Pride Props/prideflag9.ydr b/resources/EmoteMenu/stream/[Props]/Pride Props/prideflag9.ydr
similarity index 100%
rename from resources/dpemotes-master/stream/[Props]/Pride Props/prideflag9.ydr
rename to resources/EmoteMenu/stream/[Props]/Pride Props/prideflag9.ydr
diff --git a/resources/dpemotes-master/stream/[Props]/Pride Props/prideprops_ytyp.ytyp b/resources/EmoteMenu/stream/[Props]/Pride Props/prideprops_ytyp.ytyp
similarity index 100%
rename from resources/dpemotes-master/stream/[Props]/Pride Props/prideprops_ytyp.ytyp
rename to resources/EmoteMenu/stream/[Props]/Pride Props/prideprops_ytyp.ytyp
diff --git a/resources/dpemotes-master/stream/[Props]/Umbrella/p_amb_brolly_01.ydr b/resources/EmoteMenu/stream/[Props]/Umbrella/p_amb_brolly_01.ydr
similarity index 100%
rename from resources/dpemotes-master/stream/[Props]/Umbrella/p_amb_brolly_01.ydr
rename to resources/EmoteMenu/stream/[Props]/Umbrella/p_amb_brolly_01.ydr
diff --git a/resources/dpemotes-master/stream/[Props]/badge1/_manifest.ymf b/resources/EmoteMenu/stream/[Props]/badge1/_manifest.ymf
similarity index 100%
rename from resources/dpemotes-master/stream/[Props]/badge1/_manifest.ymf
rename to resources/EmoteMenu/stream/[Props]/badge1/_manifest.ymf
diff --git a/resources/dpemotes-master/stream/[Props]/badge1/badge1.ytyp b/resources/EmoteMenu/stream/[Props]/badge1/badge1.ytyp
similarity index 100%
rename from resources/dpemotes-master/stream/[Props]/badge1/badge1.ytyp
rename to resources/EmoteMenu/stream/[Props]/badge1/badge1.ytyp
diff --git a/resources/dpemotes-master/stream/[Props]/badge1/prop_lspd_badge+hidr.ytd b/resources/EmoteMenu/stream/[Props]/badge1/prop_lspd_badge+hidr.ytd
similarity index 100%
rename from resources/dpemotes-master/stream/[Props]/badge1/prop_lspd_badge+hidr.ytd
rename to resources/EmoteMenu/stream/[Props]/badge1/prop_lspd_badge+hidr.ytd
diff --git a/resources/dpemotes-master/stream/[Props]/badge1/prop_lspd_badge.ydr b/resources/EmoteMenu/stream/[Props]/badge1/prop_lspd_badge.ydr
similarity index 100%
rename from resources/dpemotes-master/stream/[Props]/badge1/prop_lspd_badge.ydr
rename to resources/EmoteMenu/stream/[Props]/badge1/prop_lspd_badge.ydr
diff --git a/resources/dpemotes-master/stream/[Props]/badge2/_manifest.ymf b/resources/EmoteMenu/stream/[Props]/badge2/_manifest.ymf
similarity index 100%
rename from resources/dpemotes-master/stream/[Props]/badge2/_manifest.ymf
rename to resources/EmoteMenu/stream/[Props]/badge2/_manifest.ymf
diff --git a/resources/dpemotes-master/stream/[Props]/badge2/copbadge.ytyp b/resources/EmoteMenu/stream/[Props]/badge2/copbadge.ytyp
similarity index 100%
rename from resources/dpemotes-master/stream/[Props]/badge2/copbadge.ytyp
rename to resources/EmoteMenu/stream/[Props]/badge2/copbadge.ytyp
diff --git a/resources/dpemotes-master/stream/[Props]/badge2/prop_cop_badge+hidr.ytd b/resources/EmoteMenu/stream/[Props]/badge2/prop_cop_badge+hidr.ytd
similarity index 100%
rename from resources/dpemotes-master/stream/[Props]/badge2/prop_cop_badge+hidr.ytd
rename to resources/EmoteMenu/stream/[Props]/badge2/prop_cop_badge+hidr.ytd
diff --git a/resources/dpemotes-master/stream/[Props]/badge2/prop_cop_badge.ydr b/resources/EmoteMenu/stream/[Props]/badge2/prop_cop_badge.ydr
similarity index 100%
rename from resources/dpemotes-master/stream/[Props]/badge2/prop_cop_badge.ydr
rename to resources/EmoteMenu/stream/[Props]/badge2/prop_cop_badge.ydr
diff --git a/resources/EmoteMenu/version b/resources/EmoteMenu/version
index 7b27b2519..bea0d09c4 100644
--- a/resources/EmoteMenu/version
+++ b/resources/EmoteMenu/version
@@ -1 +1 @@
-173
\ No newline at end of file
+207
\ No newline at end of file
diff --git a/resources/dpemotes-master/NativeUI.lua b/resources/dpemotes-master/NativeUI.lua
deleted file mode 100644
index 3fa972771..000000000
--- a/resources/dpemotes-master/NativeUI.lua
+++ /dev/null
@@ -1,3875 +0,0 @@
-UIResRectangle = setmetatable({}, UIResRectangle)
-UIResRectangle.__index = UIResRectangle
-UIResRectangle.__call = function() return "Rectangle" end
-
-UIResText = setmetatable({}, UIResText)
-UIResText.__index = UIResText
-UIResText.__call = function() return "Text" end
-
-Sprite = setmetatable({}, Sprite)
-Sprite.__index = Sprite
-Sprite.__call = function() return "Sprite" end
-
-UIMenuItem = setmetatable({}, UIMenuItem)
-UIMenuItem.__index = UIMenuItem
-UIMenuItem.__call = function() return "UIMenuItem", "UIMenuItem" end
-
-UIMenuCheckboxItem = setmetatable({}, UIMenuCheckboxItem)
-UIMenuCheckboxItem.__index = UIMenuCheckboxItem
-UIMenuCheckboxItem.__call = function() return "UIMenuItem", "UIMenuCheckboxItem" end
-
-UIMenuListItem = setmetatable({}, UIMenuListItem)
-UIMenuListItem.__index = UIMenuListItem
-UIMenuListItem.__call = function() return "UIMenuItem", "UIMenuListItem" end
-
-UIMenuSliderItem = setmetatable({}, UIMenuSliderItem)
-UIMenuSliderItem.__index = UIMenuSliderItem
-UIMenuSliderItem.__call = function() return "UIMenuItem", "UIMenuSliderItem" end
-
-UIMenuColouredItem = setmetatable({}, UIMenuColouredItem)
-UIMenuColouredItem.__index = UIMenuColouredItem
-UIMenuColouredItem.__call = function() return "UIMenuItem", "UIMenuColouredItem" end
-
-UIMenuProgressItem = setmetatable({}, UIMenuProgressItem)
-UIMenuProgressItem.__index = UIMenuProgressItem
-UIMenuProgressItem.__call = function() return "UIMenuItem", "UIMenuProgressItem" end
-
-UIMenuHeritageWindow = setmetatable({}, UIMenuHeritageWindow)
-UIMenuHeritageWindow.__index = UIMenuHeritageWindow
-UIMenuHeritageWindow.__call = function() return "UIMenuWindow", "UIMenuHeritageWindow" end
-
-UIMenuGridPanel = setmetatable({}, UIMenuGridPanel)
-UIMenuGridPanel.__index = UIMenuGridPanel
-UIMenuGridPanel.__call = function() return "UIMenuPanel", "UIMenuGridPanel" end
-
-UIMenuColourPanel = setmetatable({}, UIMenuColourPanel)
-UIMenuColourPanel.__index = UIMenuColourPanel
-UIMenuColourPanel.__call = function() return "UIMenuPanel", "UIMenuColourPanel" end
-
-UIMenuPercentagePanel = setmetatable({}, UIMenuPercentagePanel)
-UIMenuPercentagePanel.__index = UIMenuPercentagePanel
-UIMenuPercentagePanel.__call = function() return "UIMenuPanel", "UIMenuPercentagePanel" end
-
-UIMenu = setmetatable({}, UIMenu)
-UIMenu.__index = UIMenu
-UIMenu.__call = function() return "UIMenu" end
-
-MenuPool = setmetatable({}, MenuPool)
-MenuPool.__index = MenuPool
-
-NativeUI = {}
-
-CharacterMap = { [' '] = 6, ['!'] = 6, ['"'] = 6, ['#'] = 11, ['$'] = 10, ['%'] = 17, ['&'] = 13, ['\\'] = 4, ['('] = 6, [')'] = 6, ['*'] = 7, ['+'] = 10, [','] = 4, ['-'] = 6, ['.'] = 4, ['/'] = 7, ['0'] = 12, ['1'] = 7, ['2'] = 11, ['3'] = 11, ['4'] = 11, ['5'] = 11, ['6'] = 12, ['7'] = 10, ['8'] = 11, ['9'] = 11, [':'] = 5, [';'] = 4, ['<'] = 9, ['='] = 9, ['>'] = 9, ['?'] = 10, ['@'] = 15, ['A'] = 12, ['B'] = 13, ['C'] = 14, ['D'] = 14, ['E'] = 12, ['F'] = 12, ['G'] = 15, ['H'] = 14, ['I'] = 5, ['J'] = 11, ['K'] = 13, ['L'] = 11, ['M'] = 16, ['N'] = 14, ['O'] = 16, ['P'] = 12, ['Q'] = 15, ['R'] = 13, ['S'] = 12, ['T'] = 11, ['U'] = 13, ['V'] = 12, ['W'] = 18, ['X'] = 11, ['Y'] = 11, ['Z'] = 12, ['['] = 6, [']'] = 6, ['^'] = 9, ['_'] = 18, ['`'] = 8, ['a'] = 11, ['b'] = 12, ['c'] = 11, ['d'] = 12, ['e'] = 12, ['f'] = 5, ['g'] = 13, ['h'] = 11, ['i'] = 4, ['j'] = 4, ['k'] = 10, ['l'] = 4, ['m'] = 18, ['n'] = 11, ['o'] = 12, ['p'] = 12, ['q'] = 12, ['r'] = 7, ['s'] = 9, ['t'] = 5, ['u'] = 11, ['v'] = 10, ['w'] = 14, ['x'] = 9, ['y'] = 10, ['z'] = 9, ['{'] = 6, ['|'] = 3, ['}'] = 6 }
-
-BadgeStyle = { None = 0, BronzeMedal = 1, GoldMedal = 2, SilverMedal = 3, Alert = 4, Crown = 5, Ammo = 6, Armour = 7, Barber = 8, Clothes = 9, Franklin = 10, Bike = 11, Car = 12, Gun = 13, Heart = 14, Makeup = 15, Mask = 16, Michael = 17, Star = 18, Tattoo = 19, Trevor = 20, Lock = 21, Tick = 22 }
-
-BadgeTexture = {
- [0] = function() return "" end,
- [1] = function() return "mp_medal_bronze" end,
- [2] = function() return "mp_medal_gold" end,
- [3] = function() return "medal_silver" end,
- [4] = function() return "mp_alerttriangle" end,
- [5] = function() return "mp_hostcrown" end,
- [6] = function(Selected) if Selected then return "shop_ammo_icon_b" else return "shop_ammo_icon_a" end end,
- [7] = function(Selected) if Selected then return "shop_armour_icon_b" else return "shop_armour_icon_a" end end,
- [8] = function(Selected) if Selected then return "shop_barber_icon_b" else return "shop_barber_icon_a" end end,
- [9] = function(Selected) if Selected then return "shop_clothing_icon_b" else return "shop_clothing_icon_a" end end,
- [10] = function(Selected) if Selected then return "shop_franklin_icon_b" else return "shop_franklin_icon_a" end end,
- [11] = function(Selected) if Selected then return "shop_garage_bike_icon_b" else return "shop_garage_bike_icon_a" end end,
- [12] = function(Selected) if Selected then return "shop_garage_icon_b" else return "shop_garage_icon_a" end end,
- [13] = function(Selected) if Selected then return "shop_gunclub_icon_b" else return "shop_gunclub_icon_a" end end,
- [14] = function(Selected) if Selected then return "shop_health_icon_b" else return "shop_health_icon_a" end end,
- [15] = function(Selected) if Selected then return "shop_makeup_icon_b" else return "shop_makeup_icon_a" end end,
- [16] = function(Selected) if Selected then return "shop_mask_icon_b" else return "shop_mask_icon_a" end end,
- [17] = function(Selected) if Selected then return "shop_michael_icon_b" else return "shop_michael_icon_a" end end,
- [18] = function() return "shop_new_star" end,
- [19] = function(Selected) if Selected then return "shop_tattoos_icon_b" else return "shop_tattoos_icon_a" end end,
- [20] = function(Selected) if Selected then return "shop_trevor_icon_b" else return "shop_trevor_icon_a" end end,
- [21] = function() return "shop_lock" end,
- [22] = function() return "shop_tick_icon" end,
-}
-
-BadgeDictionary = {
- [0] = function(Selected)
- if Selected then
- return "commonmenu"
- else
- return "commonmenu"
- end
- end,
-}
-
-BadgeColour = {
- [5] = function(Selected) if Selected then return 0, 0, 0, 255 else return 255, 255, 255, 255 end end,
- [21] = function(Selected) if Selected then return 0, 0, 0, 255 else return 255, 255, 255, 255 end end,
- [22] = function(Selected) if Selected then return 0, 0, 0, 255 else return 255, 255, 255, 255 end end,
-}
-
-Colours = {
- PureWhite = { 255, 255, 255, 255 },
- White = { 240, 240, 240, 255 },
- Black = { 0, 0, 0, 255 },
- Grey = { 155, 155, 155, 255 },
- GreyLight = { 205, 205, 205, 255 },
- GreyDark = { 77, 77, 77, 255 },
- Red = { 224, 50, 50, 255 },
- RedLight = { 240, 153, 153, 255 },
- RedDark = { 112, 25, 25, 255 },
- Blue = { 93, 182, 229, 255 },
- BlueLight = { 174, 219, 242, 255 },
- BlueDark = { 47, 92, 115, 255 },
- Yellow = { 240, 200, 80, 255 },
- YellowLight = { 254, 235, 169, 255 },
- YellowDark = { 126, 107, 41, 255 },
- Orange = { 255, 133, 85, 255 },
- OrangeLight = { 255, 194, 170, 255 },
- OrangeDark = { 127, 66, 42, 255 },
- Green = { 114, 204, 114, 255 },
- GreenLight = { 185, 230, 185, 255 },
- GreenDark = { 57, 102, 57, 255 },
- Purple = { 132, 102, 226, 255 },
- PurpleLight = { 192, 179, 239, 255 },
- PurpleDark = { 67, 57, 111, 255 },
- Pink = { 203, 54, 148, 255 },
- RadarHealth = { 53, 154, 71, 255 },
- RadarArmour = { 93, 182, 229, 255 },
- RadarDamage = { 235, 36, 39, 255 },
- NetPlayer1 = { 194, 80, 80, 255 },
- NetPlayer2 = { 156, 110, 175, 255 },
- NetPlayer3 = { 255, 123, 196, 255 },
- NetPlayer4 = { 247, 159, 123, 255 },
- NetPlayer5 = { 178, 144, 132, 255 },
- NetPlayer6 = { 141, 206, 167, 255 },
- NetPlayer7 = { 113, 169, 175, 255 },
- NetPlayer8 = { 211, 209, 231, 255 },
- NetPlayer9 = { 144, 127, 153, 255 },
- NetPlayer10 = { 106, 196, 191, 255 },
- NetPlayer11 = { 214, 196, 153, 255 },
- NetPlayer12 = { 234, 142, 80, 255 },
- NetPlayer13 = { 152, 203, 234, 255 },
- NetPlayer14 = { 178, 98, 135, 255 },
- NetPlayer15 = { 144, 142, 122, 255 },
- NetPlayer16 = { 166, 117, 94, 255 },
- NetPlayer17 = { 175, 168, 168, 255 },
- NetPlayer18 = { 232, 142, 155, 255 },
- NetPlayer19 = { 187, 214, 91, 255 },
- NetPlayer20 = { 12, 123, 86, 255 },
- NetPlayer21 = { 123, 196, 255, 255 },
- NetPlayer22 = { 171, 60, 230, 255 },
- NetPlayer23 = { 206, 169, 13, 255 },
- NetPlayer24 = { 71, 99, 173, 255 },
- NetPlayer25 = { 42, 166, 185, 255 },
- NetPlayer26 = { 186, 157, 125, 255 },
- NetPlayer27 = { 201, 225, 255, 255 },
- NetPlayer28 = { 240, 240, 150, 255 },
- NetPlayer29 = { 237, 140, 161, 255 },
- NetPlayer30 = { 249, 138, 138, 255 },
- NetPlayer31 = { 252, 239, 166, 255 },
- NetPlayer32 = { 240, 240, 240, 255 },
- SimpleBlipDefault = { 159, 201, 166, 255 },
- MenuBlue = { 140, 140, 140, 255 },
- MenuGreyLight = { 140, 140, 140, 255 },
- MenuBlueExtraDark = { 40, 40, 40, 255 },
- MenuYellow = { 240, 160, 0, 255 },
- MenuYellowDark = { 240, 160, 0, 255 },
- MenuGreen = { 240, 160, 0, 255 },
- MenuGrey = { 140, 140, 140, 255 },
- MenuGreyDark = { 60, 60, 60, 255 },
- MenuHighlight = { 30, 30, 30, 255 },
- MenuStandard = { 140, 140, 140, 255 },
- MenuDimmed = { 75, 75, 75, 255 },
- MenuExtraDimmed = { 50, 50, 50, 255 },
- BriefTitle = { 95, 95, 95, 255 },
- MidGreyMp = { 100, 100, 100, 255 },
- NetPlayer1Dark = { 93, 39, 39, 255 },
- NetPlayer2Dark = { 77, 55, 89, 255 },
- NetPlayer3Dark = { 124, 62, 99, 255 },
- NetPlayer4Dark = { 120, 80, 80, 255 },
- NetPlayer5Dark = { 87, 72, 66, 255 },
- NetPlayer6Dark = { 74, 103, 83, 255 },
- NetPlayer7Dark = { 60, 85, 88, 255 },
- NetPlayer8Dark = { 105, 105, 64, 255 },
- NetPlayer9Dark = { 72, 63, 76, 255 },
- NetPlayer10Dark = { 53, 98, 95, 255 },
- NetPlayer11Dark = { 107, 98, 76, 255 },
- NetPlayer12Dark = { 117, 71, 40, 255 },
- NetPlayer13Dark = { 76, 101, 117, 255 },
- NetPlayer14Dark = { 65, 35, 47, 255 },
- NetPlayer15Dark = { 72, 71, 61, 255 },
- NetPlayer16Dark = { 85, 58, 47, 255 },
- NetPlayer17Dark = { 87, 84, 84, 255 },
- NetPlayer18Dark = { 116, 71, 77, 255 },
- NetPlayer19Dark = { 93, 107, 45, 255 },
- NetPlayer20Dark = { 6, 61, 43, 255 },
- NetPlayer21Dark = { 61, 98, 127, 255 },
- NetPlayer22Dark = { 85, 30, 115, 255 },
- NetPlayer23Dark = { 103, 84, 6, 255 },
- NetPlayer24Dark = { 35, 49, 86, 255 },
- NetPlayer25Dark = { 21, 83, 92, 255 },
- NetPlayer26Dark = { 93, 98, 62, 255 },
- NetPlayer27Dark = { 100, 112, 127, 255 },
- NetPlayer28Dark = { 120, 120, 75, 255 },
- NetPlayer29Dark = { 152, 76, 93, 255 },
- NetPlayer30Dark = { 124, 69, 69, 255 },
- NetPlayer31Dark = { 10, 43, 50, 255 },
- NetPlayer32Dark = { 95, 95, 10, 255 },
- Bronze = { 180, 130, 97, 255 },
- Silver = { 150, 153, 161, 255 },
- Gold = { 214, 181, 99, 255 },
- Platinum = { 166, 221, 190, 255 },
- Gang1 = { 29, 100, 153, 255 },
- Gang2 = { 214, 116, 15, 255 },
- Gang3 = { 135, 125, 142, 255 },
- Gang4 = { 229, 119, 185, 255 },
- SameCrew = { 252, 239, 166, 255 },
- Freemode = { 45, 110, 185, 255 },
- PauseBg = { 0, 0, 0, 255 },
- Friendly = { 93, 182, 229, 255 },
- Enemy = { 194, 80, 80, 255 },
- Location = { 240, 200, 80, 255 },
- Pickup = { 114, 204, 114, 255 },
- PauseSingleplayer = { 114, 204, 114, 255 },
- FreemodeDark = { 22, 55, 92, 255 },
- InactiveMission = { 154, 154, 154, 255 },
- Damage = { 194, 80, 80, 255 },
- PinkLight = { 252, 115, 201, 255 },
- PmMitemHighlight = { 252, 177, 49, 255 },
- ScriptVariable = { 0, 0, 0, 255 },
- Yoga = { 109, 247, 204, 255 },
- Tennis = { 241, 101, 34, 255 },
- Golf = { 214, 189, 97, 255 },
- ShootingRange = { 112, 25, 25, 255 },
- FlightSchool = { 47, 92, 115, 255 },
- NorthBlue = { 93, 182, 229, 255 },
- SocialClub = { 234, 153, 28, 255 },
- PlatformBlue = { 11, 55, 123, 255 },
- PlatformGreen = { 146, 200, 62, 255 },
- PlatformGrey = { 234, 153, 28, 255 },
- FacebookBlue = { 66, 89, 148, 255 },
- IngameBg = { 0, 0, 0, 255 },
- Darts = { 114, 204, 114, 255 },
- Waypoint = { 164, 76, 242, 255 },
- Michael = { 101, 180, 212, 255 },
- Franklin = { 171, 237, 171, 255 },
- Trevor = { 255, 163, 87, 255 },
- GolfP1 = { 240, 240, 240, 255 },
- GolfP2 = { 235, 239, 30, 255 },
- GolfP3 = { 255, 149, 14, 255 },
- GolfP4 = { 246, 60, 161, 255 },
- WaypointLight = { 210, 166, 249, 255 },
- WaypointDark = { 82, 38, 121, 255 },
- PanelLight = { 0, 0, 0, 255 },
- MichaelDark = { 72, 103, 116, 255 },
- FranklinDark = { 85, 118, 85, 255 },
- TrevorDark = { 127, 81, 43, 255 },
- ObjectiveRoute = { 240, 200, 80, 255 },
- PausemapTint = { 0, 0, 0, 255 },
- PauseDeselect = { 100, 100, 100, 255 },
- PmWeaponsPurchasable = { 45, 110, 185, 255 },
- PmWeaponsLocked = { 240, 240, 240, 255 },
- ScreenBg = { 0, 0, 0, 255 },
- Chop = { 224, 50, 50, 255 },
- PausemapTintHalf = { 0, 0, 0, 255 },
- NorthBlueOfficial = { 0, 71, 133, 255 },
- ScriptVariable2 = { 0, 0, 0, 255 },
- H = { 33, 118, 37, 255 },
- HDark = { 37, 102, 40, 255 },
- T = { 234, 153, 28, 255 },
- TDark = { 225, 140, 8, 255 },
- HShard = { 20, 40, 0, 255 },
- ControllerMichael = { 48, 255, 255, 255 },
- ControllerFranklin = { 48, 255, 0, 255 },
- ControllerTrevor = { 176, 80, 0, 255 },
- ControllerChop = { 127, 0, 0, 255 },
- VideoEditorVideo = { 53, 166, 224, 255 },
- VideoEditorAudio = { 162, 79, 157, 255 },
- VideoEditorText = { 104, 192, 141, 255 },
- HbBlue = { 29, 100, 153, 255 },
- HbYellow = { 234, 153, 28, 255 },
- VideoEditorScore = { 240, 160, 1, 255 },
- VideoEditorAudioFadeout = { 59, 34, 57, 255 },
- VideoEditorTextFadeout = { 41, 68, 53, 255 },
- VideoEditorScoreFadeout = { 82, 58, 10, 255 },
- HeistBackground = { 37, 102, 40, 255 },
- VideoEditorAmbient = { 240, 200, 80, 255 },
- VideoEditorAmbientFadeout = { 80, 70, 34, 255 },
- Gb = { 255, 133, 85, 255 },
- G = { 255, 194, 170, 255 },
- B = { 255, 133, 85, 255 },
- LowFlow = { 240, 200, 80, 255 },
- LowFlowDark = { 126, 107, 41, 255 },
- G1 = { 247, 159, 123, 255 },
- G2 = { 226, 134, 187, 255 },
- G3 = { 239, 238, 151, 255 },
- G4 = { 113, 169, 175, 255 },
- G5 = { 160, 140, 193, 255 },
- G6 = { 141, 206, 167, 255 },
- G7 = { 181, 214, 234, 255 },
- G8 = { 178, 144, 132, 255 },
- G9 = { 0, 132, 114, 255 },
- G10 = { 216, 85, 117, 255 },
- G11 = { 30, 100, 152, 255 },
- G12 = { 43, 181, 117, 255 },
- G13 = { 233, 141, 79, 255 },
- G14 = { 137, 210, 215, 255 },
- G15 = { 134, 125, 141, 255 },
- Adversary = { 109, 34, 33, 255 },
- DegenRed = { 255, 0, 0, 255 },
- DegenYellow = { 255, 255, 0, 255 },
- DegenGreen = { 0, 255, 0, 255 },
- DegenCyan = { 0, 255, 255, 255 },
- DegenBlue = { 0, 0, 255, 255 },
- DegenMagenta = { 255, 0, 255, 255 },
- Stunt1 = { 38, 136, 234, 255 },
- Stunt2 = { 224, 50, 50, 255 },
-}
-
---[[
- Utils.lua
- Utilities
---]]
-
-function GetResolution()
- local W, H = GetActiveScreenResolution()
- if (W / H) > 3.5 then
- return GetScreenResolution()
- else
- return W, H
- end
-end
-
-function FormatXWYH(Value, Value2)
- return Value / 1920, Value2 / 1080
-end
-
-function math.round(num, numDecimalPlaces)
- return tonumber(string.format("%." .. (numDecimalPlaces or 0) .. "f", num))
-end
-
-function tobool(input)
- if input == "true" or tonumber(input) == 1 or input == true then
- return true
- else
- return false
- end
-end
-
-function string.split(inputstr, sep)
- if sep == nil then
- sep = "%s"
- end
- local t = {};
- i = 1
- for str in string.gmatch(inputstr, "([^" .. sep .. "]+)") do
- t[i] = str
- i = i + 1
- end
-
- return t
-end
-
-function string.starts(String, Start)
- return string.sub(String, 1, string.len(Start)) == Start
-end
-
-function IsMouseInBounds(X, Y, Width, Height)
- local MX, MY = math.round(GetControlNormal(0, 239) * 1920), math.round(GetControlNormal(0, 240) * 1080)
- MX, MY = FormatXWYH(MX, MY)
- X, Y = FormatXWYH(X, Y)
- Width, Height = FormatXWYH(Width, Height)
- return (MX >= X and MX <= X + Width) and (MY > Y and MY < Y + Height)
-end
-
-function GetSafeZoneBounds()
- local SafeSize = GetSafeZoneSize()
- SafeSize = math.round(SafeSize, 2)
- SafeSize = (SafeSize * 100) - 90
- SafeSize = 10 - SafeSize
-
- local W, H = 1920, 1080
-
- return { X = math.round(SafeSize * ((W / H) * 5.4)), Y = math.round(SafeSize * 5.4) }
-end
-
-function Controller()
- return not IsInputDisabled(2)
-end
-
---[[
- UIResRectangle.lua
- Elements
---]]
-
-function UIResRectangle.New(X, Y, Width, Height, R, G, B, A)
- local _UIResRectangle = {
- X = tonumber(X) or 0,
- Y = tonumber(Y) or 0,
- Width = tonumber(Width) or 0,
- Height = tonumber(Height) or 0,
- _Colour = { R = tonumber(R) or 255, G = tonumber(G) or 255, B = tonumber(B) or 255, A = tonumber(A) or 255 },
- }
- return setmetatable(_UIResRectangle, UIResRectangle)
-end
-
-function UIResRectangle:Position(X, Y)
- if tonumber(X) and tonumber(Y) then
- self.X = tonumber(X)
- self.Y = tonumber(Y)
- else
- return { X = self.X, Y = self.Y }
- end
-end
-
-function UIResRectangle:Size(Width, Height)
- if tonumber(Width) and tonumber(Height) then
- self.Width = tonumber(Width)
- self.Height = tonumber(Height)
- else
- return { Width = self.Width, Height = self.Height }
- end
-end
-
-function UIResRectangle:Colour(R, G, B, A)
- if tonumber(R) or tonumber(G) or tonumber(B) or tonumber(A) then
- self._Colour.R = tonumber(R) or 255
- self._Colour.B = tonumber(B) or 255
- self._Colour.G = tonumber(G) or 255
- self._Colour.A = tonumber(A) or 255
- else
- return self._Colour
- end
-end
-
-function UIResRectangle:Draw()
- local Position = self:Position()
- local Size = self:Size()
- Size.Width, Size.Height = FormatXWYH(Size.Width, Size.Height)
- Position.X, Position.Y = FormatXWYH(Position.X, Position.Y)
- DrawRect(Position.X + Size.Width * 0.5, Position.Y + Size.Height * 0.5, Size.Width, Size.Height, self._Colour.R, self._Colour.G, self._Colour.B, self._Colour.A)
-end
-
-function DrawRectangle(X, Y, Width, Height, R, G, B, A)
- X, Y, Width, Height = X or 0, Y or 0, Width or 0, Height or 0
- X, Y = FormatXWYH(X, Y)
- Width, Height = FormatXWYH(Width, Height)
- DrawRect(X + Width * 0.5, Y + Height * 0.5, Width, Height, tonumber(R) or 255, tonumber(G) or 255, tonumber(B) or 255, tonumber(A) or 255)
-end
-
---[[
- UIResText.lua
- Elements
---]]
-
-function GetCharacterCount(str)
- local characters = 0
- for c in str:gmatch("[%z\1-\127\194-\244][\128-\191]*") do
- local a = c:byte(1, -1)
- if a ~= nil then
- characters = characters + 1
- end
- end
- return characters
-end
-
-function GetByteCount(str)
- local bytes = 0
-
- for c in str:gmatch("[%z\1-\127\194-\244][\128-\191]*") do
- local a, b, c, d = c:byte(1, -1)
- if a ~= nil then
- bytes = bytes + 1
- end
- if b ~= nil then
- bytes = bytes + 1
- end
- if c ~= nil then
- bytes = bytes + 1
- end
- if d ~= nil then
- bytes = bytes + 1
- end
- end
- return bytes
-end
-
-function AddLongStringForAscii(str)
- local maxbytelength = 99
- for i = 0, GetCharacterCount(str), 99 do
- AddTextComponentSubstringPlayerName(string.sub(str, i, math.min(maxbytelength, GetCharacterCount(str) - i))) --needs changed
- end
-end
-
-function AddLongStringForUtf8(str)
- local maxbytelength = 99
- local bytecount = GetByteCount(str)
-
- if bytecount < maxbytelength then
- AddTextComponentSubstringPlayerName(str)
- return
- end
-
- local startIndex = 0
-
- for i = 0, GetCharacterCount(str), 1 do
- local length = i - startIndex
- if GetByteCount(string.sub(str, startIndex, length)) > maxbytelength then
- AddTextComponentSubstringPlayerName(string.sub(str, startIndex, length - 1))
- i = i - 1
- startIndex = startIndex + (length - 1)
- end
- end
- AddTextComponentSubstringPlayerName(string.sub(str, startIndex, GetCharacterCount(str) - startIndex))
-end
-
-function AddLongString(str)
- local bytecount = GetByteCount(str)
- if bytecount == GetCharacterCount(str) then
- AddLongStringForAscii(str)
- else
- AddLongStringForUtf8(str)
- end
-end
-
-function MeasureStringWidthNoConvert(str, font, scale)
- BeginTextCommandWidth("STRING")
- AddLongString(str)
- SetTextFont(font or 0)
- SetTextScale(1.0, scale or 0)
- return EndTextCommandGetWidth(true)
-end
-
-function MeasureStringWidth(str, font, scale)
- return MeasureStringWidthNoConvert(str, font, scale) * 1920
-end
-
-function UIResText.New(Text, X, Y, Scale, R, G, B, A, Font, Alignment, DropShadow, Outline, WordWrap)
- local _UIResText = {
- _Text = tostring(Text) or "",
- X = tonumber(X) or 0,
- Y = tonumber(Y) or 0,
- Scale = tonumber(Scale) or 0,
- _Colour = { R = tonumber(R) or 255, G = tonumber(G) or 255, B = tonumber(B) or 255, A = tonumber(A) or 255 },
- Font = tonumber(Font) or 0,
- Alignment = Alignment or nil,
- DropShadow = Dropshadow or nil,
- Outline = Outline or nil,
- WordWrap = tonumber(WordWrap) or 0,
- }
- return setmetatable(_UIResText, UIResText)
-end
-
-function UIResText:Position(X, Y)
- if tonumber(X) and tonumber(Y) then
- self.X = tonumber(X)
- self.Y = tonumber(Y)
- else
- return { X = self.X, Y = self.Y }
- end
-end
-
-function UIResText:Colour(R, G, B, A)
- if tonumber(R) and tonumber(G) and tonumber(B) and tonumber(A) then
- self._Colour.R = tonumber(R)
- self._Colour.B = tonumber(B)
- self._Colour.G = tonumber(G)
- self._Colour.A = tonumber(A)
- else
- return self._Colour
- end
-end
-
-function UIResText:Text(Text)
- if tostring(Text) and Text ~= nil then
- self._Text = tostring(Text)
- else
- return self._Text
- end
-end
-
-function UIResText:Draw()
- local Position = self:Position()
- Position.X, Position.Y = FormatXWYH(Position.X, Position.Y)
-
- SetTextFont(self.Font)
- SetTextScale(1.0, self.Scale)
- SetTextColour(self._Colour.R, self._Colour.G, self._Colour.B, self._Colour.A)
-
- if self.DropShadow then
- SetTextDropShadow()
- end
- if self.Outline then
- SetTextOutline()
- end
-
- if self.Alignment ~= nil then
- if self.Alignment == 1 or self.Alignment == "Center" or self.Alignment == "Centre" then
- SetTextCentre(true)
- elseif self.Alignment == 2 or self.Alignment == "Right" then
- SetTextRightJustify(true)
- SetTextWrap(0, Position.X)
- end
- end
-
- if tonumber(self.WordWrap) then
- if tonumber(self.WordWrap) ~= 0 then
- SetTextWrap(Position.X, Position.X + (tonumber(self.WordWrap) / Resolution.Width))
- end
- end
-
- BeginTextCommandDisplayText("STRING")
- AddLongString(self._Text)
- EndTextCommandDisplayText(Position.X, Position.Y)
-end
-
-function RenderText(Text, X, Y, Font, Scale, R, G, B, A, Alignment, DropShadow, Outline, WordWrap)
- Text = tostring(Text)
- X, Y = FormatXWYH(X, Y)
- SetTextFont(Font or 0)
- SetTextScale(1.0, Scale or 0)
- SetTextColour(R or 255, G or 255, B or 255, A or 255)
-
- if DropShadow then
- SetTextDropShadow()
- end
- if Outline then
- SetTextOutline()
- end
-
- if Alignment ~= nil then
- if Alignment == 1 or Alignment == "Center" or Alignment == "Centre" then
- SetTextCentre(true)
- elseif Alignment == 2 or Alignment == "Right" then
- SetTextRightJustify(true)
- SetTextWrap(0, X)
- end
- end
-
- if tonumber(WordWrap) then
- if tonumber(WordWrap) ~= 0 then
- WordWrap, _ = FormatXWYH(WordWrap, 0)
- SetTextWrap(WordWrap, X - WordWrap)
- end
- end
-
- BeginTextCommandDisplayText("STRING")
- AddLongString(Text)
- EndTextCommandDisplayText(X, Y)
-end
-
---[[
- Sprite.lua
- Elements
---]]
-
-function Sprite.New(TxtDictionary, TxtName, X, Y, Width, Height, Heading, R, G, B, A)
- local _Sprite = {
- TxtDictionary = tostring(TxtDictionary),
- TxtName = tostring(TxtName),
- X = tonumber(X) or 0,
- Y = tonumber(Y) or 0,
- Width = tonumber(Width) or 0,
- Height = tonumber(Height) or 0,
- Heading = tonumber(Heading) or 0,
- _Colour = { R = tonumber(R) or 255, G = tonumber(G) or 255, B = tonumber(B) or 255, A = tonumber(A) or 255 },
- }
- return setmetatable(_Sprite, Sprite)
-end
-
-function Sprite:Position(X, Y)
- if tonumber(X) and tonumber(Y) then
- self.X = tonumber(X)
- self.Y = tonumber(Y)
- else
- return { X = self.X, Y = self.Y }
- end
-end
-
-function Sprite:Size(Width, Height)
- if tonumber(Width) and tonumber(Width) then
- self.Width = tonumber(Width)
- self.Height = tonumber(Height)
- else
- return { Width = self.Width, Height = self.Height }
- end
-end
-
-function Sprite:Colour(R, G, B, A)
- if tonumber(R) or tonumber(G) or tonumber(B) or tonumber(A) then
- self._Colour.R = tonumber(R) or 255
- self._Colour.B = tonumber(B) or 255
- self._Colour.G = tonumber(G) or 255
- self._Colour.A = tonumber(A) or 255
- else
- return self._Colour
- end
-end
-
-function Sprite:Draw()
- if not HasStreamedTextureDictLoaded(self.TxtDictionary) then
- RequestStreamedTextureDict(self.TxtDictionary, true)
- end
- local Position = self:Position()
- local Size = self:Size()
- Size.Width, Size.Height = FormatXWYH(Size.Width, Size.Height)
- Position.X, Position.Y = FormatXWYH(Position.X, Position.Y)
- DrawSprite(self.TxtDictionary, self.TxtName, Position.X + Size.Width * 0.5, Position.Y + Size.Height * 0.5, Size.Width, Size.Height, self.Heading, self._Colour.R, self._Colour.G, self._Colour.B, self._Colour.A)
-end
-
-function DrawTexture(TxtDictionary, TxtName, X, Y, Width, Height, Heading, R, G, B, A)
- if not HasStreamedTextureDictLoaded(tostring(TxtDictionary) or "") then
- RequestStreamedTextureDict(tostring(TxtDictionary) or "", true)
- end
- X, Y, Width, Height = X or 0, Y or 0, Width or 0, Height or 0
- X, Y = FormatXWYH(X, Y)
- Width, Height = FormatXWYH(Width, Height)
- DrawSprite(tostring(TxtDictionary) or "", tostring(TxtName) or "", X + Width * 0.5, Y + Height * 0.5, Width, Height, tonumber(Heading) or 0, tonumber(R) or 255, tonumber(G) or 255, tonumber(B) or 255, tonumber(A) or 255)
-end
-
---[[
- StringMeasurer.lua
- Elements
---]]
-
-function MeasureString(str)
- local output = 0
- for i = 1, GetCharacterCount(str), 1 do
- if CharacterMap[string.sub(str, i, i)] then
- output = output + CharacterMap[string.sub(str, i, i)] + 1
- end
- end
- return output
-end
-
---[[
- Badge.lua
- Elements
---]]
-
-function GetBadgeTexture(Badge, Selected)
- if BadgeTexture[Badge] then
- return BadgeTexture[Badge](Selected)
- else
- return ""
- end
-end
-
-function GetBadgeDictionary(Badge, Selected)
- if BadgeDictionary[Badge] then
- return BadgeDictionary[Badge](Selected)
- else
- return "commonmenu"
- end
-end
-
-function GetBadgeColour(Badge, Selected)
- if BadgeColour[Badge] then
- return BadgeColour[Badge](Selected)
- else
- return 255, 255, 255, 255
- end
-end
-
---[[
- Colours.lua
- Elements
---]]
-
---[[
- UIMenuItem.lua
- Items
---]]
-
-function UIMenuItem.New(Text, Description)
- _UIMenuItem = {
- Rectangle = UIResRectangle.New(0, 0, 431, 38, 255, 255, 255, 20),
- Text = UIResText.New(tostring(Text) or "", 8, 0, 0.33, 245, 245, 245, 255, 0),
- _Description = tostring(Description) or "";
- SelectedSprite = Sprite.New("commonmenu", "gradient_nav", 0, 0, 431, 38),
- LeftBadge = { Sprite = Sprite.New("commonmenu", "", 0, 0, 40, 40), Badge = 0 },
- RightBadge = { Sprite = Sprite.New("commonmenu", "", 0, 0, 40, 40), Badge = 0 },
- Label = {
- Text = UIResText.New("", 0, 0, 0.35, 245, 245, 245, 255, 0, "Right"),
- MainColour = { R = 255, G = 255, B = 255, A = 255 },
- HighlightColour = { R = 0, G = 0, B = 0, A = 255 },
- },
- _Selected = false,
- _Hovered = false,
- _Enabled = true,
- _Offset = { X = 0, Y = 0 },
- ParentMenu = nil,
- Panels = {},
- Activated = function(menu, item, panels) end,
- ActivatedPanel = function(menu, item, panel, panelvalue) end,
- }
- return setmetatable(_UIMenuItem, UIMenuItem)
-end
-
-function UIMenuItem:SetParentMenu(Menu)
- if Menu ~= nil and Menu() == "UIMenu" then
- self.ParentMenu = Menu
- else
- return self.ParentMenu
- end
-end
-
-function UIMenuItem:Selected(bool)
- if bool ~= nil then
- self._Selected = tobool(bool)
- else
- return self._Selected
- end
-end
-
-function UIMenuItem:Hovered(bool)
- if bool ~= nil then
- self._Hovered = tobool(bool)
- else
- return self._Hovered
- end
-end
-
-function UIMenuItem:Enabled(bool)
- if bool ~= nil then
- self._Enabled = tobool(bool)
- else
- return self._Enabled
- end
-end
-
-function UIMenuItem:Description(str)
- if tostring(str) and str ~= nil then
- self._Description = tostring(str)
- else
- return self._Description
- end
-end
-
-function UIMenuItem:Offset(X, Y)
- if tonumber(X) or tonumber(Y) then
- if tonumber(X) then
- self._Offset.X = tonumber(X)
- end
- if tonumber(Y) then
- self._Offset.Y = tonumber(Y)
- end
- else
- return self._Offset
- end
-end
-
-function UIMenuItem:Position(Y)
- if tonumber(Y) then
- self.Rectangle:Position(self._Offset.X, Y + 144 + self._Offset.Y)
- self.SelectedSprite:Position(0 + self._Offset.X, Y + 144 + self._Offset.Y)
- self.Text:Position(8 + self._Offset.X, Y + 147 + self._Offset.Y)
- self.LeftBadge.Sprite:Position(0 + self._Offset.X, Y + 142 + self._Offset.Y)
- self.RightBadge.Sprite:Position(385 + self._Offset.X, Y + 142 + self._Offset.Y)
- self.Label.Text:Position(420 + self._Offset.X, Y + 148 + self._Offset.Y)
- end
-end
-
-function UIMenuItem:RightLabel(Text, MainColour, HighlightColour)
- if tostring(Text) and Text ~= nil then
- if type(MainColour) == "table" then
- self.Label.MainColour = MainColour
- end
- if type(HighlightColour) == "table" then
- self.Label.HighlightColour = HighlightColour
- end
- self.Label.Text:Text(tostring(Text))
- else
- return self.Label.Text:Text()
- end
-end
-
-function UIMenuItem:SetLeftBadge(Badge)
- if tonumber(Badge) then
- self.LeftBadge.Badge = tonumber(Badge)
- end
-end
-
-function UIMenuItem:SetRightBadge(Badge)
- if tonumber(Badge) then
- self.RightBadge.Badge = tonumber(Badge)
- end
-end
-
-function UIMenuItem:Text(Text)
- if tostring(Text) and Text ~= nil then
- self.Text:Text(tostring(Text))
- else
- return self.Text:Text()
- end
-end
-
-function UIMenuItem:AddPanel(Panel)
- if Panel() == "UIMenuPanel" then
- table.insert(self.Panels, Panel)
- Panel:SetParentItem(self)
- end
-end
-
-function UIMenuItem:RemovePanelAt(Index)
- if tonumber(Index) then
- if self.Panels[Index] then
- table.remove(self.Panels, tonumber(Index))
- end
- end
-end
-
-function UIMenuItem:FindPanelIndex(Panel)
- if Panel() == "UIMenuPanel" then
- for Index = 1, #self.Panels do
- if self.Panels[Index] == Panel then
- return Index
- end
- end
- end
- return nil
-end
-
-function UIMenuItem:FindPanelItem()
- for Index = #self.Items, 1, -1 do
- if self.Items[Index].Panel then
- return Index
- end
- end
- return nil
-end
-
-function UIMenuItem:Draw()
- self.Rectangle:Size(431 + self.ParentMenu.WidthOffset, self.Rectangle.Height)
- self.SelectedSprite:Size(431 + self.ParentMenu.WidthOffset, self.SelectedSprite.Height)
-
- if self._Hovered and not self._Selected then
- self.Rectangle:Draw()
- end
-
- if self._Selected then
- self.SelectedSprite:Draw()
- end
-
- if self._Enabled then
- if self._Selected then
- self.Text:Colour(0, 0, 0, 255)
- self.Label.Text:Colour(self.Label.HighlightColour.R, self.Label.HighlightColour.G, self.Label.HighlightColour.B, self.Label.HighlightColour.A)
- else
- self.Text:Colour(245, 245, 245, 255)
- self.Label.Text:Colour(self.Label.MainColour.R, self.Label.MainColour.G, self.Label.MainColour.B, self.Label.MainColour.A)
- end
- else
- self.Text:Colour(163, 159, 148, 255)
- self.Label.Text:Colour(163, 159, 148, 255)
- end
-
- if self.LeftBadge.Badge == BadgeStyle.None then
- self.Text:Position(8 + self._Offset.X, self.Text.Y)
- else
- self.Text:Position(35 + self._Offset.X, self.Text.Y)
- self.LeftBadge.Sprite.TxtDictionary = GetBadgeDictionary(self.LeftBadge.Badge, self._Selected)
- self.LeftBadge.Sprite.TxtName = GetBadgeTexture(self.LeftBadge.Badge, self._Selected)
- self.LeftBadge.Sprite:Colour(GetBadgeColour(self.LeftBadge.Badge, self._Selected))
- self.LeftBadge.Sprite:Draw()
- end
-
- if self.RightBadge.Badge ~= BadgeStyle.None then
- self.RightBadge.Sprite:Position(385 + self._Offset.X + self.ParentMenu.WidthOffset, self.RightBadge.Sprite.Y)
- self.RightBadge.Sprite.TxtDictionary = GetBadgeDictionary(self.RightBadge.Badge, self._Selected)
- self.RightBadge.Sprite.TxtName = GetBadgeTexture(self.RightBadge.Badge, self._Selected)
- self.RightBadge.Sprite:Colour(GetBadgeColour(self.RightBadge.Badge, self._Selected))
- self.RightBadge.Sprite:Draw()
- end
-
- if self.Label.Text:Text() ~= "" and string.len(self.Label.Text:Text()) > 0 then
- self.Label.Text:Position(420 + self._Offset.X + self.ParentMenu.WidthOffset, self.Label.Text.Y)
- self.Label.Text:Draw()
- end
-
- self.Text:Draw()
-end
-
---[[
- UIMenuCheckboxItem.lua
- Items
---]]
-
-function UIMenuCheckboxItem.New(Text, Check, Description)
- local _UIMenuCheckboxItem = {
- Base = UIMenuItem.New(Text or "", Description or ""),
- CheckedSprite = Sprite.New("commonmenu", "shop_box_blank", 410, 95, 50, 50),
- Checked = tobool(Check),
- CheckboxEvent = function(menu, item, checked) end,
- }
- return setmetatable(_UIMenuCheckboxItem, UIMenuCheckboxItem)
-end
-
-function UIMenuCheckboxItem:SetParentMenu(Menu)
- if Menu() == "UIMenu" then
- self.Base.ParentMenu = Menu
- else
- return self.Base.ParentMenu
- end
-end
-
-function UIMenuCheckboxItem:Position(Y)
- if tonumber(Y) then
- self.Base:Position(Y)
- self.CheckedSprite:Position(380 + self.Base._Offset.X + self.Base.ParentMenu.WidthOffset, Y + 138 + self.Base._Offset.Y)
- end
-end
-
-function UIMenuCheckboxItem:Selected(bool)
- if bool ~= nil then
- self.Base._Selected = tobool(bool)
- else
- return self.Base._Selected
- end
-end
-
-function UIMenuCheckboxItem:Hovered(bool)
- if bool ~= nil then
- self.Base._Hovered = tobool(bool)
- else
- return self.Base._Hovered
- end
-end
-
-function UIMenuCheckboxItem:Enabled(bool)
- if bool ~= nil then
- self.Base._Enabled = tobool(bool)
- else
- return self.Base._Enabled
- end
-end
-
-function UIMenuCheckboxItem:Description(str)
- if tostring(str) and str ~= nil then
- self.Base._Description = tostring(str)
- else
- return self.Base._Description
- end
-end
-
-function UIMenuCheckboxItem:Offset(X, Y)
- if tonumber(X) or tonumber(Y) then
- if tonumber(X) then
- self.Base._Offset.X = tonumber(X)
- end
- if tonumber(Y) then
- self.Base._Offset.Y = tonumber(Y)
- end
- else
- return self.Base._Offset
- end
-end
-
-function UIMenuCheckboxItem:Text(Text)
- if tostring(Text) and Text ~= nil then
- self.Base.Text:Text(tostring(Text))
- else
- return self.Base.Text:Text()
- end
-end
-
-function UIMenuCheckboxItem:SetLeftBadge()
- error("This item does not support badges")
-end
-
-function UIMenuCheckboxItem:SetRightBadge()
- error("This item does not support badges")
-end
-
-function UIMenuCheckboxItem:RightLabel()
- error("This item does not support a right label")
-end
-
-function UIMenuCheckboxItem:Draw()
- self.Base:Draw()
- self.CheckedSprite:Position(380 + self.Base._Offset.X + self.Base.ParentMenu.WidthOffset, self.CheckedSprite.Y)
- if self.Base:Selected() then
- if self.Checked then
- self.CheckedSprite.TxtName = "shop_box_tickb"
- else
- self.CheckedSprite.TxtName = "shop_box_blankb"
- end
- else
- if self.Checked then
- self.CheckedSprite.TxtName = "shop_box_tick"
- else
- self.CheckedSprite.TxtName = "shop_box_blank"
- end
- end
- self.CheckedSprite:Draw()
-end
-
---[[
- UIMenuListItem.lua
- Items
---]]
-
-function UIMenuListItem.New(Text, Items, Index, Description)
- if type(Items) ~= "table" then Items = {} end
- if Index == 0 then Index = 1 end
- local _UIMenuListItem = {
- Base = UIMenuItem.New(Text or "", Description or ""),
- Items = Items,
- LeftArrow = Sprite.New("commonmenu", "arrowleft", 110, 105, 30, 30),
- RightArrow = Sprite.New("commonmenu", "arrowright", 280, 105, 30, 30),
- ItemText = UIResText.New("", 290, 104, 0.35, 255, 255, 255, 255, 0, "Right"),
- _Index = tonumber(Index) or 1,
- Panels = {},
- OnListChanged = function(menu, item, newindex) end,
- OnListSelected = function(menu, item, newindex) end,
- }
- return setmetatable(_UIMenuListItem, UIMenuListItem)
-end
-
-function UIMenuListItem:SetParentMenu(Menu)
- if Menu ~= nil and Menu() == "UIMenu" then
- self.Base.ParentMenu = Menu
- else
- return self.Base.ParentMenu
- end
-end
-
-function UIMenuListItem:Position(Y)
- if tonumber(Y) then
- self.LeftArrow:Position(300 + self.Base._Offset.X + self.Base.ParentMenu.WidthOffset, 147 + Y + self.Base._Offset.Y)
- self.RightArrow:Position(400 + self.Base._Offset.X + self.Base.ParentMenu.WidthOffset, 147 + Y + self.Base._Offset.Y)
- self.ItemText:Position(300 + self.Base._Offset.X + self.Base.ParentMenu.WidthOffset, 147 + Y + self.Base._Offset.Y)
- self.Base:Position(Y)
- end
-end
-
-function UIMenuListItem:Selected(bool)
- if bool ~= nil then
- self.Base._Selected = tobool(bool)
- else
- return self.Base._Selected
- end
-end
-
-function UIMenuListItem:Hovered(bool)
- if bool ~= nil then
- self.Base._Hovered = tobool(bool)
- else
- return self.Base._Hovered
- end
-end
-
-function UIMenuListItem:Enabled(bool)
- if bool ~= nil then
- self.Base._Enabled = tobool(bool)
- else
- return self.Base._Enabled
- end
-end
-
-function UIMenuListItem:Description(str)
- if tostring(str) and str ~= nil then
- self.Base._Description = tostring(str)
- else
- return self.Base._Description
- end
-end
-
-function UIMenuListItem:Offset(X, Y)
- if tonumber(X) or tonumber(Y) then
- if tonumber(X) then
- self.Base._Offset.X = tonumber(X)
- end
- if tonumber(Y) then
- self.Base._Offset.Y = tonumber(Y)
- end
- else
- return self.Base._Offset
- end
-end
-
-function UIMenuListItem:Text(Text)
- if tostring(Text) and Text ~= nil then
- self.Base.Text:Text(tostring(Text))
- else
- return self.Base.Text:Text()
- end
-end
-
-function UIMenuListItem:Index(Index)
- if tonumber(Index) then
- if tonumber(Index) > #self.Items then
- self._Index = 1
- elseif tonumber(Index) < 1 then
- self._Index = #self.Items
- else
- self._Index = tonumber(Index)
- end
- else
- return self._Index
- end
-end
-
-function UIMenuListItem:ItemToIndex(Item)
- for i = 1, #self.Items do
- if type(Item) == type(self.Items[i]) and Item == self.Items[i] then
- return i
- elseif type(self.Items[i]) == "table" and (type(Item) == type(self.Items[i].Name) or type(Item) == type(self.Items[i].Value)) and (Item == self.Items[i].Name or Item == self.Items[i].Value) then
- return i
- end
- end
-end
-
-function UIMenuListItem:IndexToItem(Index)
- if tonumber(Index) then
- if tonumber(Index) == 0 then Index = 1 end
- if self.Items[tonumber(Index)] then
- return self.Items[tonumber(Index)]
- end
- end
-end
-
-function UIMenuListItem:SetLeftBadge()
- error("This item does not support badges")
-end
-
-function UIMenuListItem:SetRightBadge()
- error("This item does not support badges")
-end
-
-function UIMenuListItem:RightLabel()
- error("This item does not support a right label")
-end
-
-function UIMenuListItem:AddPanel(Panel)
- if Panel() == "UIMenuPanel" then
- table.insert(self.Panels, Panel)
- Panel:SetParentItem(self)
- end
-end
-
-function UIMenuListItem:RemovePanelAt(Index)
- if tonumber(Index) then
- if self.Panels[Index] then
- table.remove(self.Panels, tonumber(Index))
- end
- end
-end
-
-function UIMenuListItem:FindPanelIndex(Panel)
- if Panel() == "UIMenuPanel" then
- for Index = 1, #self.Panels do
- if self.Panels[Index] == Panel then
- return Index
- end
- end
- end
- return nil
-end
-
-function UIMenuListItem:FindPanelItem()
- for Index = #self.Items, 1, -1 do
- if self.Items[Index].Panel then
- return Index
- end
- end
- return nil
-end
-
-function UIMenuListItem:Draw()
- self.Base:Draw()
-
- if self:Enabled() then
- if self:Selected() then
- self.ItemText:Colour(0, 0, 0, 255)
- self.LeftArrow:Colour(0, 0, 0, 255)
- self.RightArrow:Colour(0, 0, 0, 255)
- else
- self.ItemText:Colour(245, 245, 245, 255)
- self.LeftArrow:Colour(245, 245, 245, 255)
- self.RightArrow:Colour(245, 245, 245, 255)
- end
- else
- self.ItemText:Colour(163, 159, 148, 255)
- self.LeftArrow:Colour(163, 159, 148, 255)
- self.RightArrow:Colour(163, 159, 148, 255)
- end
-
- local Text = (type(self.Items[self._Index]) == "table") and tostring(self.Items[self._Index].Name) or tostring(self.Items[self._Index])
- local Offset = MeasureStringWidth(Text, 0, 0.35)
-
- self.ItemText:Text(Text)
- self.LeftArrow:Position(378 - Offset + self.Base._Offset.X + self.Base.ParentMenu.WidthOffset, self.LeftArrow.Y)
-
- if self:Selected() then
- self.LeftArrow:Draw()
- self.RightArrow:Draw()
- self.ItemText:Position(403 + self.Base._Offset.X + self.Base.ParentMenu.WidthOffset, self.ItemText.Y)
- else
- self.ItemText:Position(418 + self.Base._Offset.X + self.Base.ParentMenu.WidthOffset, self.ItemText.Y)
- end
-
- self.ItemText:Draw()
-end
-
---[[
- UIMenuSliderItem.lua
- Items
---]]
-
-function UIMenuSliderItem.New(Text, Items, Index, Description, Divider)
- if type(Items) ~= "table" then Items = {} end
- if Index == 0 then Index = 1 end
- local _UIMenuSliderItem = {
- Base = UIMenuItem.New(Text or "", Description or ""),
- Items = Items,
- ShowDivider = tobool(Divider),
- LeftArrow = Sprite.New("commonmenutu", "arrowleft", 0, 105, 15, 15),
- RightArrow = Sprite.New("commonmenutu", "arrowright", 0, 105, 15, 15),
- Background = UIResRectangle.New(0, 0, 150, 9, 4, 32, 57, 255),
- Slider = UIResRectangle.New(0, 0, 75, 9, 57, 116, 200, 255),
- Divider = UIResRectangle.New(0, 0, 2.5, 20, 245, 245, 245, 255),
- _Index = tonumber(Index) or 1,
- OnSliderChanged = function(menu, item, newindex) end,
- OnSliderSelected = function(menu, item, newindex) end,
- }
- return setmetatable(_UIMenuSliderItem, UIMenuSliderItem)
-end
-
-function UIMenuSliderItem:SetParentMenu(Menu)
- if Menu() == "UIMenu" then
- self.Base.ParentMenu = Menu
- else
- return self.Base.ParentMenu
- end
-end
-
-function UIMenuSliderItem:Position(Y)
- if tonumber(Y) then
- self.Background:Position(250 + self.Base._Offset.X + self.Base.ParentMenu.WidthOffset, Y + 158.5 + self.Base._Offset.Y)
- self.Slider:Position(250 + self.Base._Offset.X + self.Base.ParentMenu.WidthOffset, Y + 158.5 + self.Base._Offset.Y)
- self.Divider:Position(323.5 + self.Base._Offset.X + self.Base.ParentMenu.WidthOffset, Y + 153 + self.Base._Offset.Y)
- self.LeftArrow:Position(235 + self.Base._Offset.X + self.Base.ParentMenu.WidthOffset, 155.5 + Y + self.Base._Offset.Y)
- self.RightArrow:Position(400 + self.Base._Offset.X + self.Base.ParentMenu.WidthOffset, 155.5 + Y + self.Base._Offset.Y)
- self.Base:Position(Y)
- end
-end
-
-function UIMenuSliderItem:Selected(bool)
- if bool ~= nil then
- self.Base._Selected = tobool(bool)
- else
- return self.Base._Selected
- end
-end
-
-function UIMenuSliderItem:Hovered(bool)
- if bool ~= nil then
- self.Base._Hovered = tobool(bool)
- else
- return self.Base._Hovered
- end
-end
-
-function UIMenuSliderItem:Enabled(bool)
- if bool ~= nil then
- self.Base._Enabled = tobool(bool)
- else
- return self.Base._Enabled
- end
-end
-
-function UIMenuSliderItem:Description(str)
- if tostring(str) and str ~= nil then
- self.Base._Description = tostring(str)
- else
- return self.Base._Description
- end
-end
-
-function UIMenuSliderItem:Offset(X, Y)
- if tonumber(X) or tonumber(Y) then
- if tonumber(X) then
- self.Base._Offset.X = tonumber(X)
- end
- if tonumber(Y) then
- self.Base._Offset.Y = tonumber(Y)
- end
- else
- return self.Base._Offset
- end
-end
-
-function UIMenuSliderItem:Text(Text)
- if tostring(Text) and Text ~= nil then
- self.Base.Text:Text(tostring(Text))
- else
- return self.Base.Text:Text()
- end
-end
-
-function UIMenuSliderItem:Index(Index)
- if tonumber(Index) then
- if tonumber(Index) > #self.Items then
- self._Index = 1
- elseif tonumber(Index) < 1 then
- self._Index = #self.Items
- else
- self._Index = tonumber(Index)
- end
- else
- return self._Index
- end
-end
-
-function UIMenuSliderItem:ItemToIndex(Item)
- for i = 1, #self.Items do
- if type(Item) == type(self.Items[i]) and Item == self.Items[i] then
- return i
- end
- end
-end
-
-function UIMenuSliderItem:IndexToItem(Index)
- if tonumber(Index) then
- if tonumber(Index) == 0 then Index = 1 end
- if self.Items[tonumber(Index)] then
- return self.Items[tonumber(Index)]
- end
- end
-end
-
-function UIMenuSliderItem:SetLeftBadge()
- error("This item does not support badges")
-end
-
-function UIMenuSliderItem:SetRightBadge()
- error("This item does not support badges")
-end
-
-function UIMenuSliderItem:RightLabel()
- error("This item does not support a right label")
-end
-
-function UIMenuSliderItem:Draw()
- self.Base:Draw()
-
- if self:Enabled() then
- if self:Selected() then
- self.LeftArrow:Colour(0, 0, 0, 255)
- self.RightArrow:Colour(0, 0, 0, 255)
- else
- self.LeftArrow:Colour(245, 245, 245, 255)
- self.RightArrow:Colour(245, 245, 245, 255)
- end
- else
- self.LeftArrow:Colour(163, 159, 148, 255)
- self.RightArrow:Colour(163, 159, 148, 255)
- end
-
- local Offset = ((self.Background.Width - self.Slider.Width) / (#self.Items - 1)) * (self._Index - 1)
-
- self.Slider:Position(250 + self.Base._Offset.X + Offset + self.Base.ParentMenu.WidthOffset, self.Slider.Y)
-
- if self:Selected() then
- self.LeftArrow:Draw()
- self.RightArrow:Draw()
- end
-
- self.Background:Draw()
- self.Slider:Draw()
- if self.ShowDivider then
- self.Divider:Draw()
- end
-end
-
---[[
- UIMenuColouredItem.lua
- Items
---]]
-
-function UIMenuColouredItem.New(Text, Description, MainColour, HighlightColour)
- if type(Colour) ~= "table" then Colour = { R = 0, G = 0, B = 0, A = 255 } end
- if type(HighlightColour) ~= "table" then Colour = { R = 255, G = 255, B = 255, A = 255 } end
- local _UIMenuColouredItem = {
- Base = UIMenuItem.New(Text or "", Description or ""),
- Rectangle = UIResRectangle.New(0, 0, 431, 38, MainColour.R, MainColour.G, MainColour.B, MainColour.A),
- MainColour = MainColour,
- HighlightColour = HighlightColour,
- Activated = function(menu, item) end,
- }
- _UIMenuColouredItem.Base.SelectedSprite:Colour(HighlightColour.R, HighlightColour.G, HighlightColour.B, HighlightColour.A)
- return setmetatable(_UIMenuColouredItem, UIMenuColouredItem)
-end
-
-function UIMenuColouredItem:SetParentMenu(Menu)
- if Menu() == "UIMenu" then
- self.Base.ParentMenu = Menu
- else
- return self.Base.ParentMenu
- end
-end
-
-function UIMenuColouredItem:Position(Y)
- if tonumber(Y) then
- self.Base:Position(Y)
- self.Rectangle:Position(self.Base._Offset.X, Y + 144 + self.Base._Offset.Y)
- end
-end
-
-function UIMenuColouredItem:Selected(bool)
- if bool ~= nil then
- self.Base._Selected = tobool(bool)
- else
- return self.Base._Selected
- end
-end
-
-function UIMenuColouredItem:Hovered(bool)
- if bool ~= nil then
- self.Base._Hovered = tobool(bool)
- else
- return self.Base._Hovered
- end
-end
-
-function UIMenuColouredItem:Enabled(bool)
- if bool ~= nil then
- self.Base._Enabled = tobool(bool)
- else
- return self.Base._Enabled
- end
-end
-
-function UIMenuColouredItem:Description(str)
- if tostring(str) and str ~= nil then
- self.Base._Description = tostring(str)
- else
- return self.Base._Description
- end
-end
-
-function UIMenuColouredItem:Offset(X, Y)
- if tonumber(X) or tonumber(Y) then
- if tonumber(X) then
- self.Base._Offset.X = tonumber(X)
- end
- if tonumber(Y) then
- self.Base._Offset.Y = tonumber(Y)
- end
- else
- return self.Base._Offset
- end
-end
-
-function UIMenuColouredItem:Text(Text)
- if tostring(Text) and Text ~= nil then
- self.Base.Text:Text(tostring(Text))
- else
- return self.Base.Text:Text()
- end
-end
-
-function UIMenuColouredItem:RightLabel(Text, MainColour, HighlightColour)
- if tostring(Text) and Text ~= nil then
- if type(MainColour) == "table" then
- self.Base.Label.MainColour = MainColour
- end
- if type(HighlightColour) == "table" then
- self.Base.Label.HighlightColour = HighlightColour
- end
- self.Base.Label.Text:Text(tostring(Text))
- else
- return self.Base.Label.Text:Text()
- end
-end
-
-function UIMenuColouredItem:SetLeftBadge(Badge)
- if tonumber(Badge) then
- self.Base.LeftBadge.Badge = tonumber(Badge)
- end
-end
-
-function UIMenuColouredItem:SetRightBadge(Badge)
- if tonumber(Badge) then
- self.Base.RightBadge.Badge = tonumber(Badge)
- end
-end
-
-function UIMenuColouredItem:Draw()
- self.Rectangle:Size(431 + self.ParentMenu.WidthOffset, self.Rectangle.Height)
- self.Rectangle:Draw()
- self.Base:Draw()
-end
-
---[[
- UIMenuProgressItem.lua
- Items
---]]
-
-function UIMenuProgressItem.New(Text, Items, Index, Description, Counter)
- if type(Items) ~= "table" then Items = {} end
- if Index == 0 then Index = 1 end
- local _UIMenuProgressItem = {
- Base = UIMenuItem.New(Text or "", Description or ""),
- Data = {
- Items = Items,
- Counter = tobool(Counter),
- Max = 407.5,
- Index = tonumber(Index) or 1,
- },
- Background = UIResRectangle.New(0, 0, 415, 20),
- Bar = UIResRectangle.New(0, 0, 407.5, 12.5),
- OnProgressChanged = function(menu, item, newindex) end,
- OnProgressSelected = function(menu, item, newindex) end,
- }
-
- _UIMenuProgressItem.Base.Rectangle.Height = 60
- _UIMenuProgressItem.Base.SelectedSprite.Height = 60
-
- if _UIMenuProgressItem.Data.Counter then
- _UIMenuProgressItem.Base:RightLabel(_UIMenuProgressItem.Data.Index .. "/" .. #_UIMenuProgressItem.Data.Items)
- else
- _UIMenuProgressItem.Base:RightLabel((type(_UIMenuProgressItem.Data.Items[_UIMenuProgressItem.Data.Index]) == "table") and tostring(_UIMenuProgressItem.Data.Items[_UIMenuProgressItem.Data.Index].Name) or tostring(_UIMenuProgressItem.Data.Items[_UIMenuProgressItem.Data.Index]))
- end
-
- _UIMenuProgressItem.Bar.Width = _UIMenuProgressItem.Data.Index / #_UIMenuProgressItem.Data.Items * _UIMenuProgressItem.Data.Max
-
- return setmetatable(_UIMenuProgressItem, UIMenuProgressItem)
-end
-
-function UIMenuProgressItem:SetParentMenu(Menu)
- if Menu() == "UIMenu" then
- self.Base.ParentMenu = Menu
- else
- return self.Base.ParentMenu
- end
-end
-
-function UIMenuProgressItem:Position(Y)
- if tonumber(Y) then
- self.Base:Position(Y)
- self.Background:Position(8 + self.Base._Offset.X + self.Base.ParentMenu.WidthOffset, 177 + Y + self.Base._Offset.Y)
- self.Bar:Position(11.75 + self.Base._Offset.X + self.Base.ParentMenu.WidthOffset, 180.75 + Y + self.Base._Offset.Y)
- end
-end
-
-function UIMenuProgressItem:Selected(bool)
- if bool ~= nil then
- self.Base._Selected = tobool(bool)
- else
- return self.Base._Selected
- end
-end
-
-function UIMenuProgressItem:Hovered(bool)
- if bool ~= nil then
- self.Base._Hovered = tobool(bool)
- else
- return self.Base._Hovered
- end
-end
-
-function UIMenuProgressItem:Enabled(bool)
- if bool ~= nil then
- self.Base._Enabled = tobool(bool)
- else
- return self.Base._Enabled
- end
-end
-
-function UIMenuProgressItem:Description(str)
- if tostring(str) and str ~= nil then
- self.Base._Description = tostring(str)
- else
- return self.Base._Description
- end
-end
-
-function UIMenuProgressItem:Offset(X, Y)
- if tonumber(X) or tonumber(Y) then
- if tonumber(X) then
- self.Base._Offset.X = tonumber(X)
- end
- if tonumber(Y) then
- self.Base._Offset.Y = tonumber(Y)
- end
- else
- return self.Base._Offset
- end
-end
-
-function UIMenuProgressItem:Text(Text)
- if tostring(Text) and Text ~= nil then
- self.Base.Text:Text(tostring(Text))
- else
- return self.Base.Text:Text()
- end
-end
-
-function UIMenuProgressItem:Index(Index)
- if tonumber(Index) then
- if tonumber(Index) > #self.Data.Items then
- self.Data.Index = 1
- elseif tonumber(Index) < 1 then
- self.Data.Index = #self.Data.Items
- else
- self.Data.Index = tonumber(Index)
- end
-
- if self.Data.Counter then
- self.Base:RightLabel(self.Data.Index .. "/" .. #self.Data.Items)
- else
- self.Base:RightLabel((type(self.Data.Items[self.Data.Index]) == "table") and tostring(self.Data.Items[self.Data.Index].Name) or tostring(self.Data.Items[self.Data.Index]))
- end
-
- self.Bar.Width = self.Data.Index / #self.Data.Items * self.Data.Max
- else
- return self.Data.Index
- end
-end
-
-function UIMenuProgressItem:ItemToIndex(Item)
- for i = 1, #self.Data.Items do
- if type(Item) == type(self.Data.Items[i]) and Item == self.Data.Items[i] then
- return i
- elseif type(self.Data.Items[i]) == "table" and (type(Item) == type(self.Data.Items[i].Name) or type(Item) == type(self.Data.Items[i].Value)) and (Item == self.Data.Items[i].Name or Item == self.Data.Items[i].Value) then
- return i
- end
- end
-end
-
-function UIMenuProgressItem:IndexToItem(Index)
- if tonumber(Index) then
- if tonumber(Index) == 0 then Index = 1 end
- if self.Data.Items[tonumber(Index)] then
- return self.Data.Items[tonumber(Index)]
- end
- end
-end
-
-function UIMenuProgressItem:SetLeftBadge()
- error("This item does not support badges")
-end
-
-function UIMenuProgressItem:SetRightBadge()
- error("This item does not support badges")
-end
-
-function UIMenuProgressItem:RightLabel()
- error("This item does not support a right label")
-end
-
-function UIMenuProgressItem:CalculateProgress(CursorX)
- local Progress = CursorX - self.Bar.X
- self:Index(math.round(#self.Data.Items * (((Progress >= 0 and Progress <= self.Data.Max) and Progress or ((Progress < 0) and 0 or self.Data.Max)) / self.Data.Max)))
-end
-
-function UIMenuProgressItem:Draw()
- self.Base:Draw()
-
- if self.Base._Selected then
- self.Background:Colour(table.unpack(Colours.Black))
- self.Bar:Colour(table.unpack(Colours.White))
- else
- self.Background:Colour(table.unpack(Colours.White))
- self.Bar:Colour(table.unpack(Colours.Black))
- end
-
- self.Background:Draw()
- self.Bar:Draw()
-end
-
---[[
- UIMenuHeritageWindow.lua
- Windows
---]]
-
-function UIMenuHeritageWindow.New(Mum, Dad)
- if not tonumber(Mum) then Mum = 0 end
- if not (Mum >= 0 and Mum <= 21) then Mum = 0 end
- if not tonumber(Dad) then Dad = 0 end
- if not (Dad >= 0 and Dad <= 23) then Dad = 0 end
- _UIMenuHeritageWindow = {
- Background = Sprite.New("pause_menu_pages_char_mom_dad", "mumdadbg", 0, 0, 431, 228), -- Background is required, must be a sprite or a rectangle.
- MumSprite = Sprite.New("char_creator_portraits", ((Mum < 21) and "female_" .. Mum or "special_female_" .. (tonumber(string.sub(Mum, 2, 2)) - 1)), 0, 0, 228, 228),
- DadSprite = Sprite.New("char_creator_portraits", ((Dad < 21) and "male_" .. Dad or "special_male_" .. (tonumber(string.sub(Dad, 2, 2)) - 1)), 0, 0, 228, 228),
- Mum = Mum,
- Dad = Dad,
- _Offset = { X = 0, Y = 0 }, -- required
- ParentMenu = nil, -- required
- }
- return setmetatable(_UIMenuHeritageWindow, UIMenuHeritageWindow)
-end
-
-function UIMenuHeritageWindow:SetParentMenu(Menu) -- required
- if Menu() == "UIMenu" then
- self.ParentMenu = Menu
- else
- return self.ParentMenu
- end
-end
-
-function UIMenuHeritageWindow:Offset(X, Y) -- required
- if tonumber(X) or tonumber(Y) then
- if tonumber(X) then
- self._Offset.X = tonumber(X)
- end
- if tonumber(Y) then
- self._Offset.Y = tonumber(Y)
- end
- else
- return self._Offset
- end
-end
-
-function UIMenuHeritageWindow:Position(Y) -- required
- if tonumber(Y) then
- self.Background:Position(self._Offset.X, 144 + Y + self._Offset.Y)
- self.MumSprite:Position(self._Offset.X + (self.ParentMenu.WidthOffset / 2) + 25, 144 + Y + self._Offset.Y)
- self.DadSprite:Position(self._Offset.X + (self.ParentMenu.WidthOffset / 2) + 195, 144 + Y + self._Offset.Y)
- end
-end
-
-function UIMenuHeritageWindow:Index(Mum, Dad)
- if not tonumber(Mum) then Mum = self.Mum end
- if not (Mum >= 0 and Mum <= 21) then Mum = self.Mum end
- if not tonumber(Dad) then Dad = self.Dad end
- if not (Dad >= 0 and Dad <= 23) then Dad = self.Dad end
-
- self.Mum = Mum
- self.Dad = Dad
-
- self.MumSprite.TxtName = ((self.Mum < 21) and "female_" .. self.Mum or "special_female_" .. (tonumber(string.sub(Mum, 2, 2)) - 1))
- self.DadSprite.TxtName = ((self.Dad < 21) and "male_" .. self.Dad or "special_male_" .. (tonumber(string.sub(Dad, 2, 2)) - 1))
-end
-
-function UIMenuHeritageWindow:Draw() -- required
- self.Background:Size(431 + self.ParentMenu.WidthOffset, 228)
- self.Background:Draw()
- self.DadSprite:Draw()
- self.MumSprite:Draw()
-end
-
---[[
- UIMenuGridPanel.lua
- Panels
---]]
-
-UIMenuGridPanel = setmetatable({}, UIMenuGridPanel)
-UIMenuGridPanel.__index = UIMenuGridPanel
-UIMenuGridPanel.__call = function() return "UIMenuPanel", "UIMenuGridPanel" end
-
-function UIMenuGridPanel.New(TopText, LeftText, RightText, BottomText)
- _UIMenuGridPanel = {
- Data = {
- Enabled = true,
- },
- Background = Sprite.New("commonmenu", "gradient_bgd", 0, 0, 431, 275),
- Grid = Sprite.New("pause_menu_pages_char_mom_dad", "nose_grid", 0, 0, 200, 200, 0),
- Circle = Sprite.New("mpinventory", "in_world_circle", 0, 0, 20, 20, 0),
- Audio = { Slider = "CONTINUOUS_SLIDER", Library = "HUD_FRONTEND_DEFAULT_SOUNDSET", Id = nil },
- ParentItem = nil,
- Text = {
- Top = UIResText.New(TopText or "Top", 0, 0, 0.35, 255, 255, 255, 255, 0, "Centre"),
- Left = UIResText.New(LeftText or "Left", 0, 0, 0.35, 255, 255, 255, 255, 0, "Centre"),
- Right = UIResText.New(RightText or "Right", 0, 0, 0.35, 255, 255, 255, 255, 0, "Centre"),
- Bottom = UIResText.New(BottomText or "Bottom", 0, 0, 0.35, 255, 255, 255, 255, 0, "Centre"),
- },
- }
- return setmetatable(_UIMenuGridPanel, UIMenuGridPanel)
-end
-
-function UIMenuGridPanel:SetParentItem(Item) -- required
- if Item() == "UIMenuItem" then
- self.ParentItem = Item
- else
- return self.ParentItem
- end
-end
-
-function UIMenuGridPanel:Enabled(Enabled)
- if type(Enabled) == "boolean" then
- self.Data.Enabled = Enabled
- else
- return self.Data.Enabled
- end
-end
-
-function UIMenuGridPanel:CirclePosition(X, Y)
- if tonumber(X) and tonumber(Y) then
- self.Circle.X = (self.Grid.X + 20) + ((self.Grid.Width - 40) * ((X >= 0.0 and X <= 1.0) and X or 0.0)) - (self.Circle.Width / 2)
- self.Circle.Y = (self.Grid.Y + 20) + ((self.Grid.Height - 40) * ((Y >= 0.0 and Y <= 1.0) and Y or 0.0)) - (self.Circle.Height / 2)
- else
- return math.round((self.Circle.X - (self.Grid.X + 20) + (self.Circle.Width / 2)) / (self.Grid.Width - 40), 2), math.round((self.Circle.Y - (self.Grid.Y + 20) + (self.Circle.Height / 2)) / (self.Grid.Height - 40), 2)
- end
-end
-
-function UIMenuGridPanel:Position(Y) -- required
- if tonumber(Y) then
- local ParentOffsetX, ParentOffsetWidth = self.ParentItem:Offset().X, self.ParentItem:SetParentMenu().WidthOffset
-
- self.Background:Position(ParentOffsetX, Y)
- self.Grid:Position(ParentOffsetX + 115.5 + (ParentOffsetWidth / 2), 37.5 + Y)
- self.Text.Top:Position(ParentOffsetX + 215.5 + (ParentOffsetWidth / 2), 5 + Y)
- self.Text.Left:Position(ParentOffsetX + 57.75 + (ParentOffsetWidth / 2), 120 + Y)
- self.Text.Right:Position(ParentOffsetX + 373.25 + (ParentOffsetWidth / 2), 120 + Y)
- self.Text.Bottom:Position(ParentOffsetX + 215.5 + (ParentOffsetWidth / 2), 240 + Y)
-
- if not self.CircleLocked then
- self.CircleLocked = true
- self:CirclePosition(0.5, 0.5)
- end
- end
-end
-
-function UIMenuGridPanel:UpdateParent(X, Y)
- local _, ParentType = self.ParentItem()
- if ParentType == "UIMenuListItem" then
- local PanelItemIndex = self.ParentItem:FindPanelItem()
- if PanelItemIndex then
- self.ParentItem.Items[PanelItemIndex].Value[self.ParentItem:FindPanelIndex(self)] = { X = X, Y = Y }
- self.ParentItem:Index(PanelItemIndex)
- self.ParentItem.Base.ParentMenu.OnListChange(self.ParentItem.Base.ParentMenu, self.ParentItem, self.ParentItem._Index)
- self.ParentItem.OnListChanged(self.ParentItem.Base.ParentMenu, self.ParentItem, self.ParentItem._Index)
- else
- local PanelIndex = self.ParentItem:FindPanelIndex(self)
- for Index = 1, #self.ParentItem.Items do
- if type(self.ParentItem.Items[Index]) == "table" then
- if not self.ParentItem.Items[Index].Panels then self.ParentItem.Items[Index].Panels = {} end
- self.ParentItem.Items[Index].Panels[PanelIndex] = { X = X, Y = Y }
- else
- self.ParentItem.Items[Index] = { Name = tostring(self.ParentItem.Items[Index]), Value = self.ParentItem.Items[Index], Panels = { [PanelIndex] = { X = X, Y = Y } } }
- end
- end
- self.ParentItem.Base.ParentMenu.OnListChange(self.ParentItem.Base.ParentMenu, self.ParentItem, self.ParentItem._Index)
- self.ParentItem.OnListChanged(self.ParentItem.Base.ParentMenu, self.ParentItem, self.ParentItem._Index)
- end
- elseif ParentType == "UIMenuItem" then
- self.ParentItem.ActivatedPanel(self.ParentItem.ParentMenu, self.ParentItem, self, { X = X, Y = Y })
- end
-end
-
-function UIMenuGridPanel:Functions()
- local SafeZone = { X = 0, Y = 0 }
- if self.ParentItem:SetParentMenu().Settings.ScaleWithSafezone then
- SafeZone = GetSafeZoneBounds()
- end
-
- if IsMouseInBounds(self.Grid.X + 20 + SafeZone.X, self.Grid.Y + 20 + SafeZone.Y, self.Grid.Width - 40, self.Grid.Height - 40) then
- if IsDisabledControlJustPressed(0, 24) then
- if not self.Pressed then
- self.Pressed = true
- Citizen.CreateThread(function()
- self.Audio.Id = GetSoundId()
- PlaySoundFrontend(self.Audio.Id, self.Audio.Slider, self.Audio.Library, 1)
- while IsDisabledControlPressed(0, 24) and IsMouseInBounds(self.Grid.X + 20 + SafeZone.X, self.Grid.Y + 20 + SafeZone.Y, self.Grid.Width - 40, self.Grid.Height - 40) do
- Citizen.Wait(0)
- local CursorX, CursorY = math.round(GetControlNormal(0, 239) * 1920) - SafeZone.X - (self.Circle.Width / 2), math.round(GetControlNormal(0, 240) * 1080) - SafeZone.Y - (self.Circle.Height / 2)
-
- self.Circle:Position(((CursorX > (self.Grid.X + 10 + self.Grid.Width - 40)) and (self.Grid.X + 10 + self.Grid.Width - 40) or ((CursorX < (self.Grid.X + 20 - (self.Circle.Width / 2))) and (self.Grid.X + 20 - (self.Circle.Width / 2)) or CursorX)), ((CursorY > (self.Grid.Y + 10 + self.Grid.Height - 40)) and (self.Grid.Y + 10 + self.Grid.Height - 40) or ((CursorY < (self.Grid.Y + 20 - (self.Circle.Height / 2))) and (self.Grid.Y + 20 - (self.Circle.Height / 2)) or CursorY)))
- end
- StopSound(self.Audio.Id)
- ReleaseSoundId(self.Audio.Id)
- self.Pressed = false
- end)
- Citizen.CreateThread(function()
- while IsDisabledControlPressed(0, 24) and IsMouseInBounds(self.Grid.X + 20 + SafeZone.X, self.Grid.Y + 20 + SafeZone.Y, self.Grid.Width - 40, self.Grid.Height - 40) do
- Citizen.Wait(75)
- local ResultX, ResultY = math.round((self.Circle.X - (self.Grid.X + 20) + (self.Circle.Width / 2)) / (self.Grid.Width - 40), 2), math.round((self.Circle.Y - (self.Grid.Y + 20) + (self.Circle.Height / 2)) / (self.Grid.Height - 40), 2)
-
- self:UpdateParent((((ResultX >= 0.0 and ResultX <= 1.0) and ResultX or ((ResultX <= 0) and 0.0) or 1.0) * 2) - 1, (((ResultY >= 0.0 and ResultY <= 1.0) and ResultY or ((ResultY <= 0) and 0.0) or 1.0) * 2) - 1)
- end
- end)
- end
- end
- end
-end
-
-function UIMenuGridPanel:Draw() -- required
- if self.Data.Enabled then
- self.Background:Size(431 + self.ParentItem:SetParentMenu().WidthOffset, 275)
-
- self.Background:Draw()
- self.Grid:Draw()
- self.Circle:Draw()
- self.Text.Top:Draw()
- self.Text.Left:Draw()
- self.Text.Right:Draw()
- self.Text.Bottom:Draw()
- self:Functions()
- end
-end
-
---[[
- UIMenuColourPanel.lua
- Panels
---]]
-
-UIMenuColourPanel = setmetatable({}, UIMenuColourPanel)
-UIMenuColourPanel.__index = UIMenuColourPanel
-UIMenuColourPanel.__call = function() return "UIMenuPanel", "UIMenuColourPanel" end
-
-function UIMenuColourPanel.New(Title, Colours)
- _UIMenuColourPanel = {
- Data = {
- Pagination = {
- Min = 1,
- Max = 8,
- Total = 8,
- },
- Index = 1000,
- Items = Colours,
- Title = Title or "Title",
- Enabled = true,
- Value = 1,
- },
- Background = Sprite.New("commonmenu", "gradient_bgd", 0, 0, 431, 112),
- Bar = {},
- LeftArrow = Sprite.New("commonmenu", "arrowleft", 0, 0, 30, 30),
- RightArrow = Sprite.New("commonmenu", "arrowright", 0, 0, 30, 30),
- SelectedRectangle = UIResRectangle.New(0, 0, 44.5, 8),
- Text = UIResText.New(Title .. " (1 of " .. #Colours .. ")" or "Title" .. " (1 of " .. #Colours .. ")", 0, 0, 0.35, 255, 255, 255, 255, 0, "Centre"),
- ParentItem = nil,
- }
-
- for Index = 1, #Colours do
- if Index < 10 then
- table.insert(_UIMenuColourPanel.Bar, UIResRectangle.New(0, 0, 44.5, 44.5, table.unpack(Colours[Index])))
- else
- break
- end
- end
-
- if #_UIMenuColourPanel.Data.Items ~= 0 then
- _UIMenuColourPanel.Data.Index = 1000 - (1000 % #_UIMenuColourPanel.Data.Items)
- _UIMenuColourPanel.Data.Pagination.Max = _UIMenuColourPanel.Data.Pagination.Total + 1
- _UIMenuColourPanel.Data.Pagination.Min = 0
- end
- return setmetatable(_UIMenuColourPanel, UIMenuColourPanel)
-end
-
-function UIMenuColourPanel:SetParentItem(Item) -- required
- if Item() == "UIMenuItem" then
- self.ParentItem = Item
- else
- return self.ParentItem
- end
-end
-
-function UIMenuColourPanel:Enabled(Enabled)
- if type(Enabled) == "boolean" then
- self.Data.Enabled = Enabled
- else
- return self.Data.Enabled
- end
-end
-
-function UIMenuColourPanel:Position(Y) -- required
- if tonumber(Y) then
- local ParentOffsetX, ParentOffsetWidth = self.ParentItem:Offset().X, self.ParentItem:SetParentMenu().WidthOffset
-
- self.Background:Position(ParentOffsetX, Y)
- for Index = 1, #self.Bar do
- self.Bar[Index]:Position(15 + (44.5 * (Index - 1)) + ParentOffsetX + (ParentOffsetWidth / 2), 55 + Y)
- end
- self.SelectedRectangle:Position(15 + (44.5 * ((self:CurrentSelection() - self.Data.Pagination.Min) - 1)) + ParentOffsetX + (ParentOffsetWidth / 2), 47 + Y)
- self.LeftArrow:Position(7.5 + ParentOffsetX + (ParentOffsetWidth / 2), 15 + Y)
- self.RightArrow:Position(393.5 + ParentOffsetX + (ParentOffsetWidth / 2), 15 + Y)
- self.Text:Position(215.5 + ParentOffsetX + (ParentOffsetWidth / 2), 15 + Y)
- end
-end
-
-function UIMenuColourPanel:CurrentSelection(value, PreventUpdate)
- if tonumber(value) then
- if #self.Data.Items == 0 then
- self.Data.Index = 0
- end
-
- self.Data.Index = 1000000 - (1000000 % #self.Data.Items) + tonumber(value)
-
- if self:CurrentSelection() > self.Data.Pagination.Max then
- self.Data.Pagination.Min = self:CurrentSelection() - (self.Data.Pagination.Total + 1)
- self.Data.Pagination.Max = self:CurrentSelection()
- elseif self:CurrentSelection() < self.Data.Pagination.Min then
- self.Data.Pagination.Min = self:CurrentSelection() - 1
- self.Data.Pagination.Max = self:CurrentSelection() + (self.Data.Pagination.Total + 1)
- end
-
- self:UpdateSelection(PreventUpdate)
- else
- if #self.Data.Items == 0 then
- return 1
- else
- if self.Data.Index % #self.Data.Items == 0 then
- return 1
- else
- return self.Data.Index % #self.Data.Items + 1
- end
- end
- end
-end
-
-function UIMenuColourPanel:UpdateParent(Colour)
- local _, ParentType = self.ParentItem()
- if ParentType == "UIMenuListItem" then
- local PanelItemIndex = self.ParentItem:FindPanelItem()
- local PanelIndex = self.ParentItem:FindPanelIndex(self)
- if PanelItemIndex then
- self.ParentItem.Items[PanelItemIndex].Value[PanelIndex] = Colour
- self.ParentItem:Index(PanelItemIndex)
- self.ParentItem.Base.ParentMenu.OnListChange(self.ParentItem.Base.ParentMenu, self.ParentItem, self.ParentItem._Index)
- self.ParentItem.OnListChanged(self.ParentItem.Base.ParentMenu, self.ParentItem, self.ParentItem._Index)
- else
- for Index = 1, #self.ParentItem.Items do
- if type(self.ParentItem.Items[Index]) == "table" then
- if not self.ParentItem.Items[Index].Panels then self.ParentItem.Items[Index].Panels = {} end
- self.ParentItem.Items[Index].Panels[PanelIndex] = Colour
- else
- self.ParentItem.Items[Index] = { Name = tostring(self.ParentItem.Items[Index]), Value = self.ParentItem.Items[Index], Panels = { [PanelIndex] = Colour } }
- end
- end
- self.ParentItem.Base.ParentMenu.OnListChange(self.ParentItem.Base.ParentMenu, self.ParentItem, self.ParentItem._Index)
- self.ParentItem.OnListChanged(self.ParentItem.Base.ParentMenu, self.ParentItem, self.ParentItem._Index)
- end
- elseif ParentType == "UIMenuItem" then
- self.ParentItem.ActivatedPanel(self.ParentItem.ParentMenu, self.ParentItem, self, Colour)
- end
-end
-
-function UIMenuColourPanel:UpdateSelection(PreventUpdate)
- local CurrentSelection = self:CurrentSelection()
- if not PreventUpdate then
- self:UpdateParent(CurrentSelection)
- end
- self.SelectedRectangle:Position(15 + (44.5 * ((CurrentSelection - self.Data.Pagination.Min) - 1)) + self.ParentItem:Offset().X, self.SelectedRectangle.Y)
- for Index = 1, 9 do
- self.Bar[Index]:Colour(table.unpack(self.Data.Items[self.Data.Pagination.Min + Index]))
- end
- self.Text:Text(self.Data.Title .. " (" .. CurrentSelection .. " of " .. #self.Data.Items .. ")")
-end
-
-function UIMenuColourPanel:Functions()
-
- local SafeZone = { X = 0, Y = 0 }
- if self.ParentItem:SetParentMenu().Settings.ScaleWithSafezone then
- SafeZone = GetSafeZoneBounds()
- end
-
-
- if IsMouseInBounds(self.LeftArrow.X + SafeZone.X, self.LeftArrow.Y + SafeZone.Y, self.LeftArrow.Width, self.LeftArrow.Height) then
- if IsDisabledControlJustPressed(0, 24) then
- if #self.Data.Items > self.Data.Pagination.Total + 1 then
- if self:CurrentSelection() <= self.Data.Pagination.Min + 1 then
- if self:CurrentSelection() == 1 then
- self.Data.Pagination.Min = #self.Data.Items - (self.Data.Pagination.Total + 1)
- self.Data.Pagination.Max = #self.Data.Items
- self.Data.Index = 1000 - (1000 % #self.Data.Items)
- self.Data.Index = self.Data.Index + (#self.Data.Items - 1)
- self:UpdateSelection()
- else
- self.Data.Pagination.Min = self.Data.Pagination.Min - 1
- self.Data.Pagination.Max = self.Data.Pagination.Max - 1
- self.Data.Index = self.Data.Index - 1
- self:UpdateSelection()
- end
- else
- self.Data.Index = self.Data.Index - 1
- self:UpdateSelection()
- end
- else
- self.Data.Index = self.Data.Index - 1
- self:UpdateSelection()
- end
- end
- end
-
- if IsMouseInBounds(self.RightArrow.X + SafeZone.X, self.RightArrow.Y + SafeZone.Y, self.RightArrow.Width, self.RightArrow.Height) then
- if IsDisabledControlJustPressed(0, 24) then
- if #self.Data.Items > self.Data.Pagination.Total + 1 then
- if self:CurrentSelection() >= self.Data.Pagination.Max then
- if self:CurrentSelection() == #self.Data.Items then
- self.Data.Pagination.Min = 0
- self.Data.Pagination.Max = self.Data.Pagination.Total + 1
- self.Data.Index = 1000 - (1000 % #self.Data.Items)
- self:UpdateSelection()
- else
- self.Data.Pagination.Max = self.Data.Pagination.Max + 1
- self.Data.Pagination.Min = self.Data.Pagination.Max - (self.Data.Pagination.Total + 1)
- self.Data.Index = self.Data.Index + 1
- self:UpdateSelection()
- end
- else
- self.Data.Index = self.Data.Index + 1
- self:UpdateSelection()
- end
- else
- self.Data.Index = self.Data.Index + 1
- self:UpdateSelection()
- end
- end
- end
-
- for Index = 1, #self.Bar do
- if IsMouseInBounds(self.Bar[Index].X + SafeZone.X, self.Bar[Index].Y + SafeZone.Y, self.Bar[Index].Width, self.Bar[Index].Height) then
- if IsDisabledControlJustPressed(0, 24) then
- self:CurrentSelection(self.Data.Pagination.Min + Index - 1)
- end
- end
- end
-end
-
-function UIMenuColourPanel:Draw() -- required
- if self.Data.Enabled then
- self.Background:Size(431 + self.ParentItem:SetParentMenu().WidthOffset, 112)
-
- self.Background:Draw()
- self.LeftArrow:Draw()
- self.RightArrow:Draw()
- self.Text:Draw()
- self.SelectedRectangle:Draw()
- for Index = 1, #self.Bar do
- self.Bar[Index]:Draw()
- end
- self:Functions()
- end
-end
-
---[[
- UIMenuPercentagePanel.lua
- Panels
---]]
-
-UIMenuPercentagePanel = setmetatable({}, UIMenuPercentagePanel)
-UIMenuPercentagePanel.__index = UIMenuPercentagePanel
-UIMenuPercentagePanel.__call = function() return "UIMenuPanel", "UIMenuPercentagePanel" end
-
-function UIMenuPercentagePanel.New(MinText, MaxText)
- _UIMenuPercentagePanel = {
- Data = {
- Enabled = true,
- },
- Background = Sprite.New("commonmenu", "gradient_bgd", 0, 0, 431, 76),
- ActiveBar = UIResRectangle.New(0, 0, 413, 10, 245, 245, 245, 255),
- BackgroundBar = UIResRectangle.New(0, 0, 413, 10, 87, 87, 87, 255),
- Text = {
- Min = UIResText.New(MinText or "0%", 0, 0, 0.35, 255, 255, 255, 255, 0, "Centre"),
- Max = UIResText.New("100%", 0, 0, 0.35, 255, 255, 255, 255, 0, "Centre"),
- Title = UIResText.New(MaxText or "Opacity", 0, 0, 0.35, 255, 255, 255, 255, 0, "Centre"),
- },
- Audio = { Slider = "CONTINUOUS_SLIDER", Library = "HUD_FRONTEND_DEFAULT_SOUNDSET", Id = nil },
- ParentItem = nil,
- }
-
- return setmetatable(_UIMenuPercentagePanel, UIMenuPercentagePanel)
-end
-
-function UIMenuPercentagePanel:SetParentItem(Item) -- required
- if Item() == "UIMenuItem" then
- self.ParentItem = Item
- else
- return self.ParentItem
- end
-end
-
-function UIMenuPercentagePanel:Enabled(Enabled)
- if type(Enabled) == "boolean" then
- self.Data.Enabled = Enabled
- else
- return self.Data.Enabled
- end
-end
-
-function UIMenuPercentagePanel:Position(Y) -- required
- if tonumber(Y) then
- local ParentOffsetX, ParentOffsetWidth = self.ParentItem:Offset().X, self.ParentItem:SetParentMenu().WidthOffset
- self.Background:Position(ParentOffsetX, Y)
- self.ActiveBar:Position(ParentOffsetX + (ParentOffsetWidth / 2) + 9, 50 + Y)
- self.BackgroundBar:Position(ParentOffsetX + (ParentOffsetWidth / 2) + 9, 50 + Y)
- self.Text.Min:Position(ParentOffsetX + (ParentOffsetWidth / 2) + 25, 15 + Y)
- self.Text.Max:Position(ParentOffsetX + (ParentOffsetWidth / 2) + 398, 15 + Y)
- self.Text.Title:Position(ParentOffsetX + (ParentOffsetWidth / 2) + 215.5, 15 + Y)
- end
-end
-
-function UIMenuPercentagePanel:Percentage(Value)
- if tonumber(Value) then
- local Percent = ((Value < 0.0) and 0.0) or ((Value > 1.0) and 1.0 or Value)
- self.ActiveBar:Size(self.BackgroundBar.Width * Percent, self.ActiveBar.Height)
- else
- local SafeZone = { X = 0, Y = 0 }
- if self.ParentItem:SetParentMenu().Settings.ScaleWithSafezone then
- SafeZone = GetSafeZoneBounds()
- end
-
- local Progress = (math.round(GetControlNormal(0, 239) * 1920) - SafeZone.X) - self.ActiveBar.X
- return math.round(((Progress >= 0 and Progress <= 413) and Progress or ((Progress < 0) and 0 or 413)) / self.BackgroundBar.Width, 2)
- end
-end
-
-function UIMenuPercentagePanel:UpdateParent(Percentage)
- local _, ParentType = self.ParentItem()
- if ParentType == "UIMenuListItem" then
- local PanelItemIndex = self.ParentItem:FindPanelItem()
- if PanelItemIndex then
- self.ParentItem.Items[PanelItemIndex].Value[self.ParentItem:FindPanelIndex(self)] = Percentage
- self.ParentItem:Index(PanelItemIndex)
- self.ParentItem.Base.ParentMenu.OnListChange(self.ParentItem.Base.ParentMenu, self.ParentItem, self.ParentItem._Index)
- self.ParentItem.OnListChanged(self.ParentItem.Base.ParentMenu, self.ParentItem, self.ParentItem._Index)
- else
- local PanelIndex = self.ParentItem:FindPanelIndex(self)
- for Index = 1, #self.ParentItem.Items do
- if type(self.ParentItem.Items[Index]) == "table" then
- if not self.ParentItem.Items[Index].Panels then self.ParentItem.Items[Index].Panels = {} end
- self.ParentItem.Items[Index].Panels[PanelIndex] = Percentage
- else
- self.ParentItem.Items[Index] = { Name = tostring(self.ParentItem.Items[Index]), Value = self.ParentItem.Items[Index], Panels = { [PanelIndex] = Percentage } }
- end
- end
- self.ParentItem.Base.ParentMenu.OnListChange(self.ParentItem.Base.ParentMenu, self.ParentItem, self.ParentItem._Index)
- self.ParentItem.OnListChanged(self.ParentItem.Base.ParentMenu, self.ParentItem, self.ParentItem._Index)
- end
- elseif ParentType == "UIMenuItem" then
- self.ParentItem.ActivatedPanel(self.ParentItem.ParentMenu, self.ParentItem, self, Percentage)
- end
-end
-
-function UIMenuPercentagePanel:Functions()
-
- local SafeZone = { X = 0, Y = 0 }
- if self.ParentItem:SetParentMenu().Settings.ScaleWithSafezone then
- SafeZone = GetSafeZoneBounds()
- end
-
- if IsMouseInBounds(self.BackgroundBar.X + SafeZone.X, self.BackgroundBar.Y - 4 + SafeZone.Y, self.BackgroundBar.Width, self.BackgroundBar.Height + 8) then
- if IsDisabledControlJustPressed(0, 24) then
- if not self.Pressed then
- self.Pressed = true
- Citizen.CreateThread(function()
- self.Audio.Id = GetSoundId()
- PlaySoundFrontend(self.Audio.Id, self.Audio.Slider, self.Audio.Library, 1)
- while IsDisabledControlPressed(0, 24) and IsMouseInBounds(self.BackgroundBar.X + SafeZone.X, self.BackgroundBar.Y - 4 + SafeZone.Y, self.BackgroundBar.Width, self.BackgroundBar.Height + 8) do
- Citizen.Wait(0)
- local Progress = (math.round(GetControlNormal(0, 239) * 1920) - SafeZone.X) - self.ActiveBar.X
- self.ActiveBar:Size(((Progress >= 0 and Progress <= 413) and Progress or ((Progress < 0) and 0 or 413)), self.ActiveBar.Height)
- end
- StopSound(self.Audio.Id)
- ReleaseSoundId(self.Audio.Id)
- self.Pressed = false
- end)
- Citizen.CreateThread(function()
- while IsDisabledControlPressed(0, 24) and IsMouseInBounds(self.BackgroundBar.X + SafeZone.X, self.BackgroundBar.Y - 4 + SafeZone.Y, self.BackgroundBar.Width, self.BackgroundBar.Height + 8) do
- Citizen.Wait(75)
- local Progress = (math.round(GetControlNormal(0, 239) * 1920) - SafeZone.X) - self.ActiveBar.X
- self:UpdateParent(math.round(((Progress >= 0 and Progress <= 413) and Progress or ((Progress < 0) and 0 or 413)) / self.BackgroundBar.Width, 2))
- end
- end)
- end
- end
- end
-end
-
-function UIMenuPercentagePanel:Draw() -- required
- if self.Data.Enabled then
- self.Background:Size(431 + self.ParentItem:SetParentMenu().WidthOffset, 76)
- self.Background:Draw()
- self.BackgroundBar:Draw()
- self.ActiveBar:Draw()
- self.Text.Min:Draw()
- self.Text.Max:Draw()
- self.Text.Title:Draw()
- self:Functions()
- end
-end
-
---[[
- UIMenu.lua
- Menus
---]]
-
-function UIMenu.New(Title, Subtitle, X, Y, TxtDictionary, TxtName)
- local X, Y = tonumber(X) or 0, tonumber(Y) or 0
- if Title ~= nil then Title = tostring(Title) or "" else Title = "" end
- if Subtitle ~= nil then Subtitle = tostring(Subtitle) or "" else Subtitle = "" end
- if TxtDictionary ~= nil then TxtDictionary = tostring(TxtDictionary) or "commonmenu" else TxtDictionary = "commonmenu" end
- if TxtName ~= nil then TxtName = tostring(TxtName) or "interaction_bgd" else TxtName = "interaction_bgd" end
- local _UIMenu = {
- Logo = Sprite.New(TxtDictionary, TxtName, 0 + X, 0 + Y, 431, 107),
- Banner = nil,
- Title = UIResText.New(Title, 215 + X, 20 + Y, 1.15, 255, 255, 255, 255, 1, 1),
- Subtitle = { ExtraY = 0 },
- WidthOffset = 0,
- Position = { X = X, Y = Y },
- Pagination = { Min = 0, Max = 9, Total = 9 },
- PageCounter = { PreText = "" },
- Extra = {},
- Description = {},
- Items = {},
- Windows = {},
- Children = {},
- Controls = {
- Back = {
- Enabled = true,
- },
- Select = {
- Enabled = true,
- },
- Left = {
- Enabled = true,
- },
- Right = {
- Enabled = true,
- },
- Up = {
- Enabled = true,
- },
- Down = {
- Enabled = true,
- },
- },
- ParentMenu = nil,
- ParentItem = nil,
- _Visible = false,
- ActiveItem = 1000,
- Dirty = false;
- ReDraw = true,
- InstructionalScaleform = RequestScaleformMovie("INSTRUCTIONAL_BUTTONS"),
- InstructionalButtons = {},
- OnIndexChange = function(menu, newindex) end,
- OnListChange = function(menu, list, newindex) end,
- OnSliderChange = function(menu, slider, newindex) end,
- OnProgressChange = function(menu, progress, newindex) end,
- OnCheckboxChange = function(menu, item, checked) end,
- OnListSelect = function(menu, list, index) end,
- OnSliderSelect = function(menu, slider, index) end,
- OnProgressSelect = function(menu, progress, index) end,
- OnItemSelect = function(menu, item, index) end,
- OnMenuChanged = function(menu, newmenu, forward) end,
- OnMenuClosed = function(menu) end,
- Settings = {
- InstructionalButtons = true,
- MultilineFormats = true,
- ScaleWithSafezone = true,
- ResetCursorOnOpen = false,
- MouseControlsEnabled = false,
- MouseEdgeEnabled = false,
- ControlDisablingEnabled = true,
- Audio = {
- Library = "HUD_FRONTEND_DEFAULT_SOUNDSET",
- UpDown = "NAV_UP_DOWN",
- LeftRight = "NAV_LEFT_RIGHT",
- Select = "SELECT",
- Back = "BACK",
- Error = "ERROR",
- },
- EnabledControls = {
- Controller = {
- { 0, 2 }, -- Look Up and Down
- { 0, 1 }, -- Look Left and Right
- { 0, 25 }, -- Aim
- { 0, 24 }, -- Attack
- },
- Keyboard = {
- { 0, 0 }, -- Camera
- { 0, 1 }, -- Look Left and Right
- { 0, 2 }, -- Look Up and Down
- { 0, 8 }, -- Fly Up and Down
- { 0, 9 }, -- Fly Left and Right
- { 0, 21 }, -- Sprint
- { 0, 22 }, -- Jump
- { 0, 23 }, -- Enter
- { 0, 24 }, -- Attack
- { 0, 25 }, -- Aim
- { 0, 26 }, -- C
- { 0, 30 }, -- Move Left and Right
- { 0, 31 }, -- Move Up and Down
- { 0, 47 }, -- G
- { 0, 59 }, -- Move Vehicle Left and Right
- { 0, 71 }, -- Accelerate Vehicle
- { 0, 72 }, -- Vehicle Brake
- { 0, 73 }, -- X
- { 0, 75 }, -- Exit Vehicle
- { 0, 76 }, -- Vehicle Handbrake
- { 0, 89 }, -- Fly Yaw Left
- { 0, 90 }, -- Fly Yaw Right
- { 0, 108 }, -- Num Pad 4
- { 0, 109 }, -- Num Pad 6
- { 0, 110 }, -- Num Pad 5
- { 0, 111 }, -- Num Pad 8
- { 0, 117 }, -- Num Pad 7
- { 0, 118 }, -- Num Pad 9
- { 0, 171 }, -- CAPSLOCK
- { 0, 187 }, -- Down
- { 0, 188 }, -- Up
- { 0, 189 }, -- Left
- { 0, 190 }, -- Right
- { 0, 195 }, -- X axis
- { 0, 196 }, -- Y axis
- { 0, 201 }, -- Select
- { 0, 202 }, -- Back
- { 0, 203 }, -- Spacebar?
- { 0, 217 }, -- Select
- { 0, 239 }, -- Cursor X
- { 0, 240 }, -- Cursor Y
- { 0, 241 }, -- Scroll up
- { 0, 242 }, -- Scroll down
- { 0, 249 }, -- N
- { 0, 305 }, -- B
- { 0, 306 }, -- N
- },
- }
- }
- }
-
- if Subtitle ~= "" and Subtitle ~= nil then
- _UIMenu.Subtitle.Rectangle = UIResRectangle.New(0 + _UIMenu.Position.X, 107 + _UIMenu.Position.Y, 431, 37, 0, 0, 0, 255)
- _UIMenu.Subtitle.Text = UIResText.New(Subtitle, 8 + _UIMenu.Position.X, 110 + _UIMenu.Position.Y, 0.35, 245, 245, 245, 255, 0)
- _UIMenu.Subtitle.BackupText = Subtitle
- _UIMenu.Subtitle.Formatted = false
- if string.starts(Subtitle, "~") then
- _UIMenu.PageCounter.PreText = string.sub(Subtitle, 1, 3)
- end
- _UIMenu.PageCounter.Text = UIResText.New("", 425 + _UIMenu.Position.X, 110 + _UIMenu.Position.Y, 0.35, 245, 245, 245, 255, 0, "Right")
- _UIMenu.Subtitle.ExtraY = 37
- end
-
- _UIMenu.ArrowSprite = Sprite.New("commonmenu", "shop_arrows_upanddown", 190 + _UIMenu.Position.X, 147 + 37 * (_UIMenu.Pagination.Total + 1) + _UIMenu.Position.Y - 37 + _UIMenu.Subtitle.ExtraY, 50, 50)
- _UIMenu.Extra.Up = UIResRectangle.New(0 + _UIMenu.Position.X, 144 + 38 * (_UIMenu.Pagination.Total + 1) + _UIMenu.Position.Y - 37 + _UIMenu.Subtitle.ExtraY, 431, 18, 0, 0, 0, 200)
- _UIMenu.Extra.Down = UIResRectangle.New(0 + _UIMenu.Position.X, 144 + 18 + 38 * (_UIMenu.Pagination.Total + 1) + _UIMenu.Position.Y - 37 + _UIMenu.Subtitle.ExtraY, 431, 18, 0, 0, 0, 200)
-
- _UIMenu.Description.Bar = UIResRectangle.New(_UIMenu.Position.X, 123, 431, 4, 0, 0, 0, 255)
- _UIMenu.Description.Rectangle = Sprite.New("commonmenu", "gradient_bgd", _UIMenu.Position.X, 127, 431, 30)
- _UIMenu.Description.Text = UIResText.New("Description", _UIMenu.Position.X + 5, 125, 0.35)
-
- _UIMenu.Background = Sprite.New("commonmenu", "gradient_bgd", _UIMenu.Position.X, 144 + _UIMenu.Position.Y - 37 + _UIMenu.Subtitle.ExtraY, 290, 25)
-
- Citizen.CreateThread(function()
- if not HasScaleformMovieLoaded(_UIMenu.InstructionalScaleform) then
- _UIMenu.InstructionalScaleform = RequestScaleformMovie("INSTRUCTIONAL_BUTTONS")
- while not HasScaleformMovieLoaded(_UIMenu.InstructionalScaleform) do
- Citizen.Wait(0)
- end
- end
- end)
- return setmetatable(_UIMenu, UIMenu)
-end
-
-function UIMenu:SetMenuWidthOffset(Offset)
- if tonumber(Offset) then
- self.WidthOffset = math.floor(tonumber(Offset))
- self.Logo:Size(431 + self.WidthOffset, 107)
- self.Title:Position(((self.WidthOffset + 431) / 2) + self.Position.X, 20 + self.Position.Y)
- if self.Subtitle.Rectangle ~= nil then
- self.Subtitle.Rectangle:Size(431 + self.WidthOffset + 100, 37)
- self.PageCounter.Text:Position(425 + self.Position.X + self.WidthOffset, 110 + self.Position.Y)
- end
- if self.Banner ~= nil then
- self.Banner:Size(431 + self.WidthOffset, 107)
- end
- end
-end
-
-function UIMenu:DisEnableControls(bool)
- if bool then
- EnableAllControlActions(2)
- else
- DisableAllControlActions(2)
- end
-
- if bool then
- return
- else
- if Controller() then
- for Index = 1, #self.Settings.EnabledControls.Controller do
- EnableControlAction(self.Settings.EnabledControls.Controller[Index][1], self.Settings.EnabledControls.Controller[Index][2], true)
- end
- else
- for Index = 1, #self.Settings.EnabledControls.Keyboard do
- EnableControlAction(self.Settings.EnabledControls.Keyboard[Index][1], self.Settings.EnabledControls.Keyboard[Index][2], true)
- end
- end
- end
-end
-
-function UIMenu:InstructionalButtons(bool)
- if bool ~= nil then
- self.Settings.InstrucitonalButtons = tobool(bool)
- end
-end
-
-function UIMenu:SetBannerSprite(Sprite, IncludeChildren)
- if Sprite() == "Sprite" then
- self.Logo = Sprite
- self.Logo:Size(431 + self.WidthOffset, 107)
- self.Logo:Position(self.Position.X, self.Position.Y)
- self.Banner = nil
- if IncludeChildren then
- for Item, Menu in pairs(self.Children) do
- Menu.Logo = Sprite
- Menu.Logo:Size(431 + self.WidthOffset, 107)
- Menu.Logo:Position(self.Position.X, self.Position.Y)
- Menu.Banner = nil
- end
- end
- end
-end
-
-function UIMenu:SetBannerRectangle(Rectangle, IncludeChildren)
- if Rectangle() == "Rectangle" then
- self.Banner = Rectangle
- self.Banner:Size(431 + self.WidthOffset, 107)
- self.Banner:Position(self.Position.X, self.Position.Y)
- self.Logo = nil
- if IncludeChildren then
- for Item, Menu in pairs(self.Children) do
- Menu.Banner = Rectangle
- Menu.Banner:Size(431 + self.WidthOffset, 107)
- Menu:Position(self.Position.X, self.Position.Y)
- Menu.Logo = nil
- end
- end
- end
-end
-
-function UIMenu:CurrentSelection(value)
- if tonumber(value) then
- if #self.Items == 0 then
- self.ActiveItem = 0
- end
-
- self.Items[self:CurrentSelection()]:Selected(false)
- self.ActiveItem = 1000000 - (1000000 % #self.Items) + tonumber(value)
-
- if self:CurrentSelection() > self.Pagination.Max then
- self.Pagination.Min = self:CurrentSelection() - self.Pagination.Total
- self.Pagination.Max = self:CurrentSelection()
- elseif self:CurrentSelection() < self.Pagination.Min then
- self.Pagination.Min = self:CurrentSelection()
- self.Pagination.Max = self:CurrentSelection() + self.Pagination.Total
- end
- else
- if #self.Items == 0 then
- return 1
- else
- if self.ActiveItem % #self.Items == 0 then
- return 1
- else
- return self.ActiveItem % #self.Items + 1
- end
- end
- end
-end
-
-function UIMenu:CalculateWindowHeight()
- local Height = 0
- for i = 1, #self.Windows do
- Height = Height + self.Windows[i].Background:Size().Height
- end
- return Height
-end
-
-function UIMenu:CalculateItemHeightOffset(Item)
- if Item.Base then
- return Item.Base.Rectangle.Height
- else
- return Item.Rectangle.Height
- end
-end
-
-function UIMenu:CalculateItemHeight()
- local ItemOffset = 0 + self.Subtitle.ExtraY - 37
- for i = self.Pagination.Min + 1, self.Pagination.Max do
- local Item = self.Items[i]
- if Item ~= nil then
- ItemOffset = ItemOffset + self:CalculateItemHeightOffset(Item)
- end
- end
- return ItemOffset
-end
-
-function UIMenu:RecalculateDescriptionPosition()
- local WindowHeight = self:CalculateWindowHeight()
- self.Description.Bar:Position(self.Position.X, 149 + self.Position.Y + WindowHeight)
- self.Description.Rectangle:Position(self.Position.X, 149 + self.Position.Y + WindowHeight)
- self.Description.Text:Position(self.Position.X + 8, 155 + self.Position.Y + WindowHeight)
-
- self.Description.Bar:Size(431 + self.WidthOffset, 4)
- self.Description.Rectangle:Size(431 + self.WidthOffset, 30)
-
- self.Description.Bar:Position(self.Position.X, self:CalculateItemHeight() + ((#self.Items > (self.Pagination.Total + 1)) and 37 or 0) + self.Description.Bar:Position().Y)
- self.Description.Rectangle:Position(self.Position.X, self:CalculateItemHeight() + ((#self.Items > (self.Pagination.Total + 1)) and 37 or 0) + self.Description.Rectangle:Position().Y)
- self.Description.Text:Position(self.Position.X + 8, self:CalculateItemHeight() + ((#self.Items > (self.Pagination.Total + 1)) and 37 or 0) + self.Description.Text:Position().Y)
-end
-
-function UIMenu:CaclulatePanelPosition(HasDescription)
- local Height = self:CalculateWindowHeight() + 149 + self.Position.Y
-
- if HasDescription then
- Height = Height + self.Description.Rectangle:Size().Height + 5
- end
-
- return self:CalculateItemHeight() + ((#self.Items > (self.Pagination.Total + 1)) and 37 or 0) + Height
-end
-
-function UIMenu:AddWindow(Window)
- if Window() == "UIMenuWindow" then
- Window:SetParentMenu(self)
- Window:Offset(self.Position.X, self.Position.Y)
- table.insert(self.Windows, Window)
- self.ReDraw = true
- self:RecalculateDescriptionPosition()
- end
-end
-
-function UIMenu:RemoveWindowAt(Index)
- if tonumber(Index) then
- if self.Windows[Index] then
- table.remove(self.Windows, Index)
- self.ReDraw = true
- self:RecalculateDescriptionPosition()
- end
- end
-end
-
-function UIMenu:AddItem(Item)
- if Item() == "UIMenuItem" then
- local SelectedItem = self:CurrentSelection()
- Item:SetParentMenu(self)
- Item:Offset(self.Position.X, self.Position.Y)
- Item:Position((#self.Items * 25) - 37 + self.Subtitle.ExtraY)
- table.insert(self.Items, Item)
- self:RecalculateDescriptionPosition()
- self:CurrentSelection(SelectedItem)
- end
-end
-
-function UIMenu:RemoveItemAt(Index)
- if tonumber(Index) then
- if self.Items[Index] then
- local SelectedItem = self:CurrentSelection()
- if #self.Items > self.Pagination.Total and self.Pagination.Max == #self.Items - 1 then
- self.Pagination.Min = self.Pagination.Min - 1
- self.Pagination.Max = self.Pagination.Max + 1
- end
- table.remove(self.Items, tonumber(Index))
- self:RecalculateDescriptionPosition()
- self:CurrentSelection(SelectedItem)
- end
- end
-end
-
-function UIMenu:RefreshIndex()
- if #self.Items == 0 then
- self.ActiveItem = 1000
- self.Pagination.Max = self.Pagination.Total + 1
- self.Pagination.Min = 0
- return
- end
- self.Items[self:CurrentSelection()]:Selected(false)
- self.ActiveItem = 1000 - (1000 % #self.Items)
- self.Pagination.Max = self.Pagination.Total + 1
- self.Pagination.Min = 0
- self.ReDraw = true
-end
-
-function UIMenu:Clear()
- self.Items = {}
- self.ReDraw = true
- self:RecalculateDescriptionPosition()
-end
-
-function UIMenu:MultilineFormat(str)
- if tostring(str) then
-
- local PixelPerLine = 425 + self.WidthOffset
- local AggregatePixels = 0
- local output = ""
- local words = string.split(tostring(str), " ")
-
- for i = 1, #words do
- local offset = MeasureStringWidth(words[i], 0, 0.35)
- AggregatePixels = AggregatePixels + offset
- if AggregatePixels > PixelPerLine then
- output = output .. "\n" .. words[i] .. " "
- AggregatePixels = offset + MeasureString(" ")
- else
- output = output .. words[i] .. " "
- AggregatePixels = AggregatePixels + MeasureString(" ")
- end
- end
- return output
- end
-end
-
-function UIMenu:DrawCalculations()
- local WindowHeight = self:CalculateWindowHeight()
-
- if self.Settings.MultilineFormats then
- if self.Subtitle.Rectangle and not self.Subtitle.Formatted then
- self.Subtitle.Formatted = true
- self.Subtitle.Text:Text(self:MultilineFormat(self.Subtitle.Text:Text()))
-
- local Linecount = #string.split(self.Subtitle.Text:Text(), "\n")
- self.Subtitle.ExtraY = ((Linecount == 1) and 37 or ((Linecount + 1) * 22))
- self.Subtitle.Rectangle:Size(431 + self.WidthOffset, self.Subtitle.ExtraY)
- end
- elseif self.Subtitle.Formatted then
- self.Subtitle.Formatted = false
- self.Subtitle.ExtraY = 37
- self.Subtitle.Rectangle:Size(431 + self.WidthOffset, self.Subtitle.ExtraY)
- self.Subtitle.Text:Text(self.Subtitle.BackupText)
- end
-
- self.Background:Size(431 + self.WidthOffset, self:CalculateItemHeight() + WindowHeight + ((self.Subtitle.ExtraY > 0) and 0 or 37))
-
- self.Extra.Up:Size(431 + self.WidthOffset, 18)
- self.Extra.Down:Size(431 + self.WidthOffset, 18)
-
- self.Extra.Up:Position(self.Position.X, 144 + self:CalculateItemHeight() + self.Position.Y + WindowHeight)
- self.Extra.Down:Position(self.Position.X, 144 + 18 + self:CalculateItemHeight() + self.Position.Y + WindowHeight)
-
- if self.WidthOffset > 0 then
- self.ArrowSprite:Position(190 + self.Position.X + (self.WidthOffset / 2), 137 + self:CalculateItemHeight() + self.Position.Y + WindowHeight)
- else
- self.ArrowSprite:Position(190 + self.Position.X + self.WidthOffset, 137 + self:CalculateItemHeight() + self.Position.Y + WindowHeight)
- end
-
- self.ReDraw = false
-
- if #self.Items ~= 0 and self.Items[self:CurrentSelection()]:Description() ~= "" then
- self:RecalculateDescriptionPosition()
-
- local description = self.Items[self:CurrentSelection()]:Description()
- if self.Settings.MultilineFormats then
- self.Description.Text:Text(self:MultilineFormat(description))
- else
- self.Description.Text:Text(description)
- end
-
- local Linecount = #string.split(self.Description.Text:Text(), "\n")
- self.Description.Rectangle:Size(431 + self.WidthOffset, ((Linecount == 1) and 37 or ((Linecount + 1) * 22)))
- end
-end
-
-function UIMenu:Visible(bool)
- if bool ~= nil then
- self._Visible = tobool(bool)
- self.JustOpened = tobool(bool)
- self.Dirty = tobool(bool)
- self:UpdateScaleform()
- if self.ParentMenu ~= nil or tobool(bool) == false then
- return
- end
- if self.Settings.ResetCursorOnOpen then
- local W, H = GetScreenResolution()
- SetCursorLocation(W / 2, H / 2)
- SetCursorSprite(1)
- end
- else
- return self._Visible
- end
-end
-
-function UIMenu:ProcessControl()
- if not self._Visible then
- return
- end
-
- if self.JustOpened then
- self.JustOpened = false
- return
- end
-
- if self.Controls.Back.Enabled and (IsDisabledControlJustReleased(0, 177) or IsDisabledControlJustReleased(1, 177) or IsDisabledControlJustReleased(2, 177) or IsDisabledControlJustReleased(0, 199) or IsDisabledControlJustReleased(1, 199) or IsDisabledControlJustReleased(2, 199)) then
- self:GoBack()
- end
-
- if #self.Items == 0 then
- return
- end
-
- if not self.UpPressed then
- if self.Controls.Up.Enabled and (IsDisabledControlJustPressed(0, 172) or IsDisabledControlJustPressed(1, 172) or IsDisabledControlJustPressed(2, 172) or IsDisabledControlJustPressed(0, 241) or IsDisabledControlJustPressed(1, 241) or IsDisabledControlJustPressed(2, 241) or IsDisabledControlJustPressed(2, 241)) then
- Citizen.CreateThread(function()
- self.UpPressed = true
- if #self.Items > self.Pagination.Total + 1 then
- self:GoUpOverflow()
- else
- self:GoUp()
- end
- self:UpdateScaleform()
- Citizen.Wait(120)
- while self.Controls.Up.Enabled and (IsDisabledControlPressed(0, 172) or IsDisabledControlPressed(1, 172) or IsDisabledControlPressed(2, 172) or IsDisabledControlPressed(0, 241) or IsDisabledControlPressed(1, 241) or IsDisabledControlPressed(2, 241) or IsDisabledControlPressed(2, 241)) do
- if #self.Items > self.Pagination.Total + 1 then
- self:GoUpOverflow()
- else
- self:GoUp()
- end
- self:UpdateScaleform()
- Citizen.Wait(50)
- end
- self.UpPressed = false
- end)
- end
- end
-
- if not self.DownPressed then
- if self.Controls.Down.Enabled and (IsDisabledControlJustPressed(0, 173) or IsDisabledControlJustPressed(1, 173) or IsDisabledControlJustPressed(2, 173) or IsDisabledControlJustPressed(0, 242) or IsDisabledControlJustPressed(1, 242) or IsDisabledControlJustPressed(2, 242)) then
- Citizen.CreateThread(function()
- self.DownPressed = true
- if #self.Items > self.Pagination.Total + 1 then
- self:GoDownOverflow()
- else
- self:GoDown()
- end
- self:UpdateScaleform()
- Citizen.Wait(120)
- while self.Controls.Down.Enabled and (IsDisabledControlPressed(0, 173) or IsDisabledControlPressed(1, 173) or IsDisabledControlPressed(2, 173) or IsDisabledControlPressed(0, 242) or IsDisabledControlPressed(1, 242) or IsDisabledControlPressed(2, 242)) do
- if #self.Items > self.Pagination.Total + 1 then
- self:GoDownOverflow()
- else
- self:GoDown()
- end
- self:UpdateScaleform()
- Citizen.Wait(50)
- end
- self.DownPressed = false
- end)
- end
- end
-
- if not self.LeftPressed then
- if self.Controls.Left.Enabled and (IsDisabledControlPressed(0, 174) or IsDisabledControlPressed(1, 174) or IsDisabledControlPressed(2, 174)) then
- Citizen.CreateThread(function()
- self.LeftPressed = true
- self:GoLeft()
- Citizen.Wait(175)
- while self.Controls.Left.Enabled and (IsDisabledControlPressed(0, 174) or IsDisabledControlPressed(1, 174) or IsDisabledControlPressed(2, 174)) do
- self:GoLeft()
- Citizen.Wait(125)
- end
- self.LeftPressed = false
- end)
- end
- end
-
- if not self.RightPressed then
- if self.Controls.Right.Enabled and (IsDisabledControlPressed(0, 175) or IsDisabledControlPressed(1, 175) or IsDisabledControlPressed(2, 175)) then
- Citizen.CreateThread(function()
- self.RightPressed = true
- self:GoRight()
- Citizen.Wait(175)
- while self.Controls.Right.Enabled and (IsDisabledControlPressed(0, 175) or IsDisabledControlPressed(1, 175) or IsDisabledControlPressed(2, 175)) do
- self:GoRight()
- Citizen.Wait(125)
- end
- self.RightPressed = false
- end)
- end
- end
-
- if self.Controls.Select.Enabled and (IsDisabledControlJustPressed(0, 201) or IsDisabledControlJustPressed(1, 201) or IsDisabledControlJustPressed(2, 201)) then
- self:SelectItem()
- end
-end
-
-function UIMenu:GoUpOverflow()
- if #self.Items <= self.Pagination.Total + 1 then
- return
- end
-
- if self:CurrentSelection() <= self.Pagination.Min + 1 then
- if self:CurrentSelection() == 1 then
- self.Pagination.Min = #self.Items - (self.Pagination.Total + 1)
- self.Pagination.Max = #self.Items
- self.Items[self:CurrentSelection()]:Selected(false)
- self.ActiveItem = 1000 - (1000 % #self.Items)
- self.ActiveItem = self.ActiveItem + (#self.Items - 1)
- self.Items[self:CurrentSelection()]:Selected(true)
- else
- self.Pagination.Min = self.Pagination.Min - 1
- self.Pagination.Max = self.Pagination.Max - 1
- self.Items[self:CurrentSelection()]:Selected(false)
- self.ActiveItem = self.ActiveItem - 1
- self.Items[self:CurrentSelection()]:Selected(true)
- end
- else
- self.Items[self:CurrentSelection()]:Selected(false)
- self.ActiveItem = self.ActiveItem - 1
- self.Items[self:CurrentSelection()]:Selected(true)
- end
- PlaySoundFrontend(-1, self.Settings.Audio.UpDown, self.Settings.Audio.Library, true)
- self.OnIndexChange(self, self:CurrentSelection())
- self.ReDraw = true
-end
-
-function UIMenu:GoUp()
- if #self.Items > self.Pagination.Total + 1 then
- return
- end
- self.Items[self:CurrentSelection()]:Selected(false)
- self.ActiveItem = self.ActiveItem - 1
- self.Items[self:CurrentSelection()]:Selected(true)
- PlaySoundFrontend(-1, self.Settings.Audio.UpDown, self.Settings.Audio.Library, true)
- self.OnIndexChange(self, self:CurrentSelection())
- self.ReDraw = true
-end
-
-function UIMenu:GoDownOverflow()
- if #self.Items <= self.Pagination.Total + 1 then
- return
- end
-
- if self:CurrentSelection() >= self.Pagination.Max then
- if self:CurrentSelection() == #self.Items then
- self.Pagination.Min = 0
- self.Pagination.Max = self.Pagination.Total + 1
- self.Items[self:CurrentSelection()]:Selected(false)
- self.ActiveItem = 1000 - (1000 % #self.Items)
- self.Items[self:CurrentSelection()]:Selected(true)
- else
- self.Pagination.Max = self.Pagination.Max + 1
- self.Pagination.Min = self.Pagination.Max - (self.Pagination.Total + 1)
- self.Items[self:CurrentSelection()]:Selected(false)
- self.ActiveItem = self.ActiveItem + 1
- self.Items[self:CurrentSelection()]:Selected(true)
- end
- else
- self.Items[self:CurrentSelection()]:Selected(false)
- self.ActiveItem = self.ActiveItem + 1
- self.Items[self:CurrentSelection()]:Selected(true)
- end
- PlaySoundFrontend(-1, self.Settings.Audio.UpDown, self.Settings.Audio.Library, true)
- self.OnIndexChange(self, self:CurrentSelection())
- self.ReDraw = true
-end
-
-function UIMenu:GoDown()
- if #self.Items > self.Pagination.Total + 1 then
- return
- end
-
- self.Items[self:CurrentSelection()]:Selected(false)
- self.ActiveItem = self.ActiveItem + 1
- self.Items[self:CurrentSelection()]:Selected(true)
- PlaySoundFrontend(-1, self.Settings.Audio.UpDown, self.Settings.Audio.Library, true)
- self.OnIndexChange(self, self:CurrentSelection())
- self.ReDraw = true
-end
-
-function UIMenu:GoLeft()
- local type, subtype = self.Items[self:CurrentSelection()]()
- if subtype ~= "UIMenuListItem" and subtype ~= "UIMenuSliderItem" and subtype ~= "UIMenuProgressItem" then
- return
- end
-
- if not self.Items[self:CurrentSelection()]:Enabled() then
- PlaySoundFrontend(-1, self.Settings.Audio.Error, self.Settings.Audio.Library, true)
- return
- end
-
- if subtype == "UIMenuListItem" then
- local Item = self.Items[self:CurrentSelection()]
- Item:Index(Item._Index - 1)
- self.OnListChange(self, Item, Item._Index)
- Item.OnListChanged(self, Item, Item._Index)
- PlaySoundFrontend(-1, self.Settings.Audio.LeftRight, self.Settings.Audio.Library, true)
- elseif subtype == "UIMenuSliderItem" then
- local Item = self.Items[self:CurrentSelection()]
- Item:Index(Item._Index - 1)
- self.OnSliderChange(self, Item, Item:Index())
- Item.OnSliderChanged(self, Item, Item._Index)
- PlaySoundFrontend(-1, self.Settings.Audio.LeftRight, self.Settings.Audio.Library, true)
- elseif subtype == "UIMenuProgressItem" then
- local Item = self.Items[self:CurrentSelection()]
- Item:Index(Item.Data.Index - 1)
- self.OnProgressChange(self, Item, Item.Data.Index)
- Item.OnProgressChanged(self, Item, Item.Data.Index)
- PlaySoundFrontend(-1, self.Settings.Audio.LeftRight, self.Settings.Audio.Library, true)
- end
-end
-
-function UIMenu:GoRight()
- local type, subtype = self.Items[self:CurrentSelection()]()
- if subtype ~= "UIMenuListItem" and subtype ~= "UIMenuSliderItem" and subtype ~= "UIMenuProgressItem" then
- return
- end
-
- if not self.Items[self:CurrentSelection()]:Enabled() then
- PlaySoundFrontend(-1, self.Settings.Audio.Error, self.Settings.Audio.Library, true)
- return
- end
-
- if subtype == "UIMenuListItem" then
- local Item = self.Items[self:CurrentSelection()]
- Item:Index(Item._Index + 1)
- self.OnListChange(self, Item, Item._Index)
- Item.OnListChanged(self, Item, Item._Index)
- PlaySoundFrontend(-1, self.Settings.Audio.LeftRight, self.Settings.Audio.Library, true)
- elseif subtype == "UIMenuSliderItem" then
- local Item = self.Items[self:CurrentSelection()]
- Item:Index(Item._Index + 1)
- self.OnSliderChange(self, Item, Item:Index())
- Item.OnSliderChanged(self, Item, Item._Index)
- PlaySoundFrontend(-1, self.Settings.Audio.LeftRight, self.Settings.Audio.Library, true)
- elseif subtype == "UIMenuProgressItem" then
- local Item = self.Items[self:CurrentSelection()]
- Item:Index(Item.Data.Index + 1)
- self.OnProgressChange(self, Item, Item.Data.Index)
- Item.OnProgressChanged(self, Item, Item.Data.Index)
- PlaySoundFrontend(-1, self.Settings.Audio.LeftRight, self.Settings.Audio.Library, true)
- end
-end
-
-function UIMenu:SelectItem()
- if not self.Items[self:CurrentSelection()]:Enabled() then
- PlaySoundFrontend(-1, self.Settings.Audio.Error, self.Settings.Audio.Library, true)
- return
- end
- local Item = self.Items[self:CurrentSelection()]
- local type, subtype = Item()
- if subtype == "UIMenuCheckboxItem" then
- Item.Checked = not Item.Checked
- PlaySoundFrontend(-1, self.Settings.Audio.Select, self.Settings.Audio.Library, true)
- self.OnCheckboxChange(self, Item, Item.Checked)
- Item.CheckboxEvent(self, Item, Item.Checked)
- elseif subtype == "UIMenuListItem" then
- PlaySoundFrontend(-1, self.Settings.Audio.Select, self.Settings.Audio.Library, true)
- self.OnListSelect(self, Item, Item._Index)
- Item.OnListSelected(self, Item, Item._Index)
- elseif subtype == "UIMenuSliderItem" then
- PlaySoundFrontend(-1, self.Settings.Audio.Select, self.Settings.Audio.Library, true)
- self.OnSliderSelect(self, Item, Item._Index)
- Item.OnSliderSelected(Item._Index)
- elseif subtype == "UIMenuProgressItem" then
- PlaySoundFrontend(-1, self.Settings.Audio.Select, self.Settings.Audio.Library, true)
- self.OnProgressSelect(self, Item, Item.Data.Index)
- Item.OnProgressSelected(Item.Data.Index)
- else
- PlaySoundFrontend(-1, self.Settings.Audio.Select, self.Settings.Audio.Library, true)
- self.OnItemSelect(self, Item, self:CurrentSelection())
- Item.Activated(self, Item)
- if not self.Children[Item] then
- return
- end
- self:Visible(false)
- self.Children[Item]:Visible(true)
- self.OnMenuChanged(self, self.Children[self.Items[self:CurrentSelection()]], true)
- end
-end
-
-function UIMenu:GoBack()
- PlaySoundFrontend(-1, self.Settings.Audio.Back, self.Settings.Audio.Library, true)
- self:Visible(false)
- if self.ParentMenu ~= nil then
- self.ParentMenu:Visible(true)
- self.OnMenuChanged(self, self.ParentMenu, false)
- if self.Settings.ResetCursorOnOpen then
- local W, H = GetActiveScreenResolution()
- SetCursorLocation(W / 2, H / 2)
- end
- end
- self.OnMenuClosed(self)
-end
-
-function UIMenu:BindMenuToItem(Menu, Item)
- if Menu() == "UIMenu" and Item() == "UIMenuItem" then
- Menu.ParentMenu = self
- Menu.ParentItem = Item
- self.Children[Item] = Menu
- end
-end
-
-function UIMenu:ReleaseMenuFromItem(Item)
- if Item() == "UIMenuItem" then
- if not self.Children[Item] then
- return false
- end
- self.Children[Item].ParentMenu = nil
- self.Children[Item].ParentItem = nil
- self.Children[Item] = nil
- return true
- end
-end
-
-function UIMenu:Draw()
- if not self._Visible then
- return
- end
-
- HideHudComponentThisFrame(19)
-
- if self.Settings.ControlDisablingEnabled then
- self:DisEnableControls(false)
- end
-
- if self.Settings.InstructionalButtons then
- DrawScaleformMovieFullscreen(self.InstructionalScaleform, 255, 255, 255, 255, 0)
- end
-
- if self.Settings.ScaleWithSafezone then
- ScreenDrawPositionBegin(76, 84)
- ScreenDrawPositionRatio(0, 0, 0, 0)
- end
-
- if self.ReDraw then
- self:DrawCalculations()
- end
-
- if self.Logo then
- self.Logo:Draw()
- elseif self.Banner then
- self.Banner:Draw()
- end
-
- self.Title:Draw()
-
- if self.Subtitle.Rectangle then
- self.Subtitle.Rectangle:Draw()
- self.Subtitle.Text:Draw()
- end
-
- if #self.Items ~= 0 or #self.Windows ~= 0 then
- self.Background:Draw()
- end
-
- if #self.Windows ~= 0 then
- local WindowOffset = 0
- for index = 1, #self.Windows do
- if self.Windows[index - 1] then
- WindowOffset = WindowOffset + self.Windows[index - 1].Background:Size().Height
- end
- local Window = self.Windows[index]
- Window:Position(WindowOffset + self.Subtitle.ExtraY - 37)
- Window:Draw()
- end
- end
-
- if #self.Items == 0 then
- if self.Settings.ScaleWithSafezone then
- ScreenDrawPositionEnd()
- end
- return
- end
-
- local CurrentSelection = self:CurrentSelection()
- self.Items[CurrentSelection]:Selected(true)
-
- if self.Items[CurrentSelection]:Description() ~= "" then
- self.Description.Bar:Draw()
- self.Description.Rectangle:Draw()
- self.Description.Text:Draw()
- end
-
- if self.Items[CurrentSelection].Panels ~= nil then
- if #self.Items[CurrentSelection].Panels ~= 0 then
- local PanelOffset = self:CaclulatePanelPosition(self.Items[CurrentSelection]:Description() ~= "")
- for index = 1, #self.Items[CurrentSelection].Panels do
- if self.Items[CurrentSelection].Panels[index - 1] then
- PanelOffset = PanelOffset + self.Items[CurrentSelection].Panels[index - 1].Background:Size().Height + 5
- end
- self.Items[CurrentSelection].Panels[index]:Position(PanelOffset)
- self.Items[CurrentSelection].Panels[index]:Draw()
- end
- end
- end
-
- local WindowHeight = self:CalculateWindowHeight()
-
- if #self.Items <= self.Pagination.Total + 1 then
- local ItemOffset = self.Subtitle.ExtraY - 37 + WindowHeight
- for index = 1, #self.Items do
- Item = self.Items[index]
- Item:Position(ItemOffset)
- Item:Draw()
- ItemOffset = ItemOffset + self:CalculateItemHeightOffset(Item)
- end
- else
- local ItemOffset = self.Subtitle.ExtraY - 37 + WindowHeight
- for index = self.Pagination.Min + 1, self.Pagination.Max, 1 do
- if self.Items[index] then
- Item = self.Items[index]
- Item:Position(ItemOffset)
- Item:Draw()
- ItemOffset = ItemOffset + self:CalculateItemHeightOffset(Item)
- end
- end
-
- self.Extra.Up:Draw()
- self.Extra.Down:Draw()
- self.ArrowSprite:Draw()
-
- if self.PageCounter.Text ~= nil then
- local Caption = self.PageCounter.PreText .. CurrentSelection .. " / " .. #self.Items
- self.PageCounter.Text:Text(Caption)
- self.PageCounter.Text:Draw()
- end
- end
-
- if self.Settings.ScaleWithSafezone then
- ScreenDrawPositionEnd()
- end
-end
-
-function UIMenu:ProcessMouse()
- if not self._Visible or self.JustOpened or #self.Items == 0 or tobool(Controller()) or not self.Settings.MouseControlsEnabled then
- EnableControlAction(0, 2, true)
- EnableControlAction(0, 1, true)
- EnableControlAction(0, 25, true)
- EnableControlAction(0, 24, true)
- if self.Dirty then
- for _, Item in pairs(self.Items) do
- if Item:Hovered() then
- Item:Hovered(false)
- end
- end
- end
- return
- end
-
- local SafeZone = { X = 0, Y = 0 }
- local WindowHeight = self:CalculateWindowHeight()
- if self.Settings.ScaleWithSafezone then
- SafeZone = GetSafeZoneBounds()
- end
-
- local Limit = #self.Items
- local ItemOffset = 0
-
- ShowCursorThisFrame()
-
- if #self.Items > self.Pagination.Total + 1 then
- Limit = self.Pagination.Max
- end
-
- if IsMouseInBounds(0, 0, 30, 1080) and self.Settings.MouseEdgeEnabled then
- SetGameplayCamRelativeHeading(GetGameplayCamRelativeHeading() + 5)
- SetCursorSprite(6)
- elseif IsMouseInBounds(1920 - 30, 0, 30, 1080) and self.Settings.MouseEdgeEnabled then
- SetGameplayCamRelativeHeading(GetGameplayCamRelativeHeading() - 5)
- SetCursorSprite(7)
- elseif self.Settings.MouseEdgeEnabled then
- SetCursorSprite(1)
- end
-
- for i = self.Pagination.Min + 1, Limit, 1 do
- local X, Y = self.Position.X + SafeZone.X, self.Position.Y + 144 - 37 + self.Subtitle.ExtraY + ItemOffset + SafeZone.Y + WindowHeight
- local Item = self.Items[i]
- local Type, SubType = Item()
- local Width, Height = 431 + self.WidthOffset, self:CalculateItemHeightOffset(Item)
-
- if IsMouseInBounds(X, Y, Width, Height) then
- Item:Hovered(true)
- if not self.Controls.MousePressed then
- if IsDisabledControlJustPressed(0, 24) then
- Citizen.CreateThread(function()
- local _X, _Y, _Width, _Height = X, Y, Width, Height
- self.Controls.MousePressed = true
- if Item:Selected() and Item:Enabled() then
- if SubType == "UIMenuListItem" then
- if IsMouseInBounds(Item.LeftArrow.X + SafeZone.X, Item.LeftArrow.Y + SafeZone.Y, Item.LeftArrow.Width, Item.LeftArrow.Height) then
- self:GoLeft()
- elseif not IsMouseInBounds(Item.RightArrow.X + SafeZone.X, Item.RightArrow.Y + SafeZone.Y, Item.RightArrow.Width, Item.RightArrow.Height) then
- self:SelectItem()
- end
- if IsMouseInBounds(Item.RightArrow.X + SafeZone.X, Item.RightArrow.Y + SafeZone.Y, Item.RightArrow.Width, Item.RightArrow.Height) then
- self:GoRight()
- elseif not IsMouseInBounds(Item.LeftArrow.X + SafeZone.X, Item.LeftArrow.Y + SafeZone.Y, Item.LeftArrow.Width, Item.LeftArrow.Height) then
- self:SelectItem()
- end
- elseif SubType == "UIMenuSliderItem" then
- if IsMouseInBounds(Item.LeftArrow.X + SafeZone.X, Item.LeftArrow.Y + SafeZone.Y, Item.LeftArrow.Width, Item.LeftArrow.Height) then
- self:GoLeft()
- elseif not IsMouseInBounds(Item.RightArrow.X + SafeZone.X, Item.RightArrow.Y + SafeZone.Y, Item.RightArrow.Width, Item.RightArrow.Height) then
- self:SelectItem()
- end
- if IsMouseInBounds(Item.RightArrow.X + SafeZone.X, Item.RightArrow.Y + SafeZone.Y, Item.RightArrow.Width, Item.RightArrow.Height) then
- self:GoRight()
- elseif not IsMouseInBounds(Item.LeftArrow.X + SafeZone.X, Item.LeftArrow.Y + SafeZone.Y, Item.LeftArrow.Width, Item.LeftArrow.Height) then
- self:SelectItem()
- end
- elseif SubType == "UIMenuProgressItem" then
- if IsMouseInBounds(Item.Bar.X + SafeZone.X, Item.Bar.Y + SafeZone.Y - 12, Item.Data.Max, Item.Bar.Height + 24) then
- Item:CalculateProgress(math.round(GetControlNormal(0, 239) * 1920) - SafeZone.X)
- self.OnProgressChange(self, Item, Item.Data.Index)
- Item.OnProgressChanged(self, Item, Item.Data.Index)
- else
- self:SelectItem()
- end
- else
- self:SelectItem()
- end
- elseif not Item:Selected() then
- self:CurrentSelection(i - 1)
- PlaySoundFrontend(-1, self.Settings.Audio.Error, self.Settings.Audio.Library, true)
- self.OnIndexChange(self, self:CurrentSelection())
- self.ReDraw = true
- self:UpdateScaleform()
- elseif not Item:Enabled() and Item:Selected() then
- PlaySoundFrontend(-1, self.Settings.Audio.Error, self.Settings.Audio.Library, true)
- end
- Citizen.Wait(175)
- while IsDisabledControlPressed(0, 24) and IsMouseInBounds(_X, _Y, _Width, _Height) do
- if Item:Selected() and Item:Enabled() then
- if SubType == "UIMenuListItem" then
- if IsMouseInBounds(Item.LeftArrow.X + SafeZone.X, Item.LeftArrow.Y + SafeZone.Y, Item.LeftArrow.Width, Item.LeftArrow.Height) then
- self:GoLeft()
- end
- if IsMouseInBounds(Item.RightArrow.X + SafeZone.X, Item.RightArrow.Y + SafeZone.Y, Item.RightArrow.Width, Item.RightArrow.Height) then
- self:GoRight()
- end
- elseif SubType == "UIMenuSliderItem" then
- if IsMouseInBounds(Item.LeftArrow.X + SafeZone.X, Item.LeftArrow.Y + SafeZone.Y, Item.LeftArrow.Width, Item.LeftArrow.Height) then
- self:GoLeft()
- end
- if IsMouseInBounds(Item.RightArrow.X + SafeZone.X, Item.RightArrow.Y + SafeZone.Y, Item.RightArrow.Width, Item.RightArrow.Height) then
- self:GoRight()
- end
- elseif SubType == "UIMenuProgressItem" then
- if IsMouseInBounds(Item.Bar.X + SafeZone.X, Item.Bar.Y + SafeZone.Y - 12, Item.Data.Max, Item.Bar.Height + 24) then
- Item:CalculateProgress(math.round(GetControlNormal(0, 239) * 1920) - SafeZone.X)
- self.OnProgressChange(self, Item, Item.Data.Index)
- Item.OnProgressChanged(self, Item, Item.Data.Index)
- else
- self:SelectItem()
- end
- end
- elseif not Item:Selected() then
- self:CurrentSelection(i - 1)
- PlaySoundFrontend(-1, self.Settings.Audio.Error, self.Settings.Audio.Library, true)
- self.OnIndexChange(self, self:CurrentSelection())
- self.ReDraw = true
- self:UpdateScaleform()
- elseif not Item:Enabled() and Item:Selected() then
- PlaySoundFrontend(-1, self.Settings.Audio.Error, self.Settings.Audio.Library, true)
- end
- Citizen.Wait(125)
- end
- self.Controls.MousePressed = false
- end)
- end
- end
- else
- Item:Hovered(false)
- end
- ItemOffset = ItemOffset + self:CalculateItemHeightOffset(Item)
- end
-
- local ExtraX, ExtraY = self.Position.X + SafeZone.X, 144 + self:CalculateItemHeight() + self.Position.Y + SafeZone.Y + WindowHeight
-
- if #self.Items <= self.Pagination.Total + 1 then return end
-
- if IsMouseInBounds(ExtraX, ExtraY, 431 + self.WidthOffset, 18) then
- self.Extra.Up:Colour(30, 30, 30, 255)
- if not self.Controls.MousePressed then
- if IsDisabledControlJustPressed(0, 24) then
- Citizen.CreateThread(function()
- local _ExtraX, _ExtraY = ExtraX, ExtraY
- self.Controls.MousePressed = true
- if #self.Items > self.Pagination.Total + 1 then
- self:GoUpOverflow()
- else
- self:GoUp()
- end
- Citizen.Wait(175)
- while IsDisabledControlPressed(0, 24) and IsMouseInBounds(_ExtraX, _ExtraY, 431 + self.WidthOffset, 18) do
- if #self.Items > self.Pagination.Total + 1 then
- self:GoUpOverflow()
- else
- self:GoUp()
- end
- Citizen.Wait(125)
- end
- self.Controls.MousePressed = false
- end)
- end
- end
- else
- self.Extra.Up:Colour(0, 0, 0, 200)
- end
-
- if IsMouseInBounds(ExtraX, ExtraY + 18, 431 + self.WidthOffset, 18) then
- self.Extra.Down:Colour(30, 30, 30, 255)
- if not self.Controls.MousePressed then
- if IsDisabledControlJustPressed(0, 24) then
- Citizen.CreateThread(function()
- local _ExtraX, _ExtraY = ExtraX, ExtraY
- self.Controls.MousePressed = true
- if #self.Items > self.Pagination.Total + 1 then
- self:GoDownOverflow()
- else
- self:GoDown()
- end
- Citizen.Wait(175)
- while IsDisabledControlPressed(0, 24) and IsMouseInBounds(_ExtraX, _ExtraY + 18, 431 + self.WidthOffset, 18) do
- if #self.Items > self.Pagination.Total + 1 then
- self:GoDownOverflow()
- else
- self:GoDown()
- end
- Citizen.Wait(125)
- end
- self.Controls.MousePressed = false
- end)
- end
- end
- else
- self.Extra.Down:Colour(0, 0, 0, 200)
- end
-end
-
-function UIMenu:AddInstructionButton(button)
- if type(button) == "table" and #button == 2 then
- table.insert(self.InstructionalButtons, button)
- end
-end
-
-function UIMenu:RemoveInstructionButton(button)
- if type(button) == "table" then
- for i = 1, #self.InstructionalButtons do
- if button == self.InstructionalButtons[i] then
- table.remove(self.InstructionalButtons, i)
- break
- end
- end
- else
- if tonumber(button) then
- if self.InstructionalButtons[tonumber(button)] then
- table.remove(self.InstructionalButtons, tonumber(button))
- end
- end
- end
-end
-
-function UIMenu:AddEnabledControl(Inputgroup, Control, Controller)
- if tonumber(Inputgroup) and tonumber(Control) then
- table.insert(self.Settings.EnabledControls[(Controller and "Controller" or "Keyboard")], { Inputgroup, Control })
- end
-end
-
-function UIMenu:RemoveEnabledControl(Inputgroup, Control, Controller)
- local Type = (Controller and "Controller" or "Keyboard")
- for Index = 1, #self.Settings.EnabledControls[Type] do
- if Inputgroup == self.Settings.EnabledControls[Type][Index][1] and Control == self.Settings.EnabledControls[Type][Index][2] then
- table.remove(self.Settings.EnabledControls[Type], Index)
- break
- end
- end
-end
-
-function UIMenu:UpdateScaleform()
- if not self._Visible or not self.Settings.InstructionalButtons then
- return
- end
-
- PushScaleformMovieFunction(self.InstructionalScaleform, "CLEAR_ALL")
- PopScaleformMovieFunction()
-
- PushScaleformMovieFunction(self.InstructionalScaleform, "TOGGLE_MOUSE_BUTTONS")
- PushScaleformMovieFunctionParameterInt(0)
- PopScaleformMovieFunction()
-
- PushScaleformMovieFunction(self.InstructionalScaleform, "CREATE_CONTAINER")
- PopScaleformMovieFunction()
-
- PushScaleformMovieFunction(self.InstructionalScaleform, "SET_DATA_SLOT")
- PushScaleformMovieFunctionParameterInt(0)
- PushScaleformMovieFunctionParameterString(GetControlInstructionalButton(2, 176, 0))
- PushScaleformMovieFunctionParameterString("Select")
- PopScaleformMovieFunction()
-
- if self.Controls.Back.Enabled then
- PushScaleformMovieFunction(self.InstructionalScaleform, "SET_DATA_SLOT")
- PushScaleformMovieFunctionParameterInt(1)
- PushScaleformMovieFunctionParameterString(GetControlInstructionalButton(2, 177, 0))
- PushScaleformMovieFunctionParameterString("Back")
- PopScaleformMovieFunction()
- end
-
- local count = 2
-
- for i = 1, #self.InstructionalButtons do
- if self.InstructionalButtons[i] then
- if #self.InstructionalButtons[i] == 2 then
- PushScaleformMovieFunction(self.InstructionalScaleform, "SET_DATA_SLOT")
- PushScaleformMovieFunctionParameterInt(count)
- PushScaleformMovieFunctionParameterString(self.InstructionalButtons[i][1])
- PushScaleformMovieFunctionParameterString(self.InstructionalButtons[i][2])
- PopScaleformMovieFunction()
- count = count + 1
- end
- end
- end
-
- PushScaleformMovieFunction(self.InstructionalScaleform, "DRAW_INSTRUCTIONAL_BUTTONS")
- PushScaleformMovieFunctionParameterInt(-1)
- PopScaleformMovieFunction()
-end
-
---[[
- MenuPool.lua
- Menus
---]]
-
-function MenuPool.New()
- local _MenuPool = {
- Menus = {}
- }
- return setmetatable(_MenuPool, MenuPool)
-end
-
-function MenuPool:AddSubMenu(Menu, Text, Description, KeepPosition, KeepBanner)
- if Menu() == "UIMenu" then
- local Item = UIMenuItem.New(tostring(Text), Description or "")
- Menu:AddItem(Item)
- local SubMenu
- if KeepPosition then
- SubMenu = UIMenu.New(Menu.Title:Text(), Text, Menu.Position.X, Menu.Position.Y)
- else
- SubMenu = UIMenu.New(Menu.Title:Text(), Text)
- end
- if KeepBanner then
- if Menu.Logo ~= nil then
- SubMenu.Logo = Menu.Logo
- else
- SubMenu.Logo = nil
- SubMenu.Banner = Menu.Banner
- end
- end
- self:Add(SubMenu)
- Menu:BindMenuToItem(SubMenu, Item)
- return SubMenu
- end
-end
-
-function MenuPool:Add(Menu)
- if Menu() == "UIMenu" then
- table.insert(self.Menus, Menu)
- end
-end
-
-function MenuPool:Clear()
- self = {
- Menus = {}
- }
-end
-
-function MenuPool:Remove()
- self = nil
-end
-
-function MenuPool:MouseEdgeEnabled(bool)
- if bool ~= nil then
- for _, Menu in pairs(self.Menus) do
- Menu.Settings.MouseEdgeEnabled = tobool(bool)
- end
- end
-end
-
-function MenuPool:ControlDisablingEnabled(bool)
- if bool ~= nil then
- for _, Menu in pairs(self.Menus) do
- Menu.Settings.ControlDisablingEnabled = tobool(bool)
- end
- end
-end
-
-function MenuPool:ResetCursorOnOpen(bool)
- if bool ~= nil then
- for _, Menu in pairs(self.Menus) do
- Menu.Settings.ResetCursorOnOpen = tobool(bool)
- end
- end
-end
-
-function MenuPool:MultilineFormats(bool)
- if bool ~= nil then
- for _, Menu in pairs(self.Menus) do
- Menu.Settings.MultilineFormats = tobool(bool)
- end
- end
-end
-
-function MenuPool:Audio(Attribute, Setting)
- if Attribute ~= nil and Setting ~= nil then
- for _, Menu in pairs(self.Menus) do
- if Menu.Settings.Audio[Attribute] then
- Menu.Settings.Audio[Attribute] = Setting
- end
- end
- end
-end
-
-function MenuPool:WidthOffset(offset)
- if tonumber(offset) then
- for _, Menu in pairs(self.Menus) do
- Menu:SetMenuWidthOffset(tonumber(offset))
- end
- end
-end
-
-function MenuPool:CounterPreText(str)
- if str ~= nil then
- for _, Menu in pairs(self.Menus) do
- Menu.PageCounter.PreText = tostring(str)
- end
- end
-end
-
-function MenuPool:DisableInstructionalButtons(bool)
- if bool ~= nil then
- for _, Menu in pairs(self.Menus) do
- Menu.Settings.InstructionalButtons = tobool(bool)
- end
- end
-end
-
-function MenuPool:MouseControlsEnabled(bool)
- if bool ~= nil then
- for _, Menu in pairs(self.Menus) do
- Menu.Settings.MouseControlsEnabled = tobool(bool)
- end
- end
-end
-
-function MenuPool:RefreshIndex()
- for _, Menu in pairs(self.Menus) do
- Menu:RefreshIndex()
- end
-end
-
-function MenuPool:ProcessMenus()
- self:ProcessControl()
- self:ProcessMouse()
- self:Draw()
-end
-
-function MenuPool:ProcessControl()
- for _, Menu in pairs(self.Menus) do
- if Menu:Visible() then
- Menu:ProcessControl()
- end
- end
-end
-
-function MenuPool:ProcessMouse()
- for _, Menu in pairs(self.Menus) do
- if Menu:Visible() then
- Menu:ProcessMouse()
- end
- end
-end
-
-function MenuPool:Draw()
- for _, Menu in pairs(self.Menus) do
- if Menu:Visible() then
- Menu:Draw()
- end
- end
-end
-
-function MenuPool:IsAnyMenuOpen()
- local open = false
- for _, Menu in pairs(self.Menus) do
- if Menu:Visible() then
- open = true
- break
- end
- end
- return open
-end
-
-function MenuPool:CloseAllMenus()
- for _, Menu in pairs(self.Menus) do
- if Menu:Visible() then
- Menu:Visible(false)
- Menu.OnMenuClosed(Menu)
- end
- end
-end
-
-function MenuPool:SetBannerSprite(Sprite)
- if Sprite() == "Sprite" then
- for _, Menu in pairs(self.Menus) do
- Menu:SetBannerSprite(Sprite)
- end
- end
-end
-
-function MenuPool:SetBannerRectangle(Rectangle)
- if Rectangle() == "Rectangle" then
- for _, Menu in pairs(self.Menus) do
- Menu:SetBannerRectangle(Rectangle)
- end
- end
-end
-
-function MenuPool:TotalItemsPerPage(Value)
- if tonumber(Value) then
- for _, Menu in pairs(self.Menus) do
- Menu.Pagination.Total = Value - 1
- end
- end
-end
-
---[[
- Wrappers
---]]
-
-function NativeUI.CreatePool()
- return MenuPool.New()
-end
-
-function NativeUI.CreateMenu(Title, Subtitle, X, Y, TxtDictionary, TxtName)
- return UIMenu.New(Title, Subtitle, X, Y, TxtDictionary, TxtName)
-end
-
-function NativeUI.CreateItem(Text, Description)
- return UIMenuItem.New(Text, Description)
-end
-
-function NativeUI.CreateColouredItem(Text, Description, MainColour, HighlightColour)
- return UIMenuColouredItem.New(Text, Description, MainColour, HighlightColour)
-end
-
-function NativeUI.CreateCheckboxItem(Text, Check, Description)
- return UIMenuCheckboxItem.New(Text, Check, Description)
-end
-
-function NativeUI.CreateListItem(Text, Items, Index, Description)
- return UIMenuListItem.New(Text, Items, Index, Description)
-end
-
-function NativeUI.CreateSliderItem(Text, Items, Index, Description, Divider)
- return UIMenuSliderItem.New(Text, Items, Index, Description, Divider)
-end
-
-function NativeUI.CreateProgressItem(Text, Items, Index, Description, Counter)
- return UIMenuProgressItem.New(Text, Items, Index, Description, Counter)
-end
-
-function NativeUI.CreateHeritageWindow(Mum, Dad)
- return UIMenuHeritageWindow.New(Mum, Dad)
-end
-
-function NativeUI.CreateGridPanel(TopText, LeftText, RightText, BottomText)
- return UIMenuGridPanel.New(TopText, LeftText, RightText, BottomText)
-end
-
-function NativeUI.CreateColourPanel(Title, Colours)
- return UIMenuColourPanel.New(Title, Colours)
-end
-
-function NativeUI.CreatePercentagePanel(MinText, MaxText)
- return UIMenuPercentagePanel.New(MinText, MaxText)
-end
-
-function NativeUI.CreateSprite(TxtDictionary, TxtName, X, Y, Width, Height, Heading, R, G, B, A)
- return Sprite.New(TxtDictionary, TxtName, X, Y, Width, Height, Heading, R, G, B, A)
-end
-
-function NativeUI.CreateRectangle(X, Y, Width, Height, R, G, B, A)
- return UIResRectangle.New(X, Y, Width, Height, R, G, B, A)
-end
-
-function NativeUI.CreateText(Text, X, Y, Scale, R, G, B, A, Font, Alignment, DropShadow, Outline, WordWrap)
- return UIResText.New(Text, X, Y, Scale, R, G, B, A, Font, Alignment, DropShadow, Outline, WordWrap)
-end
diff --git a/resources/dpemotes-master/README.md b/resources/dpemotes-master/README.md
deleted file mode 100644
index 75a08d9ed..000000000
--- a/resources/dpemotes-master/README.md
+++ /dev/null
@@ -1,215 +0,0 @@
-# DpEmotes 🏋️
-
-Emotes / Animations for FiveM with human, animal and prop support 🐩
-
-# Available in:
-
-* Brazilian Portuguese 🇧🇷
-
-* Czech 🇨🇿
-
-* Danish 🇩🇰
-
-* Dutch 🇳🇱
-
-* English 🇬🇧
-
-* Finnish 🇫🇮
-
-* French 🇫🇷
-
-* German 🇩🇪
-
-* Italian 🇮🇹
-
-* Spanish 🇪🇸
-
-* Swedish 🇸🇪
-
-All languages were either translated using Google Translate or contributed by you, the community.
-
-If you happen to find any incorrect translations or would like to add more languages, please feel free to provide an "issue" with the correct / additional translations.
-
-Languages can be selected and/or added in config.lua.
-
------------------------------------------------------------------------------------------------------------------------------------------------------------------------
-
-# Ragdoll 🥴
-
-* To enable ragdoll, change `RagdollEnabled = false,` to true in config.lua.
-
-* To change which key is responsible for ragdoll, `RagdollKeybind = 303` is currently set to `U` by default., -- Get the button number [here](https://docs.fivem.net/game-references/controls/)
-
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
-
-# Menu Keybind 🎛️
-
-**Important Note:**
-
-The keybind uses RegisterKeyMapping. By default, the server owner configured keybind in the *initial* config.lua will be the default key, however once the keybind is set for a user, it'll stay with this new value. Editing the config keybind will change it for new players only.
-
-* Menu key:* F5
-
-F3 and F4 clash with [Menyoo](https://github.com/MAFINS/MenyooSP) and controllers 🎮
-
-Server owners can change this in the `config.lua`;
-
-```lua
-MenuKeybind = 'F5', -- Get the button string here https://docs.fivem.net/docs/game-references/input-mapper-parameter-ids/keyboard/
-```
-
-Alternatively, the player base can set their own menu keybind to open DpEmotes
-
-```lua
-Esc > settings > keybinds > fivem > dpemotes
-```
-
------------------------------------------------------------------------------------------------------------------------------------------------------------------------
-
-# Keybinds and SQL 🎛️
-
-The original dpemotes uses mysql-async which was then changed to ghmattimysql. Unfortunately, they are no longer maintained.
-
-To use the SQL features, install the [oxmysql](https://github.com/overextended/oxmysql) resource. If you do not want to use the SQL features, comment out the `oxmysql` region in fxmanifest.lua.
-
-
------------------------------------------------------------------------------------------------------------------------------------------------------------------------
-
-# Screenshots 📸
-
-
-
-| | | |
-|-|-|-|
-|
|
|
|
-|
|
|
|
-|
|
|
|
-|
|
|
-|
|
-
-
-
------------------------------------------------------------------------------------------------------------------------------------------------------
-
-
-# Installation Instructions ⚙️:
-
-* add DpEmotes to your `server.cfg`
-
-* [Enforce gamebuild to latest build](https://forum.cfx.re/t/tutorial-forcing-gamebuild-to-casino-cayo-perico-or-tuners-update/4784977) for all emotes and props to work correctly
-
-* start dpemotes
-
-
------------------------------------------------------------------------------------------------------------------------------------------------------------------------
-
-# Shared emotes 👩🏻❤️💋👨🏼
-
-Emotes will work with either `SyncOffsetFront` or `Attachto`.
-
-- If it is with `SyncOffsetFront`, then the offset used is the one of the emote the player started.
-For example, if player one starts the emote `handshake`, then player one will have the SyncOffsetFront but not the other player.
-
-
-- If it is with `Attachto`, then it'll either be player one's data used for attaching, or the player two's data.
-For example, if player one start the emote carry, then the other player will be attached but not the player one because Attachto is set in `carry2` and not `carry`.
-- If player one starts the emote `carry2`, then player one will be attached and not the other player.
-it's the player who start the animation who will in most cases be moved
-
-
-*Special case, if both emote have the `Attachto` then only the player who started the emote will be attached.*
-
-You can find a list of ped bones to attach the other player here: [Ped Bones](https://wiki.rage.mp/index.php?title=Bones)
-
-Using the website provided above, enter the bone ID, ie `1356` and not 111, which is the Bone Index.
-
-
-
-
------------------------------------------------------------------------------------------------------------------------------------------------------------------------
-
-
-# Add-Ons 🛠️
-
-* Fixed an issue with the clipboard and adds textures to paper (/e clipboard)
-
-* Changes umbrella texture to black (/e umbrella)
-
-# Optional Add-Ons 🛠️
-
-* Adds textures to the mugshot prop (/e mugshot)
-
-* Retextured protest sign (can be changed using Texture Toolkit: https://www.gta5-mods.com/tools/texture-toolkit)
-
-**Grab it here:**
-
-[Add-Ons For DpEmotes](https://github.com/TayMcKenzieNZ/addonsfordpemotes)
-
-
---------------------------------------------------------
-
-
-# Additional Instructions ⚙️
-
-[Please check the fivem forum thread](https://forum.fivem.net/t/dpemotes-356ish-emotes-usable-while-walking-props-and-more/843105)
-
-
-
-----------------------
-
-# Police Badge 👮
-
-- Custom LSPD police badge by [LSPDFR member Sam](https://www.lcpdfr.com/downloads/gta5mods/misc/23386-lspd-police-badge/)
-
-- LSPD reskinned badge by [GTA5Mods user Sladus_Slawonkus](https://www.gta5-mods.com/misc/lspd-police-badge-replace-sladus_slawonkus)
-
-
-----------------------
-
-# FAQs 🗨️
-
-**Q: Why do some emotes not work with females?**
-
-**A:** Blame Rockstar Games. I've done my best to replicate animations to work with females, however some male scenarios have sound effects and particles, of which I am unfamiliar with and syncing particles is out of my expertise.
-
-----------------------
-
-**Q: Why do some emotes not work at all?**
-
-**A:** Check the Installation Instructions above as you need to be on the highest FiveM gamebuild.
-
-----------------------
-
-**Q: Why do I see particle effects but other players don't?**
-
-**A:** Dullpear and I can't figure out how to sync particles. If you know how, feel free to inform me.
-
-----------------------
-
-**Q: I bought this script off someone and notice it had a lot of the same animations. Can you help me?**
-
-**A:** You got scammed and that's your fault. Dpemotes is and always will be **FREE**.
-
-----------------------
-
-**Q: Can I add my own emotes to this?**
-
-**A:** Of course, see my in depth [tutorial](https://forum.cfx.re/t/how-to-menyoo-to-dpemotes-conversion/4775018) for using Menyoo and converting them to work with dpemotes.
-
-You may sell ***custom made*** animations, however the menu must remain free.
-
-----------------------
-
-**Q: I bought a pack of custom animations, how can I add them to your fork of dpemotes?**
-
-**A:** Usually the person who created them will provide code snippets for adding animations to dpemotes. If for whatever reason they haven't, you should contact them.
-
-----------------------
-
-**Q: How do I reset the SQL keybinds?**
-
-**A:** No idea, but apparently only the server owner can 🤷🏻♂️ Google exist; Maybe contact the creator.
-
-----------------------
-
-
diff --git a/resources/dpemotes-master/client/AnimationList.lua b/resources/dpemotes-master/client/AnimationList.lua
deleted file mode 100644
index e6ab0db46..000000000
--- a/resources/dpemotes-master/client/AnimationList.lua
+++ /dev/null
@@ -1,4016 +0,0 @@
--- DPEmotes forked by TayMcKenzieNZ requires you to be on the latest FiveM Gamebuild for all emotes to function.
--- If an emote does not work, you may be on an older gamebuild.
--- To get a higher gamebuild, see ReadMe on github repositorty
-DP = {}
-
--- EXPRESSIONS --
-
-DP.Expressions = {
- ["Angry"] = { "Expression", "mood_angry_1" },
- ["Drunk"] = { "Expression", "mood_drunk_1" },
- ["Dumb"] = { "Expression", "pose_injured_1" },
- ["Electrocuted"] = { "Expression", "electrocuted_1" },
- ["Grumpy"] = { "Expression", "effort_1" },
- ["Grumpy2"] = { "Expression", "mood_drivefast_1" },
- ["Grumpy3"] = { "Expression", "pose_angry_1" },
- ["Happy"] = { "Expression", "mood_happy_1" },
- ["Injured"] = { "Expression", "mood_injured_1" },
- ["Joyful"] = { "Expression", "mood_dancing_low_1" },
- ["Mouthbreather"] = { "Expression", "smoking_hold_1" },
- ["Never Blink"] = { "Expression", "pose_normal_1" },
- ["One Eye"] = { "Expression", "pose_aiming_1" },
- ["Shocked"] = { "Expression", "shocked_1" },
- ["Shocked2"] = { "Expression", "shocked_2" },
- ["Sleeping"] = { "Expression", "mood_sleeping_1" },
- ["Sleeping2"] = { "Expression", "dead_1" },
- ["Sleeping3"] = { "Expression", "dead_2" },
- ["Smug"] = { "Expression", "mood_smug_1" },
- ["Speculative"] = { "Expression", "mood_aiming_1" },
- ["Stressed"] = { "Expression", "mood_stressed_1" },
- ["Sulking"] = { "Expression", "mood_sulk_1" },
- ["Weird"] = { "Expression", "effort_2" },
- ["Weird2"] = { "Expression", "effort_3" },
-}
-
-
---- WALKSTYLES ---
-
-
-DP.Walks = {
- ["Alien"] = { "move_m@alien" },
- ["Armored"] = { "anim_group_move_ballistic" },
- ["Arrogant"] = { "move_f@arrogant@a" },
- ["Brave"] = { "move_m@brave" },
- ["Casual"] = { "move_m@casual@a" },
- ["Casual 2"] = { "move_m@casual@b" },
- ["Casual 3"] = { "move_m@casual@c" },
- ["Casual 4"] = { "move_m@casual@d" },
- ["Casual 5"] = { "move_m@casual@e" },
- ["Casual 6"] = { "move_m@casual@f" },
- ["Chichi"] = { "move_f@chichi" },
- ["Confident"] = { "move_m@confident" },
- ["Cop"] = { "move_m@business@a" },
- ["Cop 2"] = { "move_m@business@b" },
- ["Cop 3"] = { "move_m@business@c" },
- ["Default Female"] = { "move_f@multiplayer" },
- ["Default Male"] = { "move_m@multiplayer" },
- ["Drunk"] = { "move_m@drunk@a" },
- ["Drunk"] = { "move_m@drunk@slightlydrunk" },
- ["Drunk 2"] = { "move_m@buzzed" },
- ["Drunk 3"] = { "move_m@drunk@verydrunk" },
- ["Femme"] = { "move_f@femme@" },
- ["Fire"] = { "move_characters@franklin@fire" },
- ["Fire2"] = { "move_characters@michael@fire" },
- ["Fire3"] = { "move_m@fire" },
- ["Flee"] = { "move_f@flee@a" },
- ["Franklin"] = { "move_p_m_one" },
- ["Gangster"] = { "move_m@gangster@generic" },
- ["Gangster 2"] = { "move_m@gangster@ng" },
- ["Gangster 3"] = { "move_m@gangster@var_e" },
- ["Gangster 4"] = { "move_m@gangster@var_f" },
- ["Gangster 5"] = { "move_m@gangster@var_i" },
- ["Grooving"] = { "anim@move_m@grooving@" },
- ["Guard"] = { "move_m@prison_gaurd" },
- ["Handcuffs"] = { "move_m@prisoner_cuffed" },
- ["Heels"] = { "move_f@heels@c" },
- ["Heels 2"] = { "move_f@heels@d" },
- ["Hiking"] = { "move_m@hiking" },
- ["Hipster"] = { "move_m@hipster@a" },
- ["Hobo"] = { "move_m@hobo@a" },
- ["Hurry"] = { "move_f@hurry@a" },
- ["Janitor"] = { "move_p_m_zero_janitor" },
- ["Janitor 2"] = { "move_p_m_zero_slow" },
- ["Jog"] = { "move_m@jog@" },
- ["Lemar"] = { "anim_group_move_lemar_alley" },
- ["Lester"] = { "move_heist_lester" },
- ["Lester 2"] = { "move_lester_caneup" },
- ["Maneater"] = { "move_f@maneater" },
- ["Michael"] = { "move_ped_bucket" },
- ["Money"] = { "move_m@money" },
- ["Muscle"] = { "move_m@muscle@a" },
- ["Posh"] = { "move_m@posh@" },
- ["Posh 2"] = { "move_f@posh@" },
- ["Quick"] = { "move_m@quick" },
- ["Runner"] = { "female_fast_runner" },
- ["Sad"] = { "move_m@sad@a" },
- ["Sassy"] = { "move_m@sassy" },
- ["Sassy 2"] = { "move_f@sassy" },
- ["Scared"] = { "move_f@scared" },
- ["Sexy"] = { "move_f@sexy@a" },
- ["Shady"] = { "move_m@shadyped@a" },
- ["Slow"] = { "move_characters@jimmy@slow@" },
- ["Swagger"] = { "move_m@swagger" },
- ["Tough"] = { "move_m@tough_guy@" },
- ["Tough 2"] = { "move_f@tough_guy@" },
- ["Trash"] = { "clipset@move@trash_fast_turn" },
- ["Trash 2"] = { "missfbi4prepp1_garbageman" },
- ["Trevor"] = { "move_p_m_two" },
- ["Wide"] = { "move_m@bag" },
- ["Chubby Male"] = { "move_chubby" }, --male
- ["Chubby Female"] = { "move_f@chubby@a" }, --female
- ["Depressed"] = { "move_m@depressed@a" },
- ["Depressed 2"] = { "move_m@depressed@b" },
-
-
-
-
- -- I cant get these to work for some reason, if anyone knows a fix, let me know
-
-
-
-
- -- ["Caution"] = {"move_m@caution"}, -- breaks menu
- --["Chubby"] = {"anim@move_m@chubby@a"},-- breaks menu
- -- ["Crazy"] = {"move_m@crazy"},-- breaks menu
- -- ["Joy"] = {"move_m@joy@a"},-- breaks menu
- -- ["Power"] = {"move_m@power"},-- breaks menu
- -- ["Wading"] = {"move_m@wading"} -- breaks menu
- -- ["Depressed 3"] = { "move_m@depressed@c" }, -- breaks menu
- -- ["Depressed 4"] = { "move_m@depressed@d" }, -- breaks menu
- -- ["Caution"] = { "move_m@caution" },-- breaks menu
- -- ["Crazy"] = { "move_m@crazy" }, -- breaks menu
- -- ["Joy"] = { "move_m@joy@a" }, -- breaks menu
- -- ["Power"] = { "move_m@power" }, -- breaks menu
- -- ["Power Walk"] = { "move_m@powerwalk" }, -- breaks menu
- -- ["Tired"] = { "move_m@tired" }, -- breaks menu
- -- --["Wading"] = {"move_m@wading"},-- breaks menu
-}
-
-
---- SHARED EMOTES --- I can not figue these out and would love to get custom emotes shared. DullPear doesn't answer his DMs. RIP.
-
-DP.Shared = {
- --[emotename] = {dictionary, animation, displayname, targetemotename, additionalanimationoptions}
- -- you dont have to specify targetemoteanem, if you do dont it will just play the same animation on both.
- -- targetemote is used for animations that have a corresponding animation to the other player.
- ["handshake"] = { "mp_ped_interaction", "handshake_guy_a", "Handshake", "Handshake2", AnimationOptions = {
- EmoteMoving = true,
- EmoteDuration = 3000,
- SyncOffsetFront = 0.9
- }},
- ["handshake2"] = { "mp_ped_interaction", "handshake_guy_b", "Handshake 2", "handshake", AnimationOptions = {
- EmoteMoving = true,
- EmoteDuration = 3000
- }},
- ["hug"] = { "mp_ped_interaction", "kisses_guy_a", "Hug", "hug2", AnimationOptions = {
- EmoteMoving = false,
- EmoteDuration = 5000,
- SyncOffsetFront = 1.05,
- }},
- ["hug2"] = { "mp_ped_interaction", "kisses_guy_b", "Hug 2", "hug", AnimationOptions = {
- EmoteMoving = false,
- EmoteDuration = 5000,
- SyncOffsetFront = 1.13
- }},
- ["hug3"] = { "misscarsteal2chad_goodbye", "chad_armsaround_chad", "Hug 3", "hug4", AnimationOptions = {
- EmoteMoving = false,
- EmoteLoop = true,
- SyncOffsetFront = 0.05,
- }},
- ["hug4"] = { "misscarsteal2chad_goodbye", "chad_armsaround_girl", "Hug 4", "hug3", AnimationOptions = {
- EmoteMoving = false,
- EmoteLoop = true,
- SyncOffsetFront = 0.13
- }},
- ["kiss"] = { "mp_ped_interaction", "kisses_guy_a", "Kiss", "kiss2", AnimationOptions = {
- EmoteMoving = false,
- EmoteDuration = 5000,
- SyncOffsetFront = 1.05,
- }},
- ["kiss2"] = { "mp_ped_interaction", "kisses_guy_b", "Kiss 2", "kiss", AnimationOptions = {
- EmoteMoving = false,
- EmoteDuration = 5000,
- SyncOffsetFront = 1.13
- }},
- ["bro"] = { "mp_ped_interaction", "hugs_guy_a", "Bro", "bro2", AnimationOptions = {
- SyncOffsetFront = 1.14
- }},
- ["bro2"] = { "mp_ped_interaction", "hugs_guy_b", "Bro 2", "bro", AnimationOptions = {
- SyncOffsetFront = 1.14
- }},
- ["give"] = { "mp_common", "givetake1_a", "Give", "give2", AnimationOptions = {
- EmoteMoving = true,
- EmoteDuration = 2000
- }},
- ["give2"] = { "mp_common", "givetake1_b", "Give 2", "give", AnimationOptions = {
- EmoteMoving = true,
- EmoteDuration = 2000
- }},
- ["baseball"] = { "anim@arena@celeb@flat@paired@no_props@", "baseball_a_player_a", "Baseball", "baseballthrow" },
- ["baseballthrow"] = { "anim@arena@celeb@flat@paired@no_props@", "baseball_a_player_b", "Baseball Throw", "baseball" },
- ["stickup"] = { "random@countryside_gang_fight", "biker_02_stickup_loop", "Stick Up", "stickupscared", AnimationOptions = {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["stickupscared"] = { "missminuteman_1ig_2", "handsup_base", "Stickup Scared", "stickup", AnimationOptions = {
- EmoteMoving = true,
- EmoteLoop = true,
- }},
- ["punch"] = { "melee@unarmed@streamed_variations", "plyr_takedown_rear_lefthook", "Punch", "punched" },
- ["punched"] = { "melee@unarmed@streamed_variations", "victim_takedown_front_cross_r", "Punched", "punch" },
- ["headbutt"] = { "melee@unarmed@streamed_variations", "plyr_takedown_front_headbutt", "Headbutt", "headbutted" },
- ["headbutted"] = { "melee@unarmed@streamed_variations", "victim_takedown_front_headbutt", "Headbutted", "headbutt" },
- ["slap2"] = { "melee@unarmed@streamed_variations", "plyr_takedown_front_backslap", "Slap 2", "slapped2", AnimationOptions = {
- EmoteLoop = true,
- EmoteMoving = true,
- EmoteDuration = 2000,
- }},
- ["slap"] = { "melee@unarmed@streamed_variations", "plyr_takedown_front_slap", "Slap", "slapped", AnimationOptions = {
- EmoteLoop = true,
- EmoteMoving = true,
- EmoteDuration = 2000,
- }},
- ["slapped"] = { "melee@unarmed@streamed_variations", "victim_takedown_front_slap", "Slapped", "slap" },
- ["slapped2"] = { "melee@unarmed@streamed_variations", "victim_takedown_front_backslap", "Slapped 2", "slap2" },
- ["receiveblowjob"] = { "misscarsteal2pimpsex", "pimpsex_punter", "Receive Blowjob", "giveblowjob", AnimationOptions = {
- EmoteMoving = false,
- EmoteDuration = 30000,
- SyncOffsetFront = 0.63
- }},
- ["giveblowjob"] = { "misscarsteal2pimpsex", "pimpsex_hooker", "Give Blowjob", "receiveblowjob", AnimationOptions = {
- EmoteMoving = false,
- EmoteDuration = 30000,
- SyncOffsetFront = 0.63
- }},
- ["streetsexmale"] = { "misscarsteal2pimpsex", "shagloop_pimp", "Street Sex Male", "streetsexfemale", AnimationOptions = {
- EmoteMoving = false,
- EmoteLoop = true,
- SyncOffsetFront = 0.50
- }},
- ["streetsexfemale"] = { "misscarsteal2pimpsex", "shagloop_hooker", "Street Sex Female", "streetsexmale", AnimationOptions = {
- EmoteMoving = false,
- EmoteLoop = true,
- SyncOffsetFront = 0.50
- }},
- ["carry"] = { "missfinale_c2mcs_1", "fin_c2_mcs_1_camman", "Carry", "carry2", AnimationOptions = {
- EmoteMoving = true,
- EmoteLoop = true,
- } },
- ["carry2"] = { "nm", "firemans_carry", "Be carried", "carry", AnimationOptions = {
- EmoteMoving = false,
- EmoteLoop = true,
- Attachto = true,
- bone = 0,
- xPos = 0.27,
- yPos = 0.10,
- zPos = 0.60,
- xRot = 0.0,
- yRot = 0.0,
- zRot = 10.0,
- } },
-}
-
-
---- DANCING EMOTES, SOME WITH PROPS ---
-
-
-DP.Dances = {
- ["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@casino@mini@dance@dance_solo@female@var_a@", "med_center", "Dance 5", 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,
- }},
- ["dance9"] = { "anim@amb@nightclub@mini@dance@dance_solo@female@var_a@", "med_center_up", "Dance 9", AnimationOptions = {
- 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,
- }},
- ["danceclub"] = { "anim@amb@nightclub_island@dancers@beachdance@", "hi_idle_a_m03", "Dance Club", AnimationOptions = {
- EmoteLoop = true
- }},
- ["danceclubb"] = { "anim@amb@nightclub_island@dancers@beachdance@", "hi_idle_a_m05", "Dance Club 2", AnimationOptions = {
- EmoteLoop = true
- }},
- ["danceclubc"] = { "anim@amb@nightclub_island@dancers@beachdance@", "hi_idle_a_m02", "Dance Club 3", AnimationOptions = {
- EmoteLoop = true
- }},
- ["danceclubd"] = { "anim@amb@nightclub_island@dancers@beachdance@", "hi_idle_b_f01", "Dance Club 4", AnimationOptions = {
- EmoteLoop = true
- }},
- ["danceclube"] = { "anim@amb@nightclub_island@dancers@club@", "hi_idle_a_f02", "Dance Club 5", AnimationOptions = {
- EmoteLoop = true
- }},
- ["danceclubf"] = { "anim@amb@nightclub_island@dancers@club@", "hi_idle_b_m03", "Dance Club 6", AnimationOptions = {
- EmoteLoop = true
- }},
- ["danceclubg"] = { "anim@amb@nightclub_island@dancers@club@", "hi_idle_d_f01", "Dance Club 7", AnimationOptions = {
- EmoteLoop = true
- }},
- ["danceclubh"] = { "anim@amb@nightclub_island@dancers@crowddance_facedj@", "mi_dance_facedj_17_v2_male^4", "Dance Club 8 ", AnimationOptions = {
- EmoteLoop = true,
- }},
- ["danceclubi"] = { "anim@amb@nightclub_island@dancers@crowddance_single_props@", "mi_dance_prop_13_v1_male^3", "Dance Club 9 ", AnimationOptions = {
- EmoteLoop = true,
- }},
- ["danceclubj"] = { "anim@amb@nightclub_island@dancers@crowddance_groups@groupd@", "mi_dance_crowd_13_v2_male^1", "Dance Club 10 ", AnimationOptions = {
- EmoteLoop = true,
- }},
- ["danceclubk"] = { "anim@amb@nightclub_island@dancers@crowddance_facedj@", "mi_dance_facedj_15_v2_male^4", "Dance Club 11 ", AnimationOptions = {
- EmoteLoop = true,
- }},
- ["danceclubl"] = { "anim@amb@nightclub@mini@dance@dance_solo@female@var_a@", "high_center_up", "Dance Club 12", AnimationOptions = {
- EmoteLoop = true,
- }},
- ["danceclubm"] = { "anim@amb@nightclub_island@dancers@crowddance_facedj@", "hi_dance_facedj_hu_15_v2_male^5", "Dance Club 13 ", AnimationOptions = {
- EmoteLoop = true,
- }},
- ["danceclubn"] = { "anim@amb@nightclub_island@dancers@crowddance_facedj@", "hi_dance_facedj_hu_17_male^5", "Dance Club 14 ", AnimationOptions = {
- EmoteLoop = true,
- }},
- ["danceclubo"] = { "anim@amb@nightclub@mini@dance@dance_solo@shuffle@", "high_center", "Dance Club 15 ", AnimationOptions = {
- EmoteLoop = true,
- }},
- ["danceclubp"] = { "anim@amb@nightclub@mini@dance@dance_solo@shuffle@", "high_left_down", "Dance Club 16 ", AnimationOptions = {
- EmoteLoop = true,
- }},
- ["dancedrink"] = { "anim@amb@nightclub_island@dancers@beachdanceprop@", "mi_idle_c_m01", "Dance Drink (Beer)", AnimationOptions = {
- Prop = 'prop_beer_amopen',
- PropBone = 28422,
- PropPlacement = { 0.0, 0.00, 0.0, 0.0, 0.0, 20.00 },
- EmoteLoop = true,
- EmoteMoving = false,
- }},
- ["dancedrink2"] = { "anim@amb@nightclub_island@dancers@beachdanceprop@", "mi_loop_f1", "Dance Drink 2 (Wine)", AnimationOptions = {
- Prop = 'p_wine_glass_s',
- PropBone = 28422,
- PropPlacement = { 0.0, 0.0, -0.0900, 0.0, 0.0, 0.00 },
- EmoteLoop = true,
- EmoteMoving = false,
- }},
- ["dancedrink3"] = { "anim@amb@nightclub_island@dancers@beachdanceprop@", "mi_loop_m04", "Dance Drink 3 (Whiskey)", AnimationOptions = {
- Prop = 'ba_prop_battle_whiskey_opaque_s',
- PropBone = 28422,
- PropPlacement = { -0.0100, 0.00, 0.0, 0.0, 0.0, 10.00 },
- EmoteLoop = true,
- EmoteMoving = false,
- }},
- ["dancedrink4"] = { "anim@amb@nightclub_island@dancers@beachdanceprops@male@", "mi_idle_b_m04", "Dance Drink 4 (Whiskey)", AnimationOptions = {
- Prop = 'ba_prop_battle_whiskey_opaque_s',
- PropBone = 28422,
- PropPlacement = { -0.0100, 0.00, 0.0, 0.0, 0.0, 10.00 },
- EmoteLoop = true,
- EmoteMoving = false,
- }},
- ["dancedrink5"] = { "anim@amb@nightclub_island@dancers@crowddance_single_props@", "hi_dance_prop_09_v1_female^3", "Dance Drink 5 (Wine)", AnimationOptions = {
- Prop = 'p_wine_glass_s',
- PropBone = 28422,
- PropPlacement = { 0.0, 0.0, -0.0900, 0.0, 0.0, 0.00 },
- EmoteLoop = true,
- EmoteMoving = false,
- }},
- ["dancedrink6"] = { "anim@amb@nightclub_island@dancers@crowddance_single_props@", "hi_dance_prop_09_v1_male^3", "Dance Drink 6 (Beer)", AnimationOptions = {
- Prop = 'prop_beer_logopen',
- PropBone = 28422,
- PropPlacement = { 0.0090, 0.0010, -0.0310, 180.0, 180.0, -69.99 },
- EmoteLoop = true,
- EmoteMoving = false,
- }},
- ["dancedrink7"] = { "anim@amb@nightclub_island@dancers@crowddance_single_props@", "hi_dance_prop_11_v1_female^3", "Dance Drink 7 (Wine)", AnimationOptions = {
- Prop = 'p_wine_glass_s',
- PropBone = 28422,
- PropPlacement = { 0.0, 0.0, -0.0900, 0.0, 0.0, 0.00 },
- EmoteLoop = true,
- EmoteMoving = false,
- }},
- ["dancedrink8"] = { "anim@amb@nightclub_island@dancers@crowddance_single_props@", "hi_dance_prop_11_v1_female^1", "Dance Drink 8 (Wine)", AnimationOptions = {
- Prop = 'p_wine_glass_s',
- PropBone = 28422,
- PropPlacement = { 0.0, 0.0, -0.0900, 0.0, 0.0, 0.00 },
- EmoteLoop = true,
- EmoteMoving = false,
- }},
- ["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,
- }},
- ["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,
- }},
- ["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,
- }},
- ["dancesilly7"] = { "anim@amb@casino@mini@dance@dance_solo@female@var_b@", "med_center", "Dance Silly 7", AnimationOptions = {
- EmoteLoop = true
- }},
- ["dancesilly8"] = { "anim@amb@casino@mini@dance@dance_solo@female@var_b@", "high_center", "Dance Silly 8", AnimationOptions = {
- EmoteLoop = true
- }},
- ["dancesilly9"] = { "anim@mp_player_intcelebrationfemale@the_woogie", "the_woogie", "Dance Silly 9", AnimationOptions = {
- EmoteLoop = true
- }},
- ["danceglowstick"] = { "anim@amb@nightclub@lazlow@hi_railing@", "ambclub_13_mi_hi_sexualgriding_laz", "Dance Glowsticks", AnimationOptions = {
- Prop = 'ba_prop_battle_glowstick_01',
- PropBone = 28422,
- PropPlacement = { 0.0700, 0.1400, 0.0, -80.0, 20.0 },
- SecondProp = 'ba_prop_battle_glowstick_01',
- SecondPropBone = 60309,
- SecondPropPlacement = { 0.0700, 0.0900, 0.0, -120.0, -20.0 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["danceglowstick2"] = { "anim@amb@nightclub@lazlow@hi_railing@", "ambclub_12_mi_hi_bootyshake_laz", "Dance Glowsticks 2", AnimationOptions = {
- Prop = 'ba_prop_battle_glowstick_01',
- PropBone = 28422,
- PropPlacement = { 0.0700, 0.1400, 0.0, -80.0, 20.0 },
- SecondProp = 'ba_prop_battle_glowstick_01',
- SecondPropBone = 60309,
- SecondPropPlacement = { 0.0700, 0.0900, 0.0, -120.0, -20.0 },
- EmoteLoop = true,
- }},
- ["danceglowstick3"] = { "anim@amb@nightclub@lazlow@hi_railing@", "ambclub_09_mi_hi_bellydancer_laz", "Dance Glowsticks 3", AnimationOptions = {
- Prop = 'ba_prop_battle_glowstick_01',
- PropBone = 28422,
- PropPlacement = { 0.0700, 0.1400, 0.0, -80.0, 20.0 },
- SecondProp = 'ba_prop_battle_glowstick_01',
- SecondPropBone = 60309,
- SecondPropPlacement = { 0.0700, 0.0900, 0.0, -120.0, -20.0 },
- EmoteLoop = true,
- }},
- ["dancehorse"] = { "anim@amb@nightclub@lazlow@hi_dancefloor@", "dancecrowd_li_15_handup_laz", "Dance Horse", AnimationOptions = {
- Prop = "ba_prop_battle_hobby_horse",
- PropBone = 28422,
- PropPlacement = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["dancehorse2"] = { "anim@amb@nightclub@lazlow@hi_dancefloor@", "crowddance_hi_11_handup_laz", "Dance Horse 2", AnimationOptions = {
- Prop = "ba_prop_battle_hobby_horse",
- PropBone = 28422,
- PropPlacement = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 },
- EmoteLoop = true,
- }},
- ["dancehorse3"] = { "anim@amb@nightclub@lazlow@hi_dancefloor@", "dancecrowd_li_11_hu_shimmy_laz", "Dance Horse 3", AnimationOptions = {
- Prop = "ba_prop_battle_hobby_horse",
- PropBone = 28422,
- PropPlacement = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 },
- EmoteLoop = true,
- }},
- ["dj"] = { "anim@amb@nightclub@djs@dixon@", "dixn_dance_cntr_open_dix", "DJ", AnimationOptions = {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["dj2"] = { "anim@amb@nightclub@djs@solomun@", "sol_idle_ctr_mid_a_sol", "DJ 2", AnimationOptions = {
- EmoteLoop = true,
- EmoteMoving = false,
- }},
- ["dj3"] = { "anim@amb@nightclub@djs@solomun@", "sol_dance_l_sol", "DJ 3", AnimationOptions = {
- EmoteLoop = true,
- EmoteMoving = false,
- }},
- ["dj4"] = { "anim@amb@nightclub@djs@black_madonna@", "dance_b_idle_a_blamadon", "DJ 4", AnimationOptions = {
- EmoteLoop = true,
- EmoteMoving = false,
- }},
- ["dj5"] = { "anim@amb@nightclub@djs@dixon@", "dixn_end_dix", "DJ 5", AnimationOptions = {
- EmoteLoop = true,
- EmoteMoving = false,
- }},
- ["dj5"] = { "anim@amb@nightclub@djs@dixon@", "dixn_idle_cntr_a_dix", "DJ 5", AnimationOptions = {
- EmoteLoop = true,
- EmoteMoving = false,
- }},
- ["dj6"] = { "anim@amb@nightclub@djs@dixon@", "dixn_idle_cntr_b_dix", "DJ 6", AnimationOptions = {
- EmoteLoop = true,
- EmoteMoving = false,
- }},
- ["dj7"] = { "anim@amb@nightclub@djs@dixon@", "dixn_idle_cntr_g_dix", "DJ 7", AnimationOptions = {
- EmoteLoop = true,
- EmoteMoving = false,
- }},
- ["dj8"] = { "anim@amb@nightclub@djs@dixon@", "dixn_idle_cntr_gb_dix", "DJ 8", AnimationOptions = {
- EmoteLoop = true,
- EmoteMoving = false,
- }},
- ["dj9"] = { "anim@amb@nightclub@djs@dixon@", "dixn_sync_cntr_j_dix", "DJ 9", AnimationOptions = {
- EmoteLoop = true,
- EmoteMoving = false,
- }},
- ["twerk"] = { "switch@trevor@mocks_lapdance", "001443_01_trvs_28_idle_stripper", "Twerk", AnimationOptions = {
- EmoteLoop = true,
- }},
- ["lapdance"] = { "mp_safehouse", "lap_dance_girl", "Lapdance" },
- ["lapdance2"] = { "mini@strip_club@private_dance@idle", "priv_dance_idle", "Lapdance 2", AnimationOptions = {
- EmoteLoop = true,
- }},
- ["lapdance3"] = { "mini@strip_club@private_dance@part1", "priv_dance_p1", "Lapdance 3", AnimationOptions = {
- EmoteLoop = true,
- }},
- ["lapdance4"] = { "mini@strip_club@private_dance@part2", "priv_dance_p2", "Lapdance 4", AnimationOptions = {
- EmoteLoop = true,
- }},
- ["lapdance5"] = { "mini@strip_club@private_dance@part3", "priv_dance_p3", "Lapdance 5", AnimationOptions = {
- EmoteLoop = true,
- }},
- ["lapdance6"] = { "oddjobs@assassinate@multi@yachttarget@lapdance", "yacht_ld_f", "Lapdance 6", AnimationOptions = {
- EmoteLoop = true,
- }},
- ["lapdancewith"] = { "mini@strip_club@lap_dance_2g@ld_2g_p3", "ld_2g_p3_s2", "Lapdance With", AnimationOptions = {
- EmoteLoop = true,
- }},
- ["lapdancewith2"] = { "mini@strip_club@lap_dance_2g@ld_2g_p2", "ld_2g_p2_s2", "Lapdance With2", AnimationOptions = {
- EmoteLoop = true,
- }},
- ["lapdancewith3"] = { "mini@strip_club@lap_dance_2g@ld_2g_p1", "ld_2g_p1_s2", "Lapdance With3", AnimationOptions = {
- EmoteLoop = true,
- }},
- ["lapchair"] = { "mini@strip_club@lap_dance@ld_girl_a_song_a_p1", "ld_girl_a_song_a_p1_f", "Lap Chair", AnimationOptions = {
- EmoteLoop = true,
- }},
- ["lapchair2"] = { "mini@strip_club@lap_dance@ld_girl_a_song_a_p2", "ld_girl_a_song_a_p2_f", "Lap Chair2", AnimationOptions = {
- EmoteLoop = true,
- }},
- ["lapchair3"] = { "mini@strip_club@lap_dance@ld_girl_a_song_a_p3", "ld_girl_a_song_a_p3_f", "Lap Chair3", AnimationOptions = {
- EmoteLoop = true,
- }},
- ["salsa"] = { "anim@mp_player_intuppersalsa_roll", "idle_a", "Salso Roll", AnimationOptions = {
- EmoteLoop = true,
- }},
- ["dancecrankdat"] = { "anim@amb@nightclub@mini@dance@dance_solo@shuffle@", "high_right_up", "Dance Crank Dat", AnimationOptions = {
- EmoteLoop = true,
- }},
- ["dancecrankdat2"] = { "anim@amb@nightclub@mini@dance@dance_solo@shuffle@", "high_right_down", "Dance Crank Dat 2", AnimationOptions = {
- EmoteLoop = true,
- }},
- ["dancemonkey"] = { "anim@amb@nightclub@mini@dance@dance_solo@techno_monkey@", "high_center", "Monkey Dance ", AnimationOptions = {
- EmoteLoop = true,
- }},
- ["dancemonkey2"] = { "anim@amb@nightclub@mini@dance@dance_solo@techno_monkey@", "high_center_down", "Monkey Dance 2 ", AnimationOptions = {
- EmoteLoop = true,
- }},
- ["dancemonkey3"] = { "anim@amb@nightclub@mini@dance@dance_solo@techno_monkey@", "med_center_down", "Monkey Dance 3 ", AnimationOptions = {
- EmoteLoop = true,
- }},
- ["boxdance"] = { "anim@amb@nightclub@mini@dance@dance_solo@beach_boxing@", "med_right_down", "Boxing Dance Solo ", AnimationOptions = {
- EmoteLoop = true,
- }},
- ["dancehiphop"] = { "anim@amb@nightclub@mini@dance@dance_paired@dance_d@", "ped_a_dance_idle", "Hip Hop Dance ", AnimationOptions = {
- EmoteLoop = true,
- }},
- ["dancehiphop2"] = { "anim@amb@nightclub@mini@dance@dance_paired@dance_b@", "ped_a_dance_idle", "Hip Hop Dance 2 ", AnimationOptions = {
- EmoteLoop = true,
- }},
- ["dancehiphop3"] = { "anim@amb@nightclub@mini@dance@dance_paired@dance_a@", "ped_a_dance_idle", "Hip Hop Dance 3 ", AnimationOptions = {
- EmoteLoop = true,
- }},
- ["dancepride"] = { "anim@amb@nightclub@lazlow@hi_railing@", "ambclub_09_mi_hi_bellydancer_laz", "Dance Pride A", AnimationOptions = {
- Prop = 'lilprideflag1', --- Rainbow
- PropBone = 18905,
- PropPlacement = { 0.0900, 0.0000, 0.0300, -39.911, 93.9166, -5.8062 },
- SecondProp = 'lilprideflag1',
- SecondPropBone = 57005,
- SecondPropPlacement = { 0.0900, -0.0200, -0.0300, -90.2454, 5.7068, -28.7797 },
- EmoteLoop = true,
- EmoteMoving = false,
- }},
- ["danceprideb"] = { "anim@amb@nightclub@lazlow@hi_railing@", "ambclub_09_mi_hi_bellydancer_laz", "Dance Pride B - LGBTQIA", AnimationOptions = {
- Prop = 'lilprideflag2', --- LGBTQIA
- PropBone = 18905,
- PropPlacement = { 0.0900, 0.0000, 0.0300, -39.911, 93.9166, -5.8062 },
- SecondProp = 'lilprideflag2',
- SecondPropBone = 57005,
- SecondPropPlacement = { 0.0900, -0.0200, -0.0300, -90.2454, 5.7068, -28.7797 },
- EmoteLoop = true,
- EmoteMoving = false,
- }},
- ["dancepridec"] = { "anim@amb@nightclub@lazlow@hi_railing@", "ambclub_09_mi_hi_bellydancer_laz", "Dance Pride C - Bisexual", AnimationOptions = {
- Prop = 'lilprideflag3', --- Bisexual
- PropBone = 18905,
- PropPlacement = { 0.0900, 0.0000, 0.0300, -39.911, 93.9166, -5.8062 },
- SecondProp = 'lilprideflag3',
- SecondPropBone = 57005,
- SecondPropPlacement = { 0.0900, -0.0200, -0.0300, -90.2454, 5.7068, -28.7797 },
- EmoteLoop = true,
- EmoteMoving = false,
- }},
- ["dancepridec"] = { "anim@amb@nightclub@lazlow@hi_railing@", "ambclub_09_mi_hi_bellydancer_laz", "Dance Pride C - Lesbian", AnimationOptions = {
- Prop = 'lilprideflag4', --- Lesbian
- PropBone = 18905,
- PropPlacement = { 0.0900, 0.0000, 0.0300, -39.911, 93.9166, -5.8062 },
- SecondProp = 'lilprideflag4',
- SecondPropBone = 57005,
- SecondPropPlacement = { 0.0900, -0.0200, -0.0300, -90.2454, 5.7068, -28.7797 },
- EmoteLoop = true,
- EmoteMoving = false,
- }},
- ["danceprided"] = { "anim@amb@nightclub@lazlow@hi_railing@", "ambclub_09_mi_hi_bellydancer_laz", "Dance Pride D - Pansexual", AnimationOptions = {
- Prop = 'lilprideflag5', --- Pansexual
- PropBone = 18905,
- PropPlacement = { 0.0900, 0.0000, 0.0300, -39.911, 93.9166, -5.8062 },
- SecondProp = 'lilprideflag5',
- SecondPropBone = 57005,
- SecondPropPlacement = { 0.0900, -0.0200, -0.0300, -90.2454, 5.7068, -28.7797 },
- EmoteLoop = true,
- EmoteMoving = false,
- }},
- ["dancepridee"] = { "anim@amb@nightclub@lazlow@hi_railing@", "ambclub_09_mi_hi_bellydancer_laz", "Dance Pride E - Transexual", AnimationOptions = {
- Prop = 'lilprideflag6', --- Transexual
- PropBone = 18905,
- PropPlacement = { 0.0900, 0.0000, 0.0300, -39.911, 93.9166, -5.8062 },
- SecondProp = 'lilprideflag6',
- SecondPropBone = 57005,
- SecondPropPlacement = { 0.0900, -0.0200, -0.0300, -90.2454, 5.7068, -28.7797 },
- EmoteLoop = true,
- EmoteMoving = false,
- }},
- ["dancepridef"] = { "anim@amb@nightclub@lazlow@hi_railing@", "ambclub_09_mi_hi_bellydancer_laz", "Dance Pride F - Non Binary", AnimationOptions = {
- Prop = 'lilprideflag7', --- Lesbian
- PropBone = 18905,
- PropPlacement = { 0.0900, 0.0000, 0.0300, -39.911, 93.9166, -5.8062 },
- SecondProp = 'lilprideflag7',
- SecondPropBone = 57005,
- SecondPropPlacement = { 0.0900, -0.0200, -0.0300, -90.2454, 5.7068, -28.7797 },
- EmoteLoop = true,
- EmoteMoving = false,
- }},
- ["danceprideg"] = { "anim@amb@nightclub@lazlow@hi_railing@", "ambclub_09_mi_hi_bellydancer_laz", "Dance Pride G - Asexual", AnimationOptions = {
- Prop = 'lilprideflag8', --- Asexual
- PropBone = 18905,
- PropPlacement = { 0.0900, 0.0000, 0.0300, -39.911, 93.9166, -5.8062 },
- SecondProp = 'lilprideflag8',
- SecondPropBone = 57005,
- SecondPropPlacement = { 0.0900, -0.0200, -0.0300, -90.2454, 5.7068, -28.7797 },
- EmoteLoop = true,
- EmoteMoving = false,
- }},
- ["danceprideh"] = { "anim@amb@nightclub@lazlow@hi_railing@", "ambclub_09_mi_hi_bellydancer_laz", "Dance Pride H - Straight Ally", AnimationOptions = {
- Prop = 'lilprideflag9', --- Straight Ally
- PropBone = 18905,
- PropPlacement = { 0.0900, 0.0000, 0.0300, -39.911, 93.9166, -5.8062 },
- SecondProp = 'lilprideflag9',
- SecondPropBone = 57005,
- SecondPropPlacement = { 0.0900, -0.0200, -0.0300, -90.2454, 5.7068, -28.7797 },
- EmoteLoop = true,
- EmoteMoving = false,
- }},
-}
-
-
----- ANIMAL EMOTES ----
----- BIG DOG ----
-
-DP.AnimalEmotes = {
- ["bdogbark"] = { "creatures@rottweiler@amb@world_dog_barking@idle_a", "idle_a", "Bark (big dog)", AnimationOptions = {
- EmoteLoop = true
- }},
- ["bdogbeg"] = { "creatures@rottweiler@tricks@", "beg_loop", "Beg (big dog)", AnimationOptions = {
- EmoteLoop = true
- }},
- ["bdogbeg2"] = { "creatures@rottweiler@tricks@", "paw_right_loop", "Beg 2 (big dog)", AnimationOptions = {
- EmoteLoop = true
- }},
- ["bdogdump"] = { "creatures@rottweiler@move", "dump_loop", "Dump (big dog)", AnimationOptions = {
- Prop = 'prop_big_shit_02',
- PropBone = 51826,
- PropPlacement = { 0.0, 0.2000, -0.4600, 0.0, -20.00, 0.0 },
- EmoteLoop = true,
- EmoteMoving = false,
- }},
- ["bdogitch"] = { "creatures@rottweiler@amb@world_dog_sitting@idle_a", "idle_a", "Itch (big dog)", AnimationOptions = {
- EmoteDuration = 2000
- }},
- ["bdogsleep"] = { "creatures@rottweiler@amb@sleep_in_kennel@", "sleep_in_kennel", "Sleep (big dog)", AnimationOptions = {
- EmoteLoop = true
- }},
- ["bdogsit"] = { "creatures@rottweiler@amb@world_dog_sitting@base", "base", "Sit (big dog)", AnimationOptions = {
- EmoteLoop = true
- }},
- ["bdogpee"] = { "creatures@rottweiler@move", "pee_left_idle", "Pee (big dog)", AnimationOptions = {
- EmoteLoop = false
- }},
- ["bdogpee2"] = { "creatures@rottweiler@move", "pee_right_idle", "Pee 2 (big dog)", AnimationOptions = {
- EmoteLoop = false
- }},
- ["sdogbark"] = { "creatures@pug@amb@world_dog_barking@idle_a", "idle_a", "Bark (small dog)", AnimationOptions = {
- EmoteLoop = true
- }},
- ["bdogglowa"] = { "creatures@rottweiler@amb@world_dog_sitting@base", "nill", "Glow Stick (big dog)", AnimationOptions = {
- Prop = 'ba_prop_battle_glowstick_01',
- PropBone = 31086,
- PropPlacement = { 0.2000, 0.000, -0.0600, 90.00, 0.00, 0.00 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["bdogglowb"] = { "creatures@rottweiler@amb@world_dog_sitting@base", "base", "Glow Stick Sitting (big dog)", AnimationOptions = {
- Prop = 'ba_prop_battle_glowstick_01',
- PropBone = 31086,
- PropPlacement = { 0.2000, 0.000, -0.0600, 90.00, 0.00, 0.00 },
- EmoteLoop = true,
- EmoteMoving = false,
- }},
- ["bdogpridea"] = { "creatures@rottweiler@amb@world_dog_sitting@base", "base", "Sit Pride A (big dog)", AnimationOptions = {
- Prop = 'lilprideflag1', ---Rainbow
- PropBone = 31086,
- PropPlacement = { 0.1900, 0.0000, -0.0500, 100.0000, 90.0000, 0.0000 },
- SecondProp = 'lilprideflag1',
- SecondPropBone = 31086,
- SecondPropPlacement = { 0.1940, 0.020, -0.0500, -90.0000, -90.0000, 0.0000 },
- EmoteLoop = true,
- EmoteMoving = false,
- }},
- ["bdogprideb"] = { "creatures@rottweiler@amb@world_dog_sitting@base", "base", "Sit Pride B - LGBTQIA (big dog)", AnimationOptions = {
- Prop = 'lilprideflag2', --LGBTQIA
- PropBone = 31086,
- PropPlacement = { 0.1900, 0.0000, -0.0500, 100.0000, 90.0000, 0.0000 },
- SecondProp = 'lilprideflag2',
- SecondPropBone = 31086,
- SecondPropPlacement = { 0.1940, 0.020, -0.0500, -90.0000, -90.0000, 0.0000 },
- EmoteLoop = true,
- EmoteMoving = false,
- }},
- ["bdogpridec"] = { "creatures@rottweiler@amb@world_dog_sitting@base", "base", "Sit Pride C - Bisexual (big dog)", AnimationOptions = {
- Prop = 'lilprideflag3', --Bisexual
- PropBone = 31086,
- PropPlacement = { 0.1900, 0.0000, -0.0500, 100.0000, 90.0000, 0.0000 },
- SecondProp = 'lilprideflag3',
- SecondPropBone = 31086,
- SecondPropPlacement = { 0.1940, 0.020, -0.0500, -90.0000, -90.0000, 0.0000 },
- EmoteLoop = true,
- EmoteMoving = false,
- }},
- ["bdogprided"] = { "creatures@rottweiler@amb@world_dog_sitting@base", "base", "Sit Pride D - Lesbian (big dog)", AnimationOptions = {
- Prop = 'lilprideflag4', --Lesbian
- PropBone = 31086,
- PropPlacement = { 0.1900, 0.0000, -0.0500, 100.0000, 90.0000, 0.0000 },
- SecondProp = 'lilprideflag4',
- SecondPropBone = 31086,
- SecondPropPlacement = { 0.1940, 0.020, -0.0500, -90.0000, -90.0000, 0.0000 },
- EmoteLoop = true,
- EmoteMoving = false,
- }},
- ["bdogpridee"] = { "creatures@rottweiler@amb@world_dog_sitting@base", "base", "Sit Pride E - Pansexual (big dog)", AnimationOptions = {
- Prop = 'lilprideflag5', --Pansexual
- PropBone = 31086,
- PropPlacement = { 0.1900, 0.0000, -0.0500, 100.0000, 90.0000, 0.0000 },
- SecondProp = 'lilprideflag5',
- SecondPropBone = 31086,
- SecondPropPlacement = { 0.1940, 0.020, -0.0500, -90.0000, -90.0000, 0.0000 },
- EmoteLoop = true,
- EmoteMoving = false,
- }},
- ["bdogpridef"] = { "creatures@rottweiler@amb@world_dog_sitting@base", "base", "Sit Pride F - Transexual (big dog)", AnimationOptions = {
- Prop = 'lilprideflag6', --Transexual
- PropBone = 31086,
- PropPlacement = { 0.1900, 0.0000, -0.0500, 100.0000, 90.0000, 0.0000 },
- SecondProp = 'lilprideflag6',
- SecondPropBone = 31086,
- SecondPropPlacement = { 0.1940, 0.020, -0.0500, -90.0000, -90.0000, 0.0000 },
- EmoteLoop = true,
- EmoteMoving = false,
- }},
- ["bdogprideg"] = { "creatures@rottweiler@amb@world_dog_sitting@base", "base", "Sit Pride G - Non Binary (big dog)", AnimationOptions = {
- Prop = 'lilprideflag7', --Non Binary
- PropBone = 31086,
- PropPlacement = { 0.1900, 0.0000, -0.0500, 100.0000, 90.0000, 0.0000 },
- SecondProp = 'lilprideflag7',
- SecondPropBone = 31086,
- SecondPropPlacement = { 0.1940, 0.020, -0.0500, -90.0000, -90.0000, 0.0000 },
- EmoteLoop = true,
- EmoteMoving = false,
- }},
- ["bdogprideh"] = { "creatures@rottweiler@amb@world_dog_sitting@base", "base", "Sit Pride H - Asexual (big dog)", AnimationOptions = {
- Prop = 'lilprideflag8', --Non Binary
- PropBone = 31086,
- PropPlacement = { 0.1900, 0.0000, -0.0500, 100.0000, 90.0000, 0.0000 },
- SecondProp = 'lilprideflag8',
- SecondPropBone = 31086,
- SecondPropPlacement = { 0.1940, 0.020, -0.0500, -90.0000, -90.0000, 0.0000 },
- EmoteLoop = true,
- EmoteMoving = false,
- }},
- ["bdogpridei"] = { "creatures@rottweiler@amb@world_dog_sitting@base", "base", "Sit Pride I - Straight Ally (big dog)", AnimationOptions = {
- Prop = 'lilprideflag9', --Straight Ally
- PropBone = 31086,
- PropPlacement = { 0.1900, 0.0000, -0.0500, 100.0000, 90.0000, 0.0000 },
- SecondProp = 'lilprideflag9',
- SecondPropBone = 31086,
- SecondPropPlacement = { 0.1940, 0.020, -0.0500, -90.0000, -90.0000, 0.0000 },
- EmoteLoop = true,
- EmoteMoving = false,
-
-
----- ANIMAL EMOTES ----
----- SMALL DOG ----
-
-
- }},
- ["sdogitch"] = { "creatures@pug@amb@world_dog_sitting@idle_a", "idle_a", "Itch (small dog)", AnimationOptions = {
- EmoteDuration = 2000
- }},
- ["sdogsit"] = { "creatures@pug@amb@world_dog_sitting@idle_a", "idle_b", "Sit (small dog)", AnimationOptions = {
- EmoteLoop = true
- }},
- ["sdogld"] = { "misssnowie@little_doggy_lying_down", "base", "Lay Down (small dog)", AnimationOptions = {
- EmoteLoop = true,
- EmoteMoving = false,
- }},
- ["sdogshake"] = { "creatures@pug@amb@world_dog_barking@idle_a", "idle_c", "Shake (small dog)", AnimationOptions = {
- EmoteLoop = true
- }},
- ["sdogdance"] = { "creatures@pug@move", "idle_turn_0", "Dance (small dog)", AnimationOptions = {
- Prop = 'ba_prop_battle_glowstick_01',
- PropBone = 31086,
- PropPlacement = { 0.1500, -0.0300, 0.0, 0.0, 0.0 },
- EmoteLoop = true,
- EmoteMoving = false,
- }},
- ["sdogdance2"] = { "creatures@pug@move", "idle_turn_0", "Dance 2 (small dog)", AnimationOptions = {
- Prop = 'ba_prop_battle_glowstick_01',
- PropBone = 31086,
- PropPlacement = { 0.1500, -0.0300, 0.0, 0.0, 0.0 },
- SecondProp = 'prop_cs_sol_glasses',
- SecondPropBone = 31086,
- SecondPropPlacement = { 0.0500, 0.0300, 0.000, -100.0000003, 90.00, 0.00 },
- EmoteLoop = true,
- EmoteMoving = false,
- }},
- ["sdogdancepridea"] = { "creatures@pug@move", "idle_turn_0", "Dance Pride A (small dog)", AnimationOptions = {
- Prop = 'lilprideflag1',
- PropBone = 31086,
- PropPlacement = { 0.1240, -0.0080, 0.000, 0.0, 0.0, -74.6999 },
- SecondProp = 'prop_cs_sol_glasses',
- SecondPropBone = 31086,
- SecondPropPlacement = { 0.0500, 0.0300, 0.000, -100.0000003, 90.00, 0.00 },
- EmoteLoop = true,
- EmoteMoving = false,
- }},
- ["sdogdanceprideb"] = { "creatures@pug@move", "idle_turn_0", "Dance Pride B - LGBTQIA (small dog)", AnimationOptions = {
- Prop = 'lilprideflag2', --LGBTQIA
- PropBone = 31086,
- PropPlacement = { 0.1240, -0.0080, 0.000, 0.0, 0.0, -74.6999 },
- SecondProp = 'prop_cs_sol_glasses',
- SecondPropBone = 31086,
- SecondPropPlacement = { 0.0500, 0.0300, 0.000, -100.0000003, 90.00, 0.00 },
- EmoteLoop = true,
- EmoteMoving = false,
- }},
- ["sdogdancepridec"] = { "creatures@pug@move", "idle_turn_0", "Dance Pride C - Bisexual (small dog)", AnimationOptions = {
- Prop = 'lilprideflag3', --Bisexual
- PropBone = 31086,
- PropPlacement = { 0.1240, -0.0080, 0.000, 0.0, 0.0, -74.6999 },
- SecondProp = 'prop_cs_sol_glasses',
- SecondPropBone = 31086,
- SecondPropPlacement = { 0.0500, 0.0300, 0.000, -100.0000003, 90.00, 0.00 },
- EmoteLoop = true,
- EmoteMoving = false,
- }},
- ["sdogdanceprided"] = { "creatures@pug@move", "idle_turn_0", "Dance Pride D - Lesbian (small dog)", AnimationOptions = {
- Prop = 'lilprideflag4', --Lesbian
- PropBone = 31086,
- PropPlacement = { 0.1240, -0.0080, 0.000, 0.0, 0.0, -74.6999 },
- SecondProp = 'prop_cs_sol_glasses',
- SecondPropBone = 31086,
- SecondPropPlacement = { 0.0500, 0.0300, 0.000, -100.0000003, 90.00, 0.00 },
- EmoteLoop = true,
- EmoteMoving = false,
- }},
- ["sdogdancepridee"] = { "creatures@pug@move", "idle_turn_0", "Dance Pride E - Pansexual (small dog)", AnimationOptions = {
- Prop = 'lilprideflag5', --Pansexual
- PropBone = 31086,
- PropPlacement = { 0.1240, -0.0080, 0.000, 0.0, 0.0, -74.6999 },
- SecondProp = 'prop_cs_sol_glasses',
- SecondPropBone = 31086,
- SecondPropPlacement = { 0.0500, 0.0300, 0.000, -100.0000003, 90.00, 0.00 },
- EmoteLoop = true,
- EmoteMoving = false,
- }},
- ["sdogdancepridef"] = { "creatures@pug@move", "idle_turn_0", "Dance Pride F - Transexual (small dog)", AnimationOptions = {
- Prop = 'lilprideflag6', --Transexual
- PropBone = 31086,
- PropPlacement = { 0.1240, -0.0080, 0.000, 0.0, 0.0, -74.6999 },
- SecondProp = 'prop_cs_sol_glasses',
- SecondPropBone = 31086,
- SecondPropPlacement = { 0.0500, 0.0300, 0.000, -100.0000003, 90.00, 0.00 },
- EmoteLoop = true,
- EmoteMoving = false,
- }},
- ["sdogdanceprideg"] = { "creatures@pug@move", "idle_turn_0", "Dance Pride G - Non Binary (small dog)", AnimationOptions = {
- Prop = 'lilprideflag7', --Non Binary
- PropBone = 31086,
- PropPlacement = { 0.1240, -0.0080, 0.000, 0.0, 0.0, -74.6999 },
- SecondProp = 'prop_cs_sol_glasses',
- SecondPropBone = 31086,
- SecondPropPlacement = { 0.0500, 0.0300, 0.000, -100.0000003, 90.00, 0.00 },
- EmoteLoop = true,
- EmoteMoving = false,
- }},
- ["sdogdanceprideh"] = { "creatures@pug@move", "idle_turn_0", "Dance Pride H - Asexual (small dog)", AnimationOptions = {
- Prop = 'lilprideflag8', --Asexual
- PropBone = 31086,
- PropPlacement = { 0.1240, -0.0080, 0.000, 0.0, 0.0, -74.6999 },
- SecondProp = 'prop_cs_sol_glasses',
- SecondPropBone = 31086,
- SecondPropPlacement = { 0.0500, 0.0300, 0.000, -100.0000003, 90.00, 0.00 },
- EmoteLoop = true,
- EmoteMoving = false,
- }},
- ["sdogdancepridei"] = { "creatures@pug@move", "idle_turn_0", "Dance Pride I - Straight Ally (small dog)", AnimationOptions = {
- Prop = 'lilprideflag9', --Straight Ally
- PropBone = 31086,
- PropPlacement = { 0.1240, -0.0080, 0.000, 0.0, 0.0, -74.6999 },
- SecondProp = 'prop_cs_sol_glasses',
- SecondPropBone = 31086,
- SecondPropPlacement = { 0.0500, 0.0300, 0.000, -100.0000003, 90.00, 0.00 },
- EmoteLoop = true,
- EmoteMoving = false,
- }},
- ["sdogbb"] = { "creatures@pug@move", "nill", "Baseball (small dog)", AnimationOptions = {
- Prop = 'w_am_baseball',
- PropBone = 31086,
- PropPlacement = { 0.1500, -0.0500, 0.0, 0.0, 0.0 },
- EmoteLoop = true,
- EmoteMoving = false,
- }},
- ["sdogburger"] = { "creatures@pug@move", "nill", "Burger (small dog)", AnimationOptions = {
- Prop = 'prop_cs_burger_01',
- PropBone = 31086,
- PropPlacement = { 0.1500, -0.0400, 0.0000, -90.0, 0.0 },
- EmoteLoop = true,
- EmoteMoving = false,
- }},
- ["sdogcontroller"] = { "creatures@pug@move", "nill", "Controller (small dog)", AnimationOptions = {
- Prop = 'prop_controller_01',
- PropBone = 31086,
- PropPlacement = { 0.1800, -0.0300, 0.0000, -180.000, 90.0000, 0.0000 },
- EmoteLoop = true,
- EmoteMoving = false,
- }},
- ["sdogdolla"] = { "creatures@pug@move", "nill", "Dollar Bill (small dog)", AnimationOptions = {
- Prop = 'p_banknote_onedollar_s',
- PropBone = 31086,
- PropPlacement = { 0.1700, -0.0100, 0.0000, 90.0000, 0.0000, 0.000 },
- EmoteLoop = true,
- EmoteMoving = false,
- }},
- ["sdogdolla2"] = { "creatures@pug@move", "nill", "Dollar Bill Scrunched (small dog)", AnimationOptions = {
- Prop = 'bkr_prop_scrunched_moneypage',
- PropBone = 31086,
- PropPlacement = { 0.1700, 0.000, 0.0000, 90.0000, 00.0000, 00.0000 },
- EmoteLoop = true,
- EmoteMoving = false,
- }},
- ["sdogdolla3"] = { "creatures@pug@move", "nill", "Money Stack (small dog)", AnimationOptions = {
- Prop = 'bkr_prop_money_wrapped_01',
- PropBone = 31086,
- PropPlacement = { 0.1700, -0.0100, 0.0000, 90.0000, 0.0000, 0.000 },
- EmoteLoop = true,
- EmoteMoving = false,
- }},
- ["sdogdolla4"] = { "creatures@pug@move", "nill", "Money Bag (small dog)", AnimationOptions = {
- Prop = 'ch_prop_ch_moneybag_01a',
- PropBone = 31086,
- PropPlacement = { 0.1200, -0.2000, 0.0000, -79.9999997, 90.00, 0.0000 },
- EmoteLoop = true,
- EmoteMoving = false,
- }},
- ["sdogmic"] = { "creatures@pug@move", "nill", "Microphone (small dog)", AnimationOptions = {
- Prop = 'p_ing_microphonel_01',
- PropBone = 31086,
- PropPlacement = { 0.1500, -0.0170, 0.0300, 0.000, 0.0000, 0.0000 },
- EmoteLoop = true,
- EmoteMoving = false,
- }},
- ["sdogteddy"] = { "creatures@pug@move", "nill", "Teddy (small dog)", AnimationOptions = {
- Prop = 'v_ilev_mr_rasberryclean',
- PropBone = 31086,
- PropPlacement = { 0.1500, -0.1100, -0.23, 0.000, 0.0000, 0.0000 },
- EmoteLoop = true,
- EmoteMoving = false,
- }},
- ["sdogteddy2"] = { "creatures@pug@amb@world_dog_sitting@idle_a", "idle_b", "Teddy 2 (small dog)", AnimationOptions = {
- Prop = 'v_ilev_mr_rasberryclean',
- PropBone = 31086,
- PropPlacement = { 0.1500, -0.1100, -0.23, 0.000, 0.0000, 0.0000 },
- EmoteLoop = true,
- EmoteMoving = false,
- }},
- ["sdogtennis"] = { "creatures@pug@move", "nill", "Tennis Ball (small dog)", AnimationOptions = {
- Prop = 'prop_tennis_ball',
- PropBone = 31086,
- PropPlacement = { 0.1500, -0.0600, 0.0, 0.0, 0.0, 0.0 },
- EmoteLoop = true,
- EmoteMoving = false,
- }},
- ["sdogtennisr"] = { "creatures@pug@move", "nill", "Tennis Racket (small dog)", AnimationOptions = {
- Prop = 'prop_tennis_rack_01',
- PropBone = 31086,
- PropPlacement = { 0.1500, -0.0200, 0.00, 0.000, 0.0000, -28.0000 },
- EmoteLoop = true,
- EmoteMoving = false,
- }},
- ["sdogrose"] = { "creatures@pug@move", "nill", "Rose (small dog)", AnimationOptions = {
- Prop = 'prop_single_rose',
- PropBone = 12844,
- PropPlacement = { 0.1090, -0.0140, 0.0500, 0.0, 0.0, 0.0 },
- EmoteLoop = true,
- EmoteMoving = false,
- }},
- ["sdogrose2"] = { "creatures@pug@amb@world_dog_sitting@idle_a", "idle_b", "Rose Sit (small dog)", AnimationOptions = {
- Prop = 'prop_single_rose',
- PropBone = 12844,
- PropPlacement = { 0.1090, -0.0140, 0.0500, 0.0, 0.0, 0.0 },
- EmoteLoop = true,
- EmoteMoving = false,
- }},
- ["sdogggun"] = { "creatures@pug@move", "nill", "Gun Gold (small dog)", AnimationOptions = {
- Prop = 'w_pi_pistol_luxe',
- PropBone = 12844,
- PropPlacement = { 0.2010, -0.0080, 0.0, 0.0, 0.0, 0.0 },
- EmoteLoop = true,
- EmoteMoving = false,
- }},
- ["sdoggun2"] = { "creatures@pug@amb@world_dog_sitting@idle_a", "idle_b", "Gun Gold Sit (small dog)", AnimationOptions = {
- Prop = 'w_pi_pistol_luxe',
- PropBone = 12844,
- PropPlacement = { 0.2010, -0.0080, 0.0, 0.0, 0.0, 0.0 },
- EmoteLoop = true,
- EmoteMoving = false,
- }},
- ["sdogstun"] = { "creatures@pug@move", "nill", "Stun Gun (small dog)", AnimationOptions = {
- Prop = 'w_pi_stungun',
- PropBone = 12844,
- PropPlacement = { 0.1400, -0.0100, 0.0, 0.0, 0.0, 0.0 },
- EmoteLoop = true,
- EmoteMoving = false,
- PtfxAsset = "core",
- PtfxName = "blood_stungun",
- PtfxPlacement = { 0.208, 0.0, 0.0, 0.0, 0.0, 0.0, 1.0 },
- PtfxInfo = Config.Languages[Config.MenuLanguage]['stun'],
- PtfxWait = 200,
- }},
- ["sdoggl1"] = { "creatures@pug@move", "nill", "Aviators (small dog)", AnimationOptions = {
- Prop = 'prop_aviators_01',
- PropBone = 31086,
- PropPlacement = { 0.0500, 0.0400, 0.000, -90.00, 90.00, 0.00 },
- EmoteLoop = true,
- EmoteMoving = false,
- }},
- ["sdoggl2"] = { "creatures@pug@amb@world_dog_sitting@idle_a", "idle_b", "Aviators Sitting (small dog)", AnimationOptions = {
- Prop = 'prop_aviators_01',
- PropBone = 31086,
- PropPlacement = { 0.0500, 0.0400, 0.000, -90.00, 90.00, 0.00 },
- EmoteLoop = true,
- EmoteMoving = false,
- }},
- ["sdoggl3"] = { "creatures@pug@move", "nill", "Sunglasses (small dog)", AnimationOptions = {
- Prop = 'prop_cs_sol_glasses',
- PropBone = 31086,
- PropPlacement = { 0.0500, 0.0300, 0.000, -100.0000003, 90.00, 0.00 },
- EmoteLoop = true,
- EmoteMoving = false,
- }},
- ["sdoggl4"] = { "creatures@pug@amb@world_dog_sitting@idle_a", "idle_b", "Sunglasses Sitting (small dog)", AnimationOptions = {
- Prop = 'prop_cs_sol_glasses',
- PropBone = 31086,
- PropPlacement = { 0.0500, 0.0300, 0.000, -100.0000003, 90.00, 0.00 },
- EmoteLoop = true,
- EmoteMoving = false,
- }},
- ["sdoghd1"] = { "creatures@pug@move", "nill", "Hot Dog (small dog)", AnimationOptions = {
- Prop = 'prop_cs_hotdog_01',
- PropBone = 31086,
- PropPlacement = { 0.1300, -0.0250, 0.000, -88.272053, -9.8465858, -0.1488562 },
- EmoteLoop = true,
- EmoteMoving = false,
- }},
- ["sdoghd2"] = { "creatures@pug@amb@world_dog_sitting@idle_a", "idle_b", "Hot Dog Sitting (small dog)", AnimationOptions = {
- Prop = 'prop_cs_hotdog_01',
- PropBone = 31086,
- PropPlacement = { 0.1300, -0.0250, 0.000, -88.272053, -9.8465858, -0.1488562 },
- EmoteLoop = true,
- EmoteMoving = false,
- }},
- ["sdoghlmt1"] = { "creatures@pug@move", "nill", "Helmet 1 (small dog)", AnimationOptions = {
- Prop = 'ba_prop_battle_sports_helmet',
- PropBone = 31086,
- PropPlacement = { 0.00, -0.0200, 0.000, -90.00, 90.00, 0.00 },
- EmoteLoop = true,
- EmoteMoving = false,
- }},
- ["sdoghlmt2"] = { "creatures@pug@move", "nill", "Helmet 2 (small dog)", AnimationOptions = {
- Prop = 'prop_hard_hat_01',
- PropBone = 31086,
- PropPlacement = { 0.00, 0.1300, 0.000, -90.00, 90.00, 0.00 },
- EmoteLoop = true,
- EmoteMoving = false,
- }},
- ["sdoghat"] = { "creatures@pug@move", "nill", "Hat 1 (small dog)", AnimationOptions = {
- Prop = 'prop_proxy_hat_01',
- PropBone = 31086,
- PropPlacement = { 0.0, 0.1200, 0.000, -99.8510766, 80.1489234, 1.7279411 },
- SecondProp = 'prop_aviators_01',
- SecondPropBone = 31086,
- SecondPropPlacement = { 0.0500, 0.0400, 0.000, -90.00, 90.00, 0.00 },
- EmoteLoop = true,
- EmoteMoving = false,
- }},
- ["sdoghat2"] = { "creatures@pug@amb@world_dog_sitting@idle_a", "idle_b", "Hat 2 Sitting (small dog)", AnimationOptions = {
- Prop = 'prop_proxy_hat_01',
- PropBone = 31086,
- PropPlacement = { 0.0, 0.1200, 0.000, -99.8510766, 80.1489234, 1.7279411 },
- SecondProp = 'prop_aviators_01',
- SecondPropBone = 31086,
- SecondPropPlacement = { 0.0500, 0.0400, 0.000, -90.00, 90.00, 0.00 },
- EmoteLoop = true,
- EmoteMoving = false,
- }},
- ["sdogsteak"] = { "creatures@pug@move", "nill", "Steak (small dog)", AnimationOptions = {
- Prop = 'prop_cs_steak',
- PropBone = 31086,
- PropPlacement = { 0.1800, -0.0200, 0.000, 90.00, 0.00, 0.00 },
- EmoteLoop = true,
- EmoteMoving = false,
- }},
- ["sdogsteak2"] = { "creatures@pug@amb@world_dog_sitting@idle_a", "idle_c", "Steak 2 Lay Down (small dog)", AnimationOptions = {
- Prop = 'prop_cs_steak',
- PropBone = 31086,
- PropPlacement = { 0.1800, -0.0200, 0.000, 90.00, 0.00, 0.00 },
- EmoteLoop = true,
- EmoteMoving = false,
- }},
- ["sdogpridea"] = { "creatures@pug@move", "nill", "Pride A (small dog)", AnimationOptions = {
- Prop = 'lilprideflag1',
- PropBone = 31086,
- PropPlacement = { 0.1240, -0.0080, 0.000, 0.0, 0.0, -74.6999 },
- EmoteLoop = true,
- EmoteMoving = false,
- }},
- ["sdogprideb"] = { "creatures@pug@move", "nill", "Pride B - LGBTQIA (small dog)", AnimationOptions = {
- Prop = 'lilprideflag2',--LGBTQIA
- PropBone = 31086,
- PropPlacement = { 0.1240, -0.0080, 0.000, 0.0, 0.0, -74.6999 },
- EmoteLoop = true,
- EmoteMoving = false,
- }},
- ["sdogpridec"] = { "creatures@pug@move", "nill", "Pride C - Bisexual (small dog)", AnimationOptions = {
- Prop = 'lilprideflag3',--Bisexual
- PropBone = 31086,
- PropPlacement = { 0.1240, -0.0080, 0.000, 0.0, 0.0, -74.6999 },
- EmoteLoop = true,
- EmoteMoving = false,
- }},
- ["sdogprided"] = { "creatures@pug@move", "nill", "Pride D - Lesbian (small dog)", AnimationOptions = {
- Prop = 'lilprideflag4',--Lesbian
- PropBone = 31086,
- PropPlacement = { 0.1240, -0.0080, 0.000, 0.0, 0.0, -74.6999 },
- EmoteLoop = true,
- EmoteMoving = false,
- }},
- ["sdogpridee"] = { "creatures@pug@move", "nill", "Pride E - Pansexual (small dog)", AnimationOptions = {
- Prop = 'lilprideflag5',--Pansexual
- PropBone = 31086,
- PropPlacement = { 0.1240, -0.0080, 0.000, 0.0, 0.0, -74.6999 },
- EmoteLoop = true,
- EmoteMoving = false,
- }},
- ["sdogpridef"] = { "creatures@pug@move", "nill", "Pride F - Transexual (small dog)", AnimationOptions = {
- Prop = 'lilprideflag6',--Transexual
- PropBone = 31086,
- PropPlacement = { 0.1240, -0.0080, 0.000, 0.0, 0.0, -74.6999 },
- EmoteLoop = true,
- EmoteMoving = false,
- }},
- ["sdogpridef"] = { "creatures@pug@move", "nill", "Pride F - Transexual (small dog)", AnimationOptions = {
- Prop = 'lilprideflag6',--Transexual
- PropBone = 31086,
- PropPlacement = { 0.1240, -0.0080, 0.000, 0.0, 0.0, -74.6999 },
- EmoteLoop = true,
- EmoteMoving = false,
- }},
- ["sdogprideg"] = { "creatures@pug@move", "nill", "Pride G - Non Binary (small dog)", AnimationOptions = {
- Prop = 'lilprideflag6',--Non Binary
- PropBone = 31086,
- PropPlacement = { 0.1240, -0.0080, 0.000, 0.0, 0.0, -74.6999 },
- EmoteLoop = true,
- EmoteMoving = false,
- }},
- ["sdogprideh"] = { "creatures@pug@move", "nill", "Pride H - Non Binary (small dog)", AnimationOptions = {
- Prop = 'lilprideflag7',--Non Binary
- PropBone = 31086,
- PropPlacement = { 0.1240, -0.0080, 0.000, 0.0, 0.0, -74.6999 },
- EmoteLoop = true,
- EmoteMoving = false,
- }},
- ["sdogpridei"] = { "creatures@pug@move", "nill", "Pride I - Asexual (small dog)", AnimationOptions = {
- Prop = 'lilprideflag8',--Asexual
- PropBone = 31086,
- PropPlacement = { 0.1240, -0.0080, 0.000, 0.0, 0.0, -74.6999 },
- EmoteLoop = true,
- EmoteMoving = false,
- }},
- ["sdogpridesita"] = { "creatures@pug@amb@world_dog_sitting@idle_a", "idle_b", "Pride A Sit (small dog)", AnimationOptions = {
- Prop = 'lilprideflag1',
- PropBone = 31086,
- PropPlacement = { 0.1240, -0.0080, 0.000, 0.0, 0.0, -74.6999 },
- EmoteLoop = true,
- EmoteMoving = false,
- }},
- ["sdogpridesitb"] = { "creatures@pug@amb@world_dog_sitting@idle_a", "idle_b", "Pride B Sit LGBTQIA (small dog)", AnimationOptions = {
- Prop = 'lilprideflag2', --LGBTQIA
- PropBone = 31086,
- PropPlacement = { 0.1240, -0.0080, 0.000, 0.0, 0.0, -74.6999 },
- EmoteLoop = true,
- EmoteMoving = false,
- }},
- ["sdogpridesitc"] = { "creatures@pug@amb@world_dog_sitting@idle_a", "idle_b", "Pride C Sit Bisexual (small dog)", AnimationOptions = {
- Prop = 'lilprideflag3', --Bisexual
- PropBone = 31086,
- PropPlacement = { 0.1240, -0.0080, 0.000, 0.0, 0.0, -74.6999 },
- EmoteLoop = true,
- EmoteMoving = false,
- }},
- ["sdogpridesitd"] = { "creatures@pug@amb@world_dog_sitting@idle_a", "idle_b", "Pride D Sit Lesbian (small dog)", AnimationOptions = {
- Prop = 'lilprideflag4', --Lesbian
- PropBone = 31086,
- PropPlacement = { 0.1240, -0.0080, 0.000, 0.0, 0.0, -74.6999 },
- EmoteLoop = true,
- EmoteMoving = false,
- }},
- ["sdogpridesite"] = { "creatures@pug@amb@world_dog_sitting@idle_a", "idle_b", "Pride E Sit Pansexual (small dog)", AnimationOptions = {
- Prop = 'lilprideflag5', --Pansexual
- PropBone = 31086,
- PropPlacement = { 0.1240, -0.0080, 0.000, 0.0, 0.0, -74.6999 },
- EmoteLoop = true,
- EmoteMoving = false,
- }},
- ["sdogpridesitf"] = { "creatures@pug@amb@world_dog_sitting@idle_a", "idle_b", "Pride F Sit Transexual (small dog)", AnimationOptions = {
- Prop = 'lilprideflag6', --Transexual
- PropBone = 31086,
- PropPlacement = { 0.1240, -0.0080, 0.000, 0.0, 0.0, -74.6999 },
- EmoteLoop = true,
- EmoteMoving = false,
- }},
- ["sdogpridesitg"] = { "creatures@pug@amb@world_dog_sitting@idle_a", "idle_b", "Pride G Sit Non Binary (small dog)", AnimationOptions = {
- Prop = 'lilprideflag7', --Non Binary
- PropBone = 31086,
- PropPlacement = { 0.1240, -0.0080, 0.000, 0.0, 0.0, -74.6999 },
- EmoteLoop = true,
- EmoteMoving = false,
- }},
- ["sdogpridesith"] = { "creatures@pug@amb@world_dog_sitting@idle_a", "idle_b", "Pride H Sit Asexual (small dog)", AnimationOptions = {
- Prop = 'lilprideflag8', --Asexual
- PropBone = 31086,
- PropPlacement = { 0.1240, -0.0080, 0.000, 0.0, 0.0, -74.6999 },
- EmoteLoop = true,
- EmoteMoving = false,
- }},
- ["sdogpridesiti"] = { "creatures@pug@amb@world_dog_sitting@idle_a", "idle_b", "Pride I Sit Straight Ally (small dog)", AnimationOptions = {
- Prop = 'lilprideflag9', --Straight Ally
- PropBone = 31086,
- PropPlacement = { 0.1240, -0.0080, 0.000, 0.0, 0.0, -74.6999 },
- EmoteLoop = true,
- EmoteMoving = false,
- }},
-}
-
-
-
---- EMOTES NO PROPS ---
-
-DP.Emotes = {
-
- ["beast"] = { "anim@mp_fm_event@intro", "beast_transform", "Beast", AnimationOptions = {
- EmoteMoving = true,
- EmoteDuration = 5000,
- }},
- ["chill"] = { "switch@trevor@scares_tramp", "trev_scares_tramp_idle_tramp", "Chill", AnimationOptions = {
- EmoteLoop = true,
- }},
- ["cloudgaze"] = { "switch@trevor@annoys_sunbathers", "trev_annoys_sunbathers_loop_girl", "Cloudgaze", AnimationOptions = {
- EmoteLoop = true,
- }},
- ["cloudgaze2"] = { "switch@trevor@annoys_sunbathers", "trev_annoys_sunbathers_loop_guy", "Cloudgaze 2", AnimationOptions = {
- EmoteLoop = true,
- }},
- ["prone"] = { "missfbi3_sniping", "prone_dave", "Prone", AnimationOptions = {
- EmoteLoop = true,
- }},
- ["pullover"] = { "misscarsteal3pullover", "pull_over_right", "Pullover", AnimationOptions = {
- EmoteMoving = true,
- EmoteDuration = 1300,
- }},
- ["idle"] = { "anim@heists@heist_corona@team_idles@male_a", "idle", "Idle", AnimationOptions = {
- EmoteLoop = true,
- }},
- ["idle8"] = { "amb@world_human_hang_out_street@male_b@idle_a", "idle_b", "Idle 8" },
- ["idle9"] = { "friends@fra@ig_1", "base_idle", "Idle 9", AnimationOptions = {
- EmoteLoop = true,
- }},
- ["idle10"] = { "mp_move@prostitute@m@french", "idle", "Idle 10", AnimationOptions = {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["idle11"] = { "random@countrysiderobbery", "idle_a", "Idle 11", AnimationOptions = {
- EmoteLoop = true,
- }},
- ["idle2"] = { "anim@heists@heist_corona@team_idles@female_a", "idle", "Idle 2", AnimationOptions = {
- EmoteLoop = true,
- }},
- ["idle3"] = { "anim@heists@humane_labs@finale@strip_club", "ped_b_celebrate_loop", "Idle 3", AnimationOptions = {
- EmoteLoop = true,
- }},
- ["idle4"] = { "anim@mp_celebration@idles@female", "celebration_idle_f_a", "Idle 4", AnimationOptions = {
- EmoteLoop = true,
- }},
- ["idle5"] = { "anim@mp_corona_idles@female_b@idle_a", "idle_a", "Idle 5", AnimationOptions = {
- EmoteLoop = true,
- }},
- ["idle6"] = { "anim@mp_corona_idles@male_c@idle_a", "idle_a", "Idle 6", AnimationOptions = {
- EmoteLoop = true,
- }},
- ["idle7"] = { "anim@mp_corona_idles@male_d@idle_a", "idle_a", "Idle 7", AnimationOptions = {
- EmoteLoop = true,
- }},
- ["idledrunk"] = { "random@drunk_driver_1", "drunk_driver_stand_loop_dd1", "Idle Drunk", AnimationOptions = {
- EmoteLoop = true,
- }},
- ["idledrunk2"] = { "random@drunk_driver_1", "drunk_driver_stand_loop_dd2", "Idle Drunk 2", AnimationOptions = {
- EmoteLoop = true,
- }},
- ["idledrunk3"] = { "missarmenian2", "standing_idle_loop_drunk", "Idle Drunk 3", AnimationOptions = {
- EmoteLoop = true,
- }},
- ["airguitar"] = { "anim@mp_player_intcelebrationfemale@air_guitar", "air_guitar", "Air Guitar" },
- ["airsynth"] = { "anim@mp_player_intcelebrationfemale@air_synth", "air_synth", "Air Synth" },
- ["argue"] = { "misscarsteal4@actor", "actor_berating_loop", "Argue", AnimationOptions = {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["argue2"] = { "oddjobs@assassinate@vice@hooker", "argue_a", "Argue 2", AnimationOptions = {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["bartender"] = { "anim@amb@clubhouse@bar@drink@idle_a", "idle_a_bartender", "Bartender", AnimationOptions = {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["blowkiss"] = { "anim@mp_player_intcelebrationfemale@blow_kiss", "blow_kiss", "Blow Kiss" },
- ["blowkiss2"] = { "anim@mp_player_intselfieblow_kiss", "exit", "Blow Kiss 2", AnimationOptions = {
- EmoteMoving = true,
- EmoteDuration = 2000
-
- }},
- ["curtsy"] = { "anim@mp_player_intcelebrationpaired@f_f_sarcastic", "sarcastic_left", "Curtsy" },
- ["bringiton"] = { "misscommon@response", "bring_it_on", "Bring It On", AnimationOptions = {
- EmoteMoving = true,
- EmoteDuration = 3000
- }},
- ["comeatmebro"] = { "mini@triathlon", "want_some_of_this", "Come at me bro", AnimationOptions = {
- EmoteMoving = true,
- EmoteDuration = 2000
- }},
- ["cop2"] = { "anim@amb@nightclub@peds@", "rcmme_amanda1_stand_loop_cop", "Cop 2", AnimationOptions = {
- EmoteLoop = true,
- }},
- ["cop3"] = { "amb@code_human_police_investigate@idle_a", "idle_b", "Cop 3", AnimationOptions = {
- EmoteLoop = true,
- }},
- ["crossarms"] = { "amb@world_human_hang_out_street@female_arms_crossed@idle_a", "idle_a", "Crossarms", AnimationOptions = {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["crossarms2"] = { "amb@world_human_hang_out_street@male_c@idle_a", "idle_b", "Crossarms 2", AnimationOptions = {
- EmoteMoving = true,
- }},
- ["crossarms3"] = { "anim@heists@heist_corona@single_team", "single_team_loop_boss", "Crossarms 3", AnimationOptions = {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["crossarms4"] = { "random@street_race", "_car_b_lookout", "Crossarms 4", AnimationOptions = {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["crossarms5"] = { "anim@amb@nightclub@peds@", "rcmme_amanda1_stand_loop_cop", "Crossarms 5", AnimationOptions = {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["foldarms2"] = { "anim@amb@nightclub@peds@", "rcmme_amanda1_stand_loop_cop", "Fold Arms 2", AnimationOptions = {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["crossarms6"] = { "random@shop_gunstore", "_idle", "Crossarms 6", AnimationOptions = {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["foldarms"] = { "anim@amb@business@bgen@bgen_no_work@", "stand_phone_phoneputdown_idle_nowork", "Fold Arms", AnimationOptions = {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["crossarmsside"] = { "rcmnigel1a_band_groupies", "base_m2", "Crossarms Side", AnimationOptions = {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["damn"] = { "gestures@m@standing@casual", "gesture_damn", "Damn", AnimationOptions = {
- EmoteMoving = true,
- EmoteDuration = 1000
- }},
- ["damn2"] = { "anim@am_hold_up@male", "shoplift_mid", "Damn 2", AnimationOptions = {
- EmoteMoving = true,
- EmoteDuration = 1000
- }},
- ["pointdown"] = { "gestures@f@standing@casual", "gesture_hand_down", "Point Down", AnimationOptions = {
- EmoteMoving = true,
- EmoteDuration = 1000
- }},
- ["surrender"] = { "random@arrests@busted", "idle_a", "Surrender", AnimationOptions = {
- EmoteMoving = false,
- EmoteLoop = true,
- }},
- ["surrender2"] = { "mp_bank_heist_1", "f_cower_02", "Surrender 2", AnimationOptions = {
- EmoteMoving = false,
- EmoteLoop = true,
- }},
- ["surrender3"] = { "mp_bank_heist_1", "m_cower_01", "Surrender 3", AnimationOptions = {
- EmoteMoving = false,
- EmoteLoop = true,
- }},
- ["surrender4"] = { "mp_bank_heist_1", "m_cower_02", "Surrender 4", AnimationOptions = {
- EmoteMoving = false,
- EmoteLoop = true,
- }},
- ["surrender5"] = { "random@arrests", "kneeling_arrest_idle", "Surrender 5", AnimationOptions = {
- EmoteMoving = false,
- EmoteLoop = true,
- }},
- ["surrender6"] = { "rcmbarry", "m_cower_01", "Surrender 6", AnimationOptions = {
- EmoteMoving = false,
- EmoteLoop = true,
- }},
- ["facepalm2"] = { "anim@mp_player_intcelebrationfemale@face_palm", "face_palm", "Facepalm 2", AnimationOptions = {
- EmoteMoving = true,
- EmoteDuration = 8000
- }},
- ["facepalm"] = { "random@car_thief@agitated@idle_a", "agitated_idle_a", "Facepalm", AnimationOptions = {
- EmoteMoving = true,
- EmoteDuration = 8000
- }},
- ["facepalm3"] = { "missminuteman_1ig_2", "tasered_2", "Facepalm 3", AnimationOptions = {
- EmoteMoving = true,
- EmoteDuration = 8000
- }},
- ["facepalm4"] = { "anim@mp_player_intupperface_palm", "idle_a", "Facepalm 4", AnimationOptions = {
- EmoteMoving = true,
- EmoteLoop = true,
- }},
- ["fallover"] = { "random@drunk_driver_1", "drunk_fall_over", "Fall Over" },
- ["fallover2"] = { "mp_suicide", "pistol", "Fall Over 2" },
- ["fallover3"] = { "mp_suicide", "pill", "Fall Over 3" },
- ["fallover4"] = { "friends@frf@ig_2", "knockout_plyr", "Fall Over 4" },
- ["fallover5"] = { "anim@gangops@hostage@", "victim_fail", "Fall Over 5" },
- ["fallasleep"] = { "mp_sleep", "sleep_loop", "Fall Asleep", AnimationOptions = {
- EmoteMoving = true,
- EmoteLoop = true,
- }},
- ["fightme"] = { "anim@deathmatch_intros@unarmed", "intro_male_unarmed_c", "Fight Me" },
- ["fightme2"] = { "anim@deathmatch_intros@unarmed", "intro_male_unarmed_e", "Fight Me 2" },
- ["finger"] = { "anim@mp_player_intselfiethe_bird", "idle_a", "Finger", AnimationOptions = {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["finger2"] = { "anim@mp_player_intupperfinger", "idle_a_fp", "Finger 2", AnimationOptions = {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["handshake"] = { "mp_ped_interaction", "handshake_guy_a", "Handshake", AnimationOptions = {
- EmoteMoving = true,
- EmoteDuration = 3000
- }},
- ["handshake2"] = { "mp_ped_interaction", "handshake_guy_b", "Handshake 2", AnimationOptions = {
- EmoteMoving = true,
- EmoteDuration = 3000
- }},
- ["wait"] = { "random@shop_tattoo", "_idle_a", "Wait", AnimationOptions = {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["waitb"] = { "missbigscore2aig_3", "wait_for_van_c", "Wait B", AnimationOptions = {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["waitc"] = { "amb@world_human_hang_out_street@female_hold_arm@idle_a", "idle_a", "Wait C", AnimationOptions = {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["waitd"] = { "amb@world_human_hang_out_street@Female_arm_side@idle_a", "idle_a", "Wait D", AnimationOptions = {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["waite"] = { "missclothing", "idle_storeclerk", "Wait E", AnimationOptions = {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["waitf"] = { "timetable@amanda@ig_2", "ig_2_base_amanda", "Wait F", AnimationOptions = {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["waitg"] = { "rcmnigel1cnmt_1c", "base", "Wait G", AnimationOptions = {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["waith"] = { "rcmjosh1", "idle", "Wait H", AnimationOptions = {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["waiti"] = { "rcmjosh2", "josh_2_intp1_base", "Wait I", AnimationOptions = {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["waitj"] = { "timetable@amanda@ig_3", "ig_3_base_tracy", "Wait J", AnimationOptions = {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["waitk"] = { "misshair_shop@hair_dressers", "keeper_base", "Wait K", AnimationOptions = {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["waitl"] = { "rcmjosh1", "keeper_base", "Wait L", AnimationOptions = {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["waitm"] = { "rcmnigel1a", "base", "Wait M", AnimationOptions = {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["hiking"] = { "move_m@hiking", "idle", "Hiking", AnimationOptions = {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["hug"] = { "mp_ped_interaction", "kisses_guy_a", "Hug" },
- ["hug2"] = { "mp_ped_interaction", "kisses_guy_b", "Hug 2" },
- ["hug3"] = { "mp_ped_interaction", "hugs_guy_a", "Hug 3" },
- ["inspect"] = { "random@train_tracks", "idle_e", "Inspect" },
- ["jazzhands"] = { "anim@mp_player_intcelebrationfemale@jazz_hands", "jazz_hands", "Jazzhands", AnimationOptions = {
- EmoteMoving = true,
- EmoteDuration = 6000,
- }},
- ["jog2"] = { "amb@world_human_jog_standing@male@idle_a", "idle_a", "Jog 2", AnimationOptions = {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["jog3"] = { "amb@world_human_jog_standing@female@idle_a", "idle_a", "Jog 3", AnimationOptions = {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["jog4"] = { "amb@world_human_power_walker@female@idle_a", "idle_a", "Jog 4", AnimationOptions = {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["jog5"] = { "move_m@joy@a", "walk", "Jog 5", AnimationOptions = {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["jumpingjacks"] = { "timetable@reunited@ig_2", "jimmy_getknocked", "Jumping Jacks", AnimationOptions = {
- EmoteLoop = true,
- }},
- ["kneel2"] = { "rcmextreme3", "idle", "Kneel 2", AnimationOptions = {
- EmoteLoop = true,
- }},
- ["kneel3"] = { "amb@world_human_bum_wash@male@low@idle_a", "idle_a", "Kneel 3", AnimationOptions = {
- EmoteLoop = true,
- }},
- ["knock"] = { "timetable@jimmy@doorknock@", "knockdoor_idle", "Knock", AnimationOptions = {
- EmoteMoving = true,
- EmoteLoop = true,
- }},
- ["knock2"] = { "missheistfbi3b_ig7", "lift_fibagent_loop", "Knock 2", AnimationOptions = {
- EmoteLoop = true,
- }},
- ["knucklecrunch"] = { "anim@mp_player_intcelebrationfemale@knuckle_crunch", "knuckle_crunch", "Knuckle Crunch", AnimationOptions = {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["lean2"] = { "amb@world_human_leaning@female@wall@back@hand_up@idle_a", "idle_a", "Lean 2", AnimationOptions = {
- EmoteLoop = true,
- }},
- ["lean3"] = { "amb@world_human_leaning@female@wall@back@holding_elbow@idle_a", "idle_a", "Lean 3", AnimationOptions = {
- EmoteLoop = true,
- }},
- ["lean4"] = { "amb@world_human_leaning@male@wall@back@foot_up@idle_a", "idle_a", "Lean 4", AnimationOptions = {
- EmoteLoop = true,
- }},
- ["lean5"] = { "amb@world_human_leaning@male@wall@back@hands_together@idle_b", "idle_b", "Lean 5", AnimationOptions = {
- EmoteLoop = true,
- }},
- ["leanflirt"] = { "random@street_race", "_car_a_flirt_girl", "Lean Flirt", AnimationOptions = {
- EmoteLoop = true,
- }},
- ["leanbar2"] = { "amb@prop_human_bum_shopping_cart@male@idle_a", "idle_c", "Lean Bar 2", AnimationOptions = {
- EmoteLoop = true,
- }},
- ["leanbar3"] = { "anim@amb@nightclub@lazlow@ig1_vip@", "clubvip_base_laz", "Lean Bar 3", AnimationOptions = {
- EmoteLoop = true,
- }},
- ["leanbar4"] = { "anim@heists@prison_heist", "ped_b_loop_a", "Lean Bar 4", AnimationOptions = {
- EmoteLoop = true,
- }},
- ["leanhigh"] = { "anim@mp_ferris_wheel", "idle_a_player_one", "Lean High", AnimationOptions = {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["leanhigh2"] = { "anim@mp_ferris_wheel", "idle_a_player_two", "Lean High 2", AnimationOptions = {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["leanside"] = { "timetable@mime@01_gc", "idle_a", "Leanside", AnimationOptions = {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["leanside2"] = { "misscarstealfinale", "packer_idle_1_trevor", "Leanside 2", AnimationOptions = {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["leanside3"] = { "misscarstealfinalecar_5_ig_1", "waitloop_lamar", "Leanside 3", AnimationOptions = {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["leanside4"] = { "misscarstealfinalecar_5_ig_1", "waitloop_lamar", "Leanside 4", AnimationOptions = {
- EmoteLoop = true,
- EmoteMoving = false,
- }},
- ["leanside5"] = { "rcmjosh2", "josh_2_intp1_base", "Leanside 5", AnimationOptions = {
- EmoteLoop = true,
- EmoteMoving = false,
- }},
- ["me"] = { "gestures@f@standing@casual", "gesture_me_hard", "Me", AnimationOptions = {
- EmoteMoving = true,
- EmoteDuration = 1000
- }},
- ["mechanic"] = { "mini@repair", "fixing_a_ped", "Mechanic", AnimationOptions = {
- EmoteLoop = true,
- }},
- ["mechanic2"] = { "mini@repair", "fixing_a_player", "Mechanic 2", AnimationOptions = {
- EmoteLoop = true,
- }},
- ["mechanic3"] = { "amb@world_human_vehicle_mechanic@male@base", "base", "Mechanic 3", AnimationOptions = {
- EmoteLoop = true,
- EmoteMoving = false,
- }},
- ["mechanic4"] = { "anim@amb@clubhouse@tutorial@bkr_tut_ig3@", "machinic_loop_mechandplayer", "Mechanic 4", AnimationOptions = {
- EmoteLoop = true,
- }},
- ["mechanic5"] = { "amb@prop_human_movie_bulb@idle_a", "idle_b", "Mechanic 5", AnimationOptions = {
- EmoteLoop = true,
- }},
- ["medic2"] = { "amb@medic@standing@tendtodead@base", "base", "Medic 2", AnimationOptions = {
- EmoteLoop = true,
- }},
- ["meditate"] = { "rcmcollect_paperleadinout@", "meditiate_idle", "Meditiate", AnimationOptions = { -- CHANGE ME
- EmoteLoop = true,
- }},
- ["meditate2"] = { "rcmepsilonism3", "ep_3_rcm_marnie_meditating", "Meditiate 2", AnimationOptions = { -- CHANGE ME
- EmoteLoop = true,
- }},
- ["meditate3"] = { "rcmepsilonism3", "base_loop", "Meditiate 3", AnimationOptions = { -- CHANGE ME
- EmoteLoop = true,
- }},
- ["metal"] = { "anim@mp_player_intincarrockstd@ps@", "idle_a", "Metal", AnimationOptions = { -- CHANGE ME
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["no"] = { "anim@heists@ornate_bank@chat_manager", "fail", "No", AnimationOptions = {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["no2"] = { "mp_player_int_upper_nod", "mp_player_int_nod_no", "No 2", AnimationOptions = {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["nosepick"] = { "anim@mp_player_intcelebrationfemale@nose_pick", "nose_pick", "Nose Pick", AnimationOptions = {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["noway"] = { "gestures@m@standing@casual", "gesture_no_way", "No Way", AnimationOptions = {
- EmoteDuration = 1500,
- EmoteMoving = true,
- }},
- ["ok"] = { "anim@mp_player_intselfiedock", "idle_a", "OK", AnimationOptions = {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["dock"] = { "anim@mp_player_intincardockstd@rds@", "idle_a", "Dock", AnimationOptions = {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["outofbreath"] = { "re@construction", "out_of_breath", "Out of Breath", AnimationOptions = {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["pickup"] = { "random@domestic", "pickup_low", "Pickup" },
- ["push"] = { "missfinale_c2ig_11", "pushcar_offcliff_f", "Push", AnimationOptions = {
- EmoteLoop = true,
- }},
- ["push2"] = { "missfinale_c2ig_11", "pushcar_offcliff_m", "Push 2", AnimationOptions = {
- EmoteLoop = true,
- }},
- ["point"] = { "gestures@f@standing@casual", "gesture_point", "Point", AnimationOptions = {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["pushup"] = { "amb@world_human_push_ups@male@idle_a", "idle_d", "Pushup", AnimationOptions = {
- EmoteLoop = true,
- }},
- ["countdown"] = { "random@street_race", "grid_girl_race_start", "Countdown", AnimationOptions = {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["pointright"] = { "mp_gun_shop_tut", "indicate_right", "Point Right", AnimationOptions = {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["salute"] = { "anim@mp_player_intincarsalutestd@ds@", "idle_a", "Salute", AnimationOptions = {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["salute2"] = { "anim@mp_player_intincarsalutestd@ps@", "idle_a", "Salute 2", AnimationOptions = {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["salute3"] = { "anim@mp_player_intuppersalute", "idle_a", "Salute 3", AnimationOptions = {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["scared"] = { "random@domestic", "f_distressed_loop", "Scared", AnimationOptions = {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["scared2"] = { "random@homelandsecurity", "knees_loop_girl", "Scared 2", AnimationOptions = {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["screwyou"] = { "misscommon@response", "screw_you", "Screw You", AnimationOptions = {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["shakeoff"] = { "move_m@_idles@shake_off", "shakeoff_1", "Shake Off", AnimationOptions = {
- EmoteMoving = true,
- EmoteDuration = 3500,
- }},
- ["shot"] = { "random@dealgonewrong", "idle_a", "Shot", AnimationOptions = {
- EmoteLoop = true,
- }},
- ["sleep"] = { "timetable@tracy@sleep@", "idle_c", "Sleep", AnimationOptions = {
- EmoteLoop = true,
- }},
- ["shrug"] = { "gestures@f@standing@casual", "gesture_shrug_hard", "Shrug", AnimationOptions = {
- EmoteMoving = true,
- EmoteDuration = 1000,
- }},
- ["shrug2"] = { "gestures@m@standing@casual", "gesture_shrug_hard", "Shrug 2", AnimationOptions = {
- EmoteMoving = true,
- EmoteDuration = 1000,
- }},
- ["sit"] = { "anim@amb@business@bgen@bgen_no_work@", "sit_phone_phoneputdown_idle_nowork", "Sit", AnimationOptions = {
- EmoteLoop = true,
- }},
- ["sit2"] = { "rcm_barry3", "barry_3_sit_loop", "Sit 2", AnimationOptions = {
- EmoteLoop = true,
- }},
- ["sit3"] = { "amb@world_human_picnic@male@idle_a", "idle_a", "Sit 3", AnimationOptions = {
- EmoteLoop = true,
- }},
- ["sit4"] = { "amb@world_human_picnic@female@idle_a", "idle_a", "Sit 4", AnimationOptions = {
- EmoteLoop = true,
- }},
- ["sit5"] = { "anim@heists@fleeca_bank@ig_7_jetski_owner", "owner_idle", "Sit 5", AnimationOptions = {
- EmoteLoop = true,
- }},
- ["sit6"] = { "timetable@jimmy@mics3_ig_15@", "idle_a_jimmy", "Sit 6", AnimationOptions = {
- EmoteLoop = true,
- }},
- ["sit7"] = { "anim@amb@nightclub@lazlow@lo_alone@", "lowalone_base_laz", "Sit 7", AnimationOptions = {
- EmoteLoop = true,
- }},
- ["sit8"] = { "timetable@jimmy@mics3_ig_15@", "mics3_15_base_jimmy", "Sit 8", AnimationOptions = {
- EmoteLoop = true,
- }},
- ["sit9"] = { "amb@world_human_stupor@male@idle_a", "idle_a", "Sit 9", AnimationOptions = {
- EmoteLoop = true,
- }},
- ["sitlow"] = { "anim@veh@lowrider@std@ds@arm@base", "sit_low_lowdoor", "Sit Lowrider", AnimationOptions = {
- EmoteLoop = true,
- }},
- ["sitlean"] = { "timetable@tracy@ig_14@", "ig_14_base_tracy", "Sit Lean", AnimationOptions = {
- EmoteLoop = true,
- }},
- ["sitsad"] = { "anim@amb@business@bgen@bgen_no_work@", "sit_phone_phoneputdown_sleeping-noworkfemale", "Sit Sad", AnimationOptions = {
- EmoteLoop = true,
- }},
- ["sitscared"] = { "anim@heists@ornate_bank@hostages@hit", "hit_loop_ped_b", "Sit Scared", AnimationOptions = {
- EmoteLoop = true,
- }},
- ["sitscared2"] = { "anim@heists@ornate_bank@hostages@ped_c@", "flinch_loop", "Sit Scared 2", AnimationOptions = {
- EmoteLoop = true,
- }},
- ["sitscared3"] = { "anim@heists@ornate_bank@hostages@ped_e@", "flinch_loop", "Sit Scared 3", AnimationOptions = {
- EmoteLoop = true,
- }},
- ["sitdrunk"] = { "timetable@amanda@drunk@base", "base", "Sit Drunk", AnimationOptions = {
- EmoteLoop = true,
- }},
- ["sitchair2"] = { "timetable@ron@ig_5_p3", "ig_5_p3_base", "Sit Chair 2", AnimationOptions = {
- EmoteLoop = true,
- }},
- ["sitchair3"] = { "timetable@reunited@ig_10", "base_amanda", "Sit Chair 3 (Female)", AnimationOptions = {
- EmoteLoop = true,
- }},
- ["sitchair4"] = { "timetable@ron@ig_3_couch", "base", "Sit Chair 4", AnimationOptions = {
- EmoteLoop = true,
- }},
- ["sitchair5"] = { "timetable@jimmy@mics3_ig_15@", "mics3_15_base_tracy", "Sit Chair Legs Crossed", AnimationOptions = {
- EmoteLoop = true,
- }},
- ["sitchair6"] = { "timetable@maid@couch@", "base", "Sit Chair Lean Back", AnimationOptions = {
- EmoteLoop = true,
- }},
- ["sitchairside"] = { "timetable@ron@ron_ig_2_alt1", "ig_2_alt1_base", "Sit Chair Side", AnimationOptions = {
- EmoteLoop = true,
- }},
- ["situp"] = { "amb@world_human_sit_ups@male@idle_a", "idle_a", "Sit Up", AnimationOptions = {
- EmoteLoop = true,
- }},
- ["clapangry"] = { "anim@arena@celeb@flat@solo@no_props@", "angry_clap_a_player_a", "Clap Angry", AnimationOptions = {
- EmoteLoop = true,
- }},
- ["slowclap3"] = { "anim@mp_player_intupperslow_clap", "idle_a", "Slow Clap 3", AnimationOptions = {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["clap"] = { "amb@world_human_cheering@male_a", "base", "Clap", AnimationOptions = {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["slowclap"] = { "anim@mp_player_intcelebrationfemale@slow_clap", "slow_clap", "Slow Clap", AnimationOptions = {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["slowclap2"] = { "anim@mp_player_intcelebrationmale@slow_clap", "slow_clap", "Slow Clap 2", AnimationOptions = {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["smell"] = { "move_p_m_two_idles@generic", "fidget_sniff_fingers", "Smell", AnimationOptions = {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["stickup"] = { "random@countryside_gang_fight", "biker_02_stickup_loop", "Stick Up", AnimationOptions = {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["stumble"] = { "misscarsteal4@actor", "stumble", "Stumble", AnimationOptions = {
- EmoteLoop = true,
- }},
- ["stunned"] = { "stungun@standing", "damage", "Stunned", AnimationOptions = {
- EmoteLoop = true,
- }},
- ["sunbathe"] = { "amb@world_human_sunbathe@male@back@base", "base", "Sunbathe", AnimationOptions = {
- EmoteLoop = true,
- }},
- ["sunbathe2"] = { "amb@world_human_sunbathe@female@back@base", "base", "Sunbathe 2", AnimationOptions = {
- EmoteLoop = true,
- }},
- ["t"] = { "missfam5_yoga", "a2_pose", "T", AnimationOptions = {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["t2"] = { "mp_sleep", "bind_pose_180", "T 2", AnimationOptions = {
- EmoteLoop = true,
- }},
- ["think5"] = { "mp_cp_welcome_tutthink", "b_think", "Think 5", AnimationOptions = {
- EmoteMoving = true,
- EmoteDuration = 2000,
- }},
- ["think"] = { "misscarsteal4@aliens", "rehearsal_base_idle_director", "Think", AnimationOptions = {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["think3"] = { "timetable@tracy@ig_8@base", "base", "Think 3", AnimationOptions = {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
-
- ["think2"] = { "missheist_jewelleadinout", "jh_int_outro_loop_a", "Think 2", AnimationOptions = {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["thumbsup3"] = { "anim@mp_player_intincarthumbs_uplow@ds@", "enter", "Thumbs Up 3", AnimationOptions = {
- EmoteMoving = true,
- EmoteDuration = 3000,
- }},
- ["thumbsup2"] = { "anim@mp_player_intselfiethumbs_up", "idle_a", "Thumbs Up 2", AnimationOptions = {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["thumbsup"] = { "anim@mp_player_intupperthumbs_up", "idle_a", "Thumbs Up", AnimationOptions = {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["type"] = { "anim@heists@prison_heiststation@cop_reactions", "cop_b_idle", "Type", AnimationOptions = {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["type2"] = { "anim@heists@prison_heistig1_p1_guard_checks_bus", "loop", "Type 2", AnimationOptions = {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["type3"] = { "mp_prison_break", "hack_loop", "Type 3", AnimationOptions = {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["type4"] = { "mp_fbi_heist", "loop", "Type 4", AnimationOptions = {
- EmoteLoop = true,
- }},
- ["warmth"] = { "amb@world_human_stand_fire@male@idle_a", "idle_a", "Warmth", AnimationOptions = {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["wave4"] = { "random@mugging5", "001445_01_gangintimidation_1_female_idle_b", "Wave 4", AnimationOptions = {
- EmoteMoving = true,
- EmoteDuration = 3000,
- }},
- ["wave2"] = { "anim@mp_player_intcelebrationfemale@wave", "wave", "Wave 2", AnimationOptions = {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["wave3"] = { "friends@fra@ig_1", "over_here_idle_a", "Wave 3", AnimationOptions = {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["wave"] = { "friends@frj@ig_1", "wave_a", "Wave", AnimationOptions = {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["wave5"] = { "friends@frj@ig_1", "wave_b", "Wave 5", AnimationOptions = {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["wave6"] = { "friends@frj@ig_1", "wave_c", "Wave 6", AnimationOptions = {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["wave7"] = { "friends@frj@ig_1", "wave_d", "Wave 7", AnimationOptions = {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["wave8"] = { "friends@frj@ig_1", "wave_e", "Wave 8", AnimationOptions = {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["wave9"] = { "gestures@m@standing@casual", "gesture_hello", "Wave 9", AnimationOptions = {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["whistle"] = { "taxi_hail", "hail_taxi", "Whistle", AnimationOptions = {
- EmoteMoving = true,
- EmoteDuration = 1300,
- }},
- ["whistle2"] = { "rcmnigel1c", "hailing_whistle_waive_a", "Whistle 2", AnimationOptions = {
- EmoteMoving = true,
- EmoteDuration = 2000,
- }},
- ["yeah"] = { "anim@mp_player_intupperair_shagging", "idle_a", "Yeah", AnimationOptions = {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["lift"] = { "random@hitch_lift", "idle_f", "Lift", AnimationOptions = {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["lol"] = { "anim@arena@celeb@flat@paired@no_props@", "laugh_a_player_b", "LOL", AnimationOptions = {
- EmoteLoop = true,
- }},
- ["lol2"] = { "anim@arena@celeb@flat@solo@no_props@", "giggle_a_player_b", "LOL 2", AnimationOptions = {
- EmoteLoop = true,
- }},
- ["statue2"] = { "fra_0_int-1", "cs_lamardavis_dual-1", "Statue 2", AnimationOptions = {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["statue3"] = { "club_intro2-0", "csb_englishdave_dual-0", "Statue 3", AnimationOptions = {
- EmoteLoop = true,
- }},
- ["gangsign"] = { "mp_player_int_uppergang_sign_a", "mp_player_int_gang_sign_a", "Gang Sign", AnimationOptions = {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["gangsign2"] = { "mp_player_int_uppergang_sign_b", "mp_player_int_gang_sign_b", "Gang Sign 2", AnimationOptions = {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["passout"] = { "missarmenian2", "drunk_loop", "Passout", AnimationOptions = {
- EmoteLoop = true,
- }},
- ["passout2"] = { "missarmenian2", "corpse_search_exit_ped", "Passout 2", AnimationOptions = {
- EmoteLoop = true,
- }},
- ["passout3"] = { "anim@gangops@morgue@table@", "body_search", "Passout 3", AnimationOptions = {
- EmoteLoop = true,
- }},
- ["passout4"] = { "mini@cpr@char_b@cpr_def", "cpr_pumpchest_idle", "Passout 4", AnimationOptions = {
- EmoteLoop = true,
- }},
- ["passout5"] = { "random@mugging4", "flee_backward_loop_shopkeeper", "Passout 5", AnimationOptions = {
- EmoteLoop = true,
- }},
- ["petting"] = { "creatures@rottweiler@tricks@", "petting_franklin", "Petting", AnimationOptions = {
- EmoteLoop = true,
- }},
- ["crawl"] = { "move_injured_ground", "front_loop", "Crawl", AnimationOptions = {
- EmoteLoop = true,
- }},
- ["flip2"] = { "anim@arena@celeb@flat@solo@no_props@", "cap_a_player_a", "Flip 2" },
- ["flip"] = { "anim@arena@celeb@flat@solo@no_props@", "flip_a_player_a", "Flip" },
- ["slide"] = { "anim@arena@celeb@flat@solo@no_props@", "slide_a_player_a", "Slide" },
- ["slide2"] = { "anim@arena@celeb@flat@solo@no_props@", "slide_b_player_a", "Slide 2" },
- ["slide3"] = { "anim@arena@celeb@flat@solo@no_props@", "slide_c_player_a", "Slide 3" },
- ["slugger"] = { "anim@arena@celeb@flat@solo@no_props@", "slugger_a_player_a", "Slugger" },
- ["flipoff"] = { "anim@arena@celeb@podium@no_prop@", "flip_off_a_1st", "Flip Off", AnimationOptions = {
- EmoteMoving = true,
- }},
- ["flipoff2"] = { "anim@arena@celeb@podium@no_prop@", "flip_off_c_1st", "Flip Off 2", AnimationOptions = {
- EmoteMoving = true,
- }},
- ["bow"] = { "anim@arena@celeb@podium@no_prop@", "regal_c_1st", "Bow", AnimationOptions = {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["bow2"] = { "anim@arena@celeb@podium@no_prop@", "regal_a_1st", "Bow 2", AnimationOptions = {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["keyfob"] = { "anim@mp_player_intmenu@key_fob@", "fob_click", "Key Fob", AnimationOptions = {
- EmoteLoop = false,
- EmoteMoving = true,
- EmoteDuration = 1000,
- }},
- ["reaching"] = { "move_m@intimidation@cop@unarmed", "idle", "Reaching", AnimationOptions = {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["slap"] = { "melee@unarmed@streamed_variations", "plyr_takedown_front_slap", "Slap", AnimationOptions = {
- EmoteLoop = true,
- EmoteMoving = true,
- EmoteDuration = 2000,
- }},
- ["headbutt"] = { "melee@unarmed@streamed_variations", "plyr_takedown_front_headbutt", "Headbutt" },
- ["fishdance"] = { "anim@mp_player_intupperfind_the_fish", "idle_a", "Fish Dance", AnimationOptions = {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["peace"] = { "mp_player_int_upperpeace_sign", "mp_player_int_peace_sign", "Peace", AnimationOptions = {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["peace2"] = { "anim@mp_player_intupperpeace", "idle_a", "Peace 2", AnimationOptions = {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["peace3"] = { "anim@mp_player_intupperpeace", "idle_a_fp", "Peace 3", AnimationOptions = {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["peace4"] = { "anim@mp_player_intincarpeacestd@ds@", "idle_a", "Peace 4", AnimationOptions = {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["peace5"] = { "anim@mp_player_intincarpeacestd@ds@", "idle_a_fp", "Peace 5", AnimationOptions = {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["peace6"] = { "anim@mp_player_intincarpeacebodhi@ds@", "idle_a", "Peace 6", AnimationOptions = {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["peace7"] = { "anim@mp_player_intincarpeacebodhi@ds@", "idle_a_fp", "Peace 7", AnimationOptions = {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["peacef"] = { "anim@mp_player_intcelebrationfemale@peace", "peace", "Peace Female", AnimationOptions = {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["cpr"] = { "mini@cpr@char_a@cpr_str", "cpr_pumpchest", "CPR", AnimationOptions = {
- EmoteLoop = true,
- }},
- ["cpr2"] = { "mini@cpr@char_a@cpr_str", "cpr_pumpchest", "CPR 2", AnimationOptions = {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["ledge"] = { "missfbi1", "ledge_loop", "Ledge", AnimationOptions = {
- EmoteLoop = true,
- }},
- ["airplane"] = { "missfbi1", "ledge_loop", "Air Plane", AnimationOptions = {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["peek"] = { "random@paparazzi@peek", "left_peek_a", "Peek", AnimationOptions = {
- EmoteLoop = true,
- }},
- ["cough"] = { "timetable@gardener@smoking_joint", "idle_cough", "Cough", AnimationOptions = {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["stretch"] = { "mini@triathlon", "idle_e", "Stretch", AnimationOptions = {
- EmoteLoop = true,
- }},
- ["stretch2"] = { "mini@triathlon", "idle_f", "Stretch 2", AnimationOptions = {
- EmoteLoop = true,
- }},
- ["stretch3"] = { "mini@triathlon", "idle_d", "Stretch 3", AnimationOptions = {
- EmoteLoop = true,
- }},
- ["stretch4"] = { "rcmfanatic1maryann_stretchidle_b", "idle_e", "Stretch 4", AnimationOptions = {
- EmoteLoop = true,
- }},
- ["celebrate"] = { "rcmfanatic1celebrate", "celebrate", "Celebrate", AnimationOptions = {
- EmoteLoop = true,
- }},
- ["punching"] = { "rcmextreme2", "loop_punching", "Punching", AnimationOptions = {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["superhero"] = { "rcmbarry", "base", "Superhero", AnimationOptions = {
- EmoteLoop = true,
- }},
- ["superhero2"] = { "rcmbarry", "base", "Superhero 2", AnimationOptions = {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["mindcontrol"] = { "rcmbarry", "mind_control_b_loop", "Mind Control", AnimationOptions = {
- EmoteLoop = true,
- }},
- ["mindcontrol2"] = { "rcmbarry", "bar_1_attack_idle_aln", "Mind Control 2", AnimationOptions = {
- EmoteLoop = true,
- }},
- ["clown"] = { "rcm_barry2", "clown_idle_0", "Clown", AnimationOptions = {
- EmoteLoop = true,
- }},
- ["clown2"] = { "rcm_barry2", "clown_idle_1", "Clown 2", AnimationOptions = {
- EmoteLoop = true,
- }},
- ["clown3"] = { "rcm_barry2", "clown_idle_2", "Clown 3", AnimationOptions = {
- EmoteLoop = true,
- }},
- ["clown4"] = { "rcm_barry2", "clown_idle_3", "Clown 4", AnimationOptions = {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["clown5"] = { "rcm_barry2", "clown_idle_6", "Clown 5", AnimationOptions = {
- EmoteLoop = true,
- }},
- ["tryclothes"] = { "mp_clothing@female@trousers", "try_trousers_neutral_a", "Try Clothes", AnimationOptions = {
- EmoteLoop = true,
- }},
- ["tryclothes2"] = { "mp_clothing@female@shirt", "try_shirt_positive_a", "Try Clothes 2", AnimationOptions = {
- EmoteLoop = true,
- }},
- ["tryclothes3"] = { "mp_clothing@female@shoes", "try_shoes_positive_a", "Try Clothes 3", AnimationOptions = {
- EmoteLoop = true,
- }},
- ["nervous2"] = { "mp_missheist_countrybank@nervous", "nervous_idle", "Nervous 2", AnimationOptions = {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["nervous"] = { "amb@world_human_bum_standing@twitchy@idle_a", "idle_c", "Nervous", AnimationOptions = {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["nervous3"] = { "rcmme_tracey1", "nervous_loop", "Nervous 3", AnimationOptions = {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["uncuff"] = { "mp_arresting", "a_uncuff", "Uncuff", AnimationOptions = {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["namaste"] = { "timetable@amanda@ig_4", "ig_4_base", "Namaste", AnimationOptions = {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["threaten"] = { "random@atmrobberygen", "b_atm_mugging", "Threaten", AnimationOptions = {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["radio"] = { "random@arrests", "generic_radio_chatter", "Radio", AnimationOptions = {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["pull"] = { "random@mugging4", "struggle_loop_b_thief", "Pull", AnimationOptions = {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["bird"] = { "random@peyote@bird", "wakeup", "Bird" },
- ["chicken"] = { "random@peyote@chicken", "wakeup", "Chicken", AnimationOptions = {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["bark"] = { "random@peyote@dog", "wakeup", "Bark" },
- ["rabbit"] = { "random@peyote@rabbit", "wakeup", "Rabbit" },
- ["spiderman"] = { "missexile3", "ex03_train_roof_idle", "Spider-Man", AnimationOptions = {
- EmoteLoop = true,
- }},
- ["boi"] = { "special_ped@jane@monologue_5@monologue_5c", "brotheradrianhasshown_2", "BOI", AnimationOptions = {
- EmoteMoving = true,
- EmoteDuration = 3000,
- }},
- ["adjust"] = { "missmic4", "michael_tux_fidget", "Adjust", AnimationOptions = {
- EmoteMoving = true,
- EmoteDuration = 4000,
- }},
- ["handsup"] = { "missminuteman_1ig_2", "handsup_base", "Hands Up", AnimationOptions = {
- EmoteMoving = true,
- EmoteLoop = true,
- }},
- ["handsup2"] = { "anim@mp_player_intuppersurrender", "idle_a_fp", "Hands Up 2", AnimationOptions = {
- EmoteMoving = true,
- EmoteLoop = true,
- }},
- ["valet"] = { "anim@amb@casino@valet_scenario@pose_a@", "base_a_m_y_vinewood_01", "Valet", AnimationOptions = {
- EmoteLoop = true,
- EmoteMoving = false,
- }},
- ["valet2"] = { "anim@amb@casino@valet_scenario@pose_b@", "base_a_m_y_vinewood_01", "Valet 2", AnimationOptions = {
- EmoteLoop = true,
- EmoteMoving = false,
- }},
- ["valet3"] = { "anim@amb@casino@valet_scenario@pose_d@", "base_a_m_y_vinewood_01", "Valet 3", AnimationOptions = {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["tighten"] = { "timetable@denice@ig_1", "idle_b", "Tigten (Yoga)", AnimationOptions = {
- EmoteMoving = false,
- EmoteLoop = true,
- }},
- ["fspose"] = { "missfam5_yoga", "c2_pose", "F Sex Pose", AnimationOptions = {
- EmoteMoving = false,
- EmoteLoop = true,
- }},
- ["fspose2"] = { "missfam5_yoga", "c6_pose", "F Sex Pose 2", AnimationOptions = {
- EmoteMoving = false,
- EmoteLoop = true,
- }},
- ["fspose4"] = { "anim@amb@carmeet@checkout_car@", "female_c_idle_d", "F Sex Pose 4", AnimationOptions = {
- EmoteMoving = false,
- EmoteLoop = true,
- }},
- ["showerf"] = { "mp_safehouseshower@female@", "shower_enter_into_idle", "Shower Enter Female", AnimationOptions = {
- EmoteMoving = false,
- EmoteLoop = true,
- }},
- ["showerf2"] = { "mp_safehouseshower@female@", "shower_idle_a", "Shower Female", AnimationOptions = {
- EmoteMoving = false,
- EmoteLoop = true,
- }},
- ["showerf3"] = { "mp_safehouseshower@female@", "shower_idle_b", "Shower Female 2", AnimationOptions = {
- EmoteMoving = false,
- EmoteLoop = true,
- }},
- ["showerm"] = { "mp_safehouseshower@male@", "male_shower_idle_a", "Shower Enter Male", AnimationOptions = {
- EmoteMoving = false,
- EmoteLoop = true,
- }},
- ["showerm2"] = { "mp_safehouseshower@male@", "male_shower_idle_b", "Shower Male 2", AnimationOptions = {
- EmoteMoving = false,
- EmoteLoop = true,
- }},
- ["showerm3"] = { "mp_safehouseshower@male@", "male_shower_idle_c", "Shower Male 3", AnimationOptions = {
- EmoteMoving = false,
- EmoteLoop = true,
- }},
- ["showerm4"] = { "mp_safehouseshower@male@", "male_shower_idle_d", "Shower Male 4", AnimationOptions = {
- EmoteMoving = false,
- EmoteLoop = true,
- }},
- ["picklock"] = { "missheistfbisetup1", "hassle_intro_loop_f", "Picklock", AnimationOptions = {
- EmoteMoving = true,
- EmoteLoop = true,
- }},
- ["cleanhands"] = { "missheist_agency3aig_23", "urinal_sink_loop", "Clean Them Filthy Hands", AnimationOptions = {
- EmoteMoving = true,
- EmoteLoop = true,
- }},
- ["cleanface"] = { "switch@michael@wash_face", "loop_michael", "Clean Your Face", AnimationOptions = {
- EmoteMoving = true,
- EmoteLoop = true,
- }},
- ["buzz"] = { "anim@apt_trans@buzzer", "buzz_reg", "Buzz Door", AnimationOptions = {
- EmoteLoop = false,
- EmoteMoving = false,
- }},
- ["piss"] = { "missbigscore1switch_trevor_piss", "piss_loop", "Piss (Male)", AnimationOptions = {
- EmoteMoving = false,
- EmoteLoop = true,
- }},
- ["grieve"] = { "anim@miss@low@fin@vagos@", "idle_ped05", "Grieve The Dead", AnimationOptions = {
- EmoteMoving = true,
- EmoteLoop = true,
- }},
- ["respect"] = { "anim@mp_player_intcelebrationmale@respect", "respect", "Respect Male", AnimationOptions = {
- EmoteMoving = true,
- EmoteLoop = false,
- }},
- ["respectf"] = { "anim@mp_player_intcelebrationfemale@respect", "respect", "Respect Female", AnimationOptions = {
- EmoteMoving = true,
- EmoteLoop = false,
- }},
- ["bang"] = { "anim@mp_player_intcelebrationfemale@bang_bang", "bang_bang", "Bang Bang ", AnimationOptions = {
- EmoteMoving = false,
- EmoteDuration = 2500,
- }},
- ["checkcar"] = { "anim@amb@carmeet@checkout_car@male_a@idles", "idle_b", "Check Out · Female ", AnimationOptions = {
- EmoteLoop = true,
- }},
- ["checkcar2"] = { "anim@amb@carmeet@checkout_car@male_c@idles", "idle_a", "Check Out 2 · Male ", AnimationOptions = {
- EmoteLoop = true,
- }},
- ["showboobs"] = { "mini@strip_club@backroom@", "stripper_b_backroom_idle_b", "Show Boobs ", AnimationOptions = {
- EmoteMoving = false,
- EmoteDuration = 6000,
- }},
- ["showboobs2"] = { "mini@strip_club@idles@stripper", "stripper_idle_05", "Show Boobs 2", AnimationOptions = {
- EmoteMoving = false,
- EmoteDuration = 6000,
- }},
- ["watchstripper"] = { "amb@world_human_strip_watch_stand@male_c@idle_a", "idle_b", "Watch Stripper ", AnimationOptions = {
- EmoteMoving = false,
- EmoteDuration = 6000,
- }},
- ["hhands"] = { "misssnowie@hearthands", "base", "Heart Hands", AnimationOptions = {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
-
-
-
- -----------------------------------------------------------------------------------------------------------
- ------ The male and female 'interaction menu' emotes from GTA Online can be found under the following animation directories:
- ------
- ------ Male: anim@mp_player_intcelebrationmale
- ------
- ------ Female: anim@mp_player_intcelebrationfemale
-
- -----------------------------------------------------------------------------------------------------------
-
-
-
-
- -----------------------------------------------------------------------------------------------------------
- ------ These are Scenarios, some of these dont work on women and some other issues, but still good to have.
- -----------------------------------------------------------------------------------------------------------
-
-
- ["atm"] = { "Scenario", "PROP_HUMAN_ATM", "ATM" },
- ["bbq"] = { "MaleScenario", "PROP_HUMAN_BBQ", "BBQ" },
- ["bumbin"] = { "Scenario", "PROP_HUMAN_BUM_BIN", "Bum Bin" },
- ["bumsleep"] = { "Scenario", "WORLD_HUMAN_BUM_SLUMPED", "Bum Sleep" },
- ["cheer"] = { "Scenario", "WORLD_HUMAN_CHEERING", "Cheer" },
- ["chinup"] = { "Scenario", "PROP_HUMAN_MUSCLE_CHIN_UPS", "Chinup" },
- ["cop"] = { "Scenario", "WORLD_HUMAN_COP_IDLES", "Cop" },
- ["drill"] = { "Scenario", "WORLD_HUMAN_CONST_DRILL", "Construction Drilling" },
- ["filmshocking"] = { "Scenario", "WORLD_HUMAN_MOBILE_FILM_SHOCKING", "Film Shocking" },
- ["flex"] = { "Scenario", "WORLD_HUMAN_MUSCLE_FLEX", "Flex" },
- ["guard"] = { "Scenario", "WORLD_HUMAN_GUARD_STAND", "Guard" },
- ["garden"] = { "Scenario", "WORLD_HUMAN_GARDENER_PLANT", "Gardening" },
- ["hammer"] = { "Scenario", "WORLD_HUMAN_HAMMERING", "Hammer" },
- ["hangout"] = { "Scenario", "WORLD_HUMAN_HANG_OUT_STREET", "Hangout" },
- ["impatient"] = { "Scenario", "WORLD_HUMAN_STAND_IMPATIENT", "Impatient" },
- ["janitor"] = { "Scenario", "WORLD_HUMAN_JANITOR", "Janitor" },
- ["jog"] = { "Scenario", "WORLD_HUMAN_JOG_STANDING", "Jog" },
- ["kneel"] = { "Scenario", "CODE_HUMAN_MEDIC_KNEEL", "Kneel" },
- ["lean"] = { "Scenario", "WORLD_HUMAN_LEANING", "Lean" },
- ["leanbar"] = { "Scenario", "PROP_HUMAN_BUM_SHOPPING_CART", "Lean Bar" },
- ["lookout"] = { "Scenario", "CODE_HUMAN_CROSS_ROAD_WAIT", "Lookout" },
- ["maid"] = { "Scenario", "WORLD_HUMAN_MAID_CLEAN", "Maid" },
- ["medic"] = { "Scenario", "CODE_HUMAN_MEDIC_TEND_TO_DEAD", "Medic" },
- ["musician"] = { "MaleScenario", "WORLD_HUMAN_MUSICIAN", "Musician" }, -- Ambient Music Doesn't Seem To Work For Female, Hence It's Male Only
- ["notepad2"] = { "Scenario", "CODE_HUMAN_MEDIC_TIME_OF_DEATH", "Notepad 2" },
- ["parkingmeter"] = { "Scenario", "PROP_HUMAN_PARKING_METER", "Parking Meter" },
- ["party"] = { "Scenario", "WORLD_HUMAN_PARTYING", "Party" },
- ["texting"] = { "Scenario", "WORLD_HUMAN_STAND_MOBILE", "Texting" },
- ["prosthigh"] = { "Scenario", "WORLD_HUMAN_PROSTITUTE_HIGH_CLASS", "Prostitue High" },
- ["prostlow"] = { "Scenario", "WORLD_HUMAN_PROSTITUTE_LOW_CLASS", "Prostitue Low" },
- ["puddle"] = { "Scenario", "WORLD_HUMAN_BUM_WASH", "Puddle" },
- ["record"] = { "Scenario", "WORLD_HUMAN_MOBILE_FILM_SHOCKING", "Record" },
-
-
- -- Sitchair is a litte special, since you want the player to be seated correctly.
- -- So we set it as "ScenarioObject" and do TaskStartScenarioAtPosition() instead of "AtPlace"
-
- ["sitchair"] = { "ScenarioObject", "PROP_HUMAN_SEAT_CHAIR_MP_PLAYER", "Sit Chair" },
- ["smoke"] = { "Scenario", "WORLD_HUMAN_SMOKING", "Smoke" },
- ["smokeweed"] = { "MaleScenario", "WORLD_HUMAN_DRUG_DEALER", "Smoke Weed (Male)" }, -- Male
- ["smokepot"] = { "Scenario", "WORLD_HUMAN_SMOKING_POT", "Smoke Weed (Female)" }, -- Female
- ["statue"] = { "Scenario", "WORLD_HUMAN_HUMAN_STATUE", "Statue" },
- ["sunbathe3"] = { "Scenario", "WORLD_HUMAN_SUNBATHE", "Sunbathe 3" },
- ["sunbatheback"] = { "Scenario", "WORLD_HUMAN_SUNBATHE_BACK", "Sunbathe Back" },
- ["weld"] = { "Scenario", "WORLD_HUMAN_WELDING", "Weld" },
- ["windowshop"] = { "Scenario", "WORLD_HUMAN_WINDOW_SHOP_BROWSE", "Window Shop" },
- ["yoga"] = { "Scenario", "WORLD_HUMAN_YOGA", "Yoga" },
-
-
- -- CASINO DLC EMOTES (Requires gamebuild 2060 or higher)
-
-
- ["karate"] = { "anim@mp_player_intcelebrationfemale@karate_chops", "karate_chops", "Karate" },
- ["karate2"] = { "anim@mp_player_intcelebrationmale@karate_chops", "karate_chops", "Karate 2" },
- ["cutthroat"] = { "anim@mp_player_intcelebrationmale@cut_throat", "cut_throat", "Cut Throat" },
- ["cutthroat2"] = { "anim@mp_player_intcelebrationfemale@cut_throat", "cut_throat", "Cut Throat 2" },
- ["mindblown"] = { "anim@mp_player_intcelebrationmale@mind_blown", "mind_blown", "Mind Blown", AnimationOptions = {
- EmoteMoving = true,
- EmoteDuration = 4000
- }},
- ["mindblown2"] = { "anim@mp_player_intcelebrationfemale@mind_blown", "mind_blown", "Mind Blown 2", AnimationOptions = {
- EmoteMoving = true,
- EmoteDuration = 4000
- }},
- ["boxing"] = { "anim@mp_player_intcelebrationmale@shadow_boxing", "shadow_boxing", "Boxing", AnimationOptions = {
- EmoteMoving = true,
- EmoteDuration = 4000
- }},
- ["boxing2"] = { "anim@mp_player_intcelebrationfemale@shadow_boxing", "shadow_boxing", "Boxing 2", AnimationOptions = {
- EmoteMoving = true,
- EmoteDuration = 4000
- }},
- ["stink"] = { "anim@mp_player_intcelebrationfemale@stinker", "stinker", "Stink", AnimationOptions = {
- EmoteMoving = true,
- EmoteLoop = true
- }},
- ["think4"] = { "anim@amb@casino@hangout@ped_male@stand@02b@idles", "idle_a", "Think 4", AnimationOptions = {
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["adjusttie"] = { "clothingtie", "try_tie_positive_a", "Adjust Tie", AnimationOptions = {
- EmoteMoving = true,
- EmoteDuration = 5000
- }},
-}
-
-
---- EMOTES WITH 1 OR 2 PROPS ---
-
-DP.PropEmotes = {
- ["umbrella"] = { "amb@world_human_drinking@coffee@male@base", "base", "Umbrella", AnimationOptions = {
- Prop = "p_amb_brolly_01",
- PropBone = 57005,
- PropPlacement = { 0.15, 0.005, 0.0, 87.0, -20.0, 180.0 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ['umbrella2'] = { 'rcmnigel1d', 'base_club_shoulder', 'Umbrella 2', AnimationOptions = {
- Prop = 'p_amb_brolly_01',
- PropBone = 28422,
- PropPlacement = { 0.0700, 0.0100, 0.1100, 2.3402393, -150.9605721, 57.3374916 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
-
- -----------------------------------------------------------------------------------------------------
- ------ This is an example of an emote with 2 props, pretty simple! ----------------------------------
- -----------------------------------------------------------------------------------------------------
-
- ["notepad"] = { "missheistdockssetup1clipboard@base", "base", "Notepad", AnimationOptions = {
- Prop = 'prop_notepad_01',
- PropBone = 18905,
- PropPlacement = { 0.1, 0.02, 0.05, 10.0, 0.0, 0.0 },
- SecondProp = 'prop_pencil_01',
- SecondPropBone = 58866,
- SecondPropPlacement = { 0.11, -0.02, 0.001, -120.0, 0.0, 0.0 },
- -- EmoteLoop is used for emotes that should loop, its as simple as that.
- -- Then EmoteMoving is used for emotes that should only play on the upperbody.
- -- The code then checks both values and sets the MovementType to the correct one
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["box"] = { "anim@heists@box_carry@", "idle", "Box", AnimationOptions = {
- Prop = "hei_prop_heist_box",
- PropBone = 60309,
- PropPlacement = { 0.025, 0.08, 0.255, -145.0, 290.0, 0.0 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["rose"] = { "anim@heists@humane_labs@finale@keycards", "ped_a_enter_loop", "Rose", AnimationOptions = {
- Prop = "prop_single_rose",
- PropBone = 18905,
- PropPlacement = { 0.13, 0.15, 0.0, -100.0, 0.0, -20.0 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["smoke2"] = { "amb@world_human_aa_smoke@male@idle_a", "idle_c", "Smoke 2", AnimationOptions = {
- Prop = 'prop_cs_ciggy_01',
- PropBone = 28422,
- PropPlacement = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["smoke3"] = { "amb@world_human_aa_smoke@male@idle_a", "idle_b", "Smoke 3", AnimationOptions = {
- Prop = 'prop_cs_ciggy_01',
- PropBone = 28422,
- PropPlacement = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["smoke4"] = { "amb@world_human_smoking@female@idle_a", "idle_b", "Smoke 4", AnimationOptions = {
- Prop = 'prop_cs_ciggy_01',
- PropBone = 28422,
- PropPlacement = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["bong"] = { "anim@safehouse@bong", "bong_stage3", "Bong", AnimationOptions = {
- Prop = 'hei_heist_sh_bong_01',
- PropBone = 18905,
- PropPlacement = { 0.10, -0.25, 0.0, 95.0, 190.0, 180.0 },
- }},
- ["fishing1"] = { "amb@world_human_stand_fishing@idle_a", "idle_a", "Fishing 1", AnimationOptions = {
- Prop = 'prop_fishing_rod_01',
- PropBone = 60309,
- PropPlacement = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 },
- EmoteLoop = true,
- EmoteMoving = false,
- }},
- ["fishing2"] = { "amb@world_human_stand_fishing@idle_a", "idle_b", "Fishing 2", AnimationOptions = {
- Prop = 'prop_fishing_rod_01',
- PropBone = 60309,
- PropPlacement = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 },
- EmoteLoop = true,
- EmoteMoving = false,
- }},
- ["fishing3"] = { "amb@world_human_stand_fishing@idle_a", "idle_c", "Fishing 3", AnimationOptions = {
- Prop = 'prop_fishing_rod_01',
- PropBone = 60309,
- PropPlacement = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 },
- EmoteLoop = true,
- EmoteMoving = false,
- }},
- ["suitcase"] = { "move_weapon@jerrycan@generic", "idle", "Suitcase", AnimationOptions = {
- Prop = "prop_ld_suitcase_01",
- PropBone = 57005,
- PropPlacement = { 0.35, 0.0, 0.0, 0.0, 266.0, 90.0 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["suitcase2"] = { "move_weapon@jerrycan@generic", "idle", "Suitcase 2", AnimationOptions = {
- Prop = "prop_security_case_01",
- PropBone = 57005,
- PropPlacement = { 0.13, 0.0, -0.01, 0.0, 280.0, 90.0 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["boombox"] = { "move_weapon@jerrycan@generic", "idle", "Boombox", AnimationOptions = {
- Prop = "prop_boombox_01",
- PropBone = 57005,
- PropPlacement = { 0.27, 0.0, 0.0, 0.0, 263.0, 58.0 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["toolbox"] = { "move_weapon@jerrycan@generic", "idle", "Toolbox", AnimationOptions = {
- Prop = "prop_tool_box_04",
- PropBone = 28422,
- PropPlacement = { 0.3960, 0.0410, -0.0030, -90.00, 0.0, 90.00 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["toolbox2"] = { "move_weapon@jerrycan@generic", "idle", "Toolbox 2", AnimationOptions = {
- Prop = "imp_prop_tool_box_01a",
- PropBone = 28422,
- PropPlacement = { 0.3700, 0.0200, 0.0, 90.00, 0.0, -90.00 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["gbag"] = { "missfbi4prepp1", "_idle_garbage_man", "Garbage Bag", AnimationOptions = {
- Prop = "prop_cs_street_binbag_01",
- PropBone = 28422,
- PropPlacement = { 0.0, 0.0400, -0.0200, 0.0, 0.0, 0.0 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["beerbox"] = { "move_weapon@jerrycan@generic", "idle", "Beer Box 1", AnimationOptions = {
- Prop = "v_ret_ml_beerdus",
- PropBone = 57005,
- PropPlacement = { 0.22, 0.0, 0.0, 0.0, 266.0, 48.0 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["beerbox2"] = { "move_weapon@jerrycan@generic", "idle", "Beer Box 2", AnimationOptions = {
- Prop = "v_ret_ml_beeram",
- PropBone = 57005,
- PropPlacement = { 0.22, 0.0, 0.0, 0.0, 266.0, 48.0 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["beerbox3"] = { "move_weapon@jerrycan@generic", "idle", "Beer Box 3", AnimationOptions = {
- Prop = "v_ret_ml_beerpride",
- PropBone = 57005,
- PropPlacement = { 0.22, 0.0, 0.0, 0.0, 266.0, 48.0 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["beerbox4"] = { "move_weapon@jerrycan@generic", "idle", "Beer Box 4", AnimationOptions = {
- Prop = "v_ret_ml_beerbar",
- PropBone = 57005,
- PropPlacement = { 0.22, 0.0, 0.0, 0.0, 266.0, 60.0 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["mugshot"] = { "mp_character_creation@customise@male_a", "loop", "Mugshot", AnimationOptions = {
- Prop = 'prop_police_id_board',
- PropBone = 58868,
- PropPlacement = { 0.12, 0.24, 0.0, 5.0, 0.0, 70.0 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["coffee"] = { "amb@world_human_drinking@coffee@male@idle_a", "idle_c", "Coffee", AnimationOptions = {
- Prop = 'p_amb_coffeecup_01',
- PropBone = 28422,
- PropPlacement = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["whiskey"] = { "amb@world_human_drinking@coffee@male@idle_a", "idle_c", "Whiskey", AnimationOptions = {
- Prop = 'prop_drink_whisky',
- PropBone = 28422,
- PropPlacement = { 0.01, -0.01, -0.06, 0.0, 0.0, 0.0 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["whiskeyb"] = { "amb@world_human_drinking@beer@male@idle_a", "idle_a", "Whiskey Bottle", AnimationOptions = {
- Prop = 'ba_prop_battle_whiskey_bottle_2_s',
- PropBone = 28422,
- PropPlacement = { 0.0, 0.0, 0.05, 0.0, 0.0, 0.0 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["beer"] = { "amb@world_human_drinking@beer@male@idle_a", "idle_c", "Beer", AnimationOptions = {
- Prop = 'prop_amb_beer_bottle',
- PropBone = 28422,
- PropPlacement = { 0.0, 0.0, 0.06, 0.0, 15.0, 0.0 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["whiskeyb2"] = { "amb@world_human_drinking@beer@male@idle_a", "idle_a", "Whiskey Bottle 2", AnimationOptions = {
- Prop = 'ba_prop_battle_whiskey_bottle_2_s',
- PropBone = 28422,
- PropPlacement = { 0.0, 0.0, 0.05, 0.0, 0.0, 0.0 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["beer2"] = { "amb@world_human_drinking@beer@male@idle_a", "idle_c", "Beer 2", AnimationOptions = {
- Prop = 'prop_amb_beer_bottle',
- PropBone = 28422,
- PropPlacement = { 0.0, 0.0, 0.06, 0.0, 15.0, 0.0 },
- EmoteLoop = true,
- EmoteMoving = false,
- }},
- ["whiskeyb3"] = { "amb@world_human_drinking@beer@male@idle_a", "idle_a", "Whiskey Bottle 3", AnimationOptions = {
- Prop = 'ba_prop_battle_whiskey_bottle_2_s',
- PropBone = 28422,
- PropPlacement = { 0.0, 0.0, 0.05, 0.0, 0.0, 0.0 },
- EmoteLoop = true,
- EmoteMoving = false,
- }},
- ["beerf"] = { "amb@world_human_drinking@beer@female@idle_a", "idle_a", "Beer Female", AnimationOptions = {
- Prop = 'prop_amb_beer_bottle',
- PropBone = 28422,
- PropPlacement = { 0.0, -0.0, 0.05, 15.0, 15.0, 0.0 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["wine2"] = { "amb@world_human_drinking@beer@female@idle_a", "idle_e", "Wine 2 - Bottle", AnimationOptions = {
- Prop = 'prop_wine_rose',
- PropBone = 28422,
- PropPlacement = { -0.0, 0.04, -0.19, 10.0, 0.0, 0.0 },
- EmoteLoop = true,
- EmoteMoving = true,
- --- PropPlacement = {-0.0, 0.03, -0.20, 5.0, 0.0, 0.0},
- --- F&B L&R U&D R.F&B
- }},
- ["beerf3"] = { "amb@world_human_drinking@beer@female@idle_a", "idle_a", "Beer Female 3", AnimationOptions = {
- Prop = 'prop_amb_beer_bottle',
- PropBone = 28422,
- PropPlacement = { 0.0, -0.0, 0.05, 15.0, 15.0, 0.0 },
- EmoteLoop = true,
- EmoteMoving = false,
- }},
- ["wine3"] = { "amb@world_human_drinking@beer@female@idle_a", "idle_e", "Wine 3 - Bottle", AnimationOptions = {
- Prop = 'prop_wine_rose',
- PropBone = 28422,
- PropPlacement = { -0.0, 0.04, -0.19, 10.0, 0.0, 0.0 },
- EmoteLoop = true,
- EmoteMoving = false,
- --- PropPlacement = {-0.0, 0.03, -0.20, 5.0, 0.0, 0.0},
- --- F&B L&R U&D R.F&B
- }},
- ["cup"] = { "amb@world_human_drinking@coffee@male@idle_a", "idle_c", "Cup", AnimationOptions = {
- Prop = 'prop_plastic_cup_02',
- PropBone = 28422,
- PropPlacement = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["donut"] = { "mp_player_inteat@burger", "mp_player_int_eat_burger", "Donut", AnimationOptions = {
- Prop = 'prop_amb_donut',
- PropBone = 18905,
- PropPlacement = { 0.13, 0.05, 0.02, -50.0, 16.0, 60.0 },
- EmoteMoving = true,
- }},
- ["burger"] = { "mp_player_inteat@burger", "mp_player_int_eat_burger", "Burger", AnimationOptions = {
- Prop = 'prop_cs_burger_01',
- PropBone = 18905,
- PropPlacement = { 0.13, 0.05, 0.02, -50.0, 16.0, 60.0 },
- EmoteMoving = true,
- }},
- ["sandwich"] = { "mp_player_inteat@burger", "mp_player_int_eat_burger", "Sandwich", AnimationOptions = {
- Prop = 'prop_sandwich_01',
- PropBone = 18905,
- PropPlacement = { 0.13, 0.05, 0.02, -50.0, 16.0, 60.0 },
- EmoteMoving = true,
- }},
- ["soda"] = { "amb@world_human_drinking@coffee@male@idle_a", "idle_c", "Soda", AnimationOptions = {
- Prop = 'prop_ecola_can',
- PropBone = 28422,
- PropPlacement = { 0.0, 0.0, 0.0, 0.0, 0.0, 130.0 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["water"] = { "amb@world_human_drinking@coffee@male@idle_a", "idle_c", "Water", AnimationOptions = {
- Prop = 'ba_prop_club_water_bottle',
- PropBone = 28422,
- PropPlacement = { 0.0, 0.0, -0.090, 0.0, 0.0, 130.0 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["egobar"] = { "mp_player_inteat@burger", "mp_player_int_eat_burger", "Ego Bar", AnimationOptions = {
- Prop = 'prop_choc_ego',
- PropBone = 60309,
- PropPlacement = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 },
- EmoteMoving = true,
- }},
- ["candy"] = { "mp_player_inteat@pnq", "loop", "Candy", AnimationOptions = {
- Prop = 'prop_candy_pqs',
- PropBone = 60309,
- PropPlacement = { -0.0300, 0.0180, 0.0, 180.0, 180.0, -88.099 },
- EmoteMoving = true,
- }},
- ["wine"] = { "anim@heists@humane_labs@finale@keycards", "ped_a_enter_loop", "Wine", AnimationOptions = {
- Prop = 'prop_drink_redwine',
- PropBone = 18905,
- PropPlacement = { 0.10, -0.03, 0.03, -100.0, 0.0, -10.0 },
- EmoteMoving = true,
- EmoteLoop = true
- }},
- ["flute"] = { "anim@heists@humane_labs@finale@keycards", "ped_a_enter_loop", "Flute", AnimationOptions = {
- Prop = 'prop_champ_flute',
- PropBone = 18905,
- PropPlacement = { 0.10, -0.03, 0.03, -100.0, 0.0, -10.0 },
- EmoteMoving = true,
- EmoteLoop = true
- }},
- ["champagne"] = { "anim@heists@humane_labs@finale@keycards", "ped_a_enter_loop", "Champagne", AnimationOptions = {
- Prop = 'prop_drink_champ',
- PropBone = 18905,
- PropPlacement = { 0.10, -0.03, 0.03, -100.0, 0.0, -10.0 },
- EmoteMoving = true,
- EmoteLoop = true
- }},
- ["cigar"] = { "amb@world_human_smoking@male@male_a@enter", "enter", "Cigar", AnimationOptions = {
- Prop = 'prop_cigar_02',
- PropBone = 47419,
- PropPlacement = { 0.010, 0.0, 0.0, 50.0, 0.0, -80.0 },
- EmoteMoving = true,
- EmoteDuration = 2600
- }},
- ["cigar2"] = { "amb@world_human_smoking@male@male_a@enter", "enter", "Cigar 2", AnimationOptions = {
- Prop = 'prop_cigar_01',
- PropBone = 47419,
- PropPlacement = { 0.010, 0.0, 0.0, 50.0, 0.0, -80.0 },
- EmoteMoving = true,
- EmoteDuration = 2600
- }},
- ["guitar"] = { "amb@world_human_musician@guitar@male@idle_a", "idle_b", "Guitar", AnimationOptions = {
- Prop = 'prop_acc_guitar_01',
- PropBone = 24818,
- PropPlacement = { -0.1, 0.31, 0.1, 0.0, 20.0, 150.0 },
- EmoteMoving = true,
- EmoteLoop = true
- }},
- ["guitar2"] = { "switch@trevor@guitar_beatdown", "001370_02_trvs_8_guitar_beatdown_idle_busker", "Guitar 2", AnimationOptions = {
- Prop = 'prop_acc_guitar_01',
- PropBone = 24818,
- PropPlacement = { -0.05, 0.31, 0.1, 0.0, 20.0, 150.0 },
- EmoteMoving = true,
- EmoteLoop = true
- }},
- ["guitarelectric"] = { "amb@world_human_musician@guitar@male@idle_a", "idle_b", "Guitar Electric", AnimationOptions = {
- Prop = 'prop_el_guitar_01',
- PropBone = 24818,
- PropPlacement = { -0.1, 0.31, 0.1, 0.0, 20.0, 150.0 },
- EmoteMoving = true,
- EmoteLoop = true
- }},
- ["guitarelectric2"] = { "amb@world_human_musician@guitar@male@idle_a", "idle_b", "Guitar Electric 2", AnimationOptions = {
- Prop = 'prop_el_guitar_03',
- PropBone = 24818,
- PropPlacement = { -0.1, 0.31, 0.1, 0.0, 20.0, 150.0 },
- EmoteMoving = true,
- EmoteLoop = true
- }},
- ["book"] = { "cellphone@", "cellphone_text_read_base", "Book", AnimationOptions = {
- Prop = 'prop_novel_01',
- PropBone = 6286,
- PropPlacement = { 0.15, 0.03, -0.065, 0.0, 180.0, 90.0 }, -- This positioning isnt too great, was to much of a hassle
- EmoteMoving = true,
- EmoteLoop = true
- }},
- ["bouquet"] = { "impexp_int-0", "mp_m_waremech_01_dual-0", "Bouquet", AnimationOptions = {
- Prop = 'prop_snow_flower_02',
- PropBone = 24817,
- PropPlacement = { -0.29, 0.40, -0.02, -90.0, -90.0, 0.0 },
- EmoteMoving = true,
- EmoteLoop = true
- }},
- ["teddy"] = { "impexp_int-0", "mp_m_waremech_01_dual-0", "Teddy", AnimationOptions = {
- Prop = 'v_ilev_mr_rasberryclean',
- PropBone = 24817,
- PropPlacement = { -0.20, 0.46, -0.016, -180.0, -90.0, 0.0 },
- EmoteMoving = true,
- EmoteLoop = true
- }},
- ["backpack"] = { "move_p_m_zero_rucksack", "nill", "Backpack", AnimationOptions = {
- Prop = 'p_michael_backpack_s',
- PropBone = 24818,
- PropPlacement = { 0.07, -0.11, -0.05, 0.0, 90.0, 175.0 },
- EmoteMoving = true,
- EmoteLoop = true
- }},
- ["clipboard"] = { "missfam4", "base", "Clipboard", AnimationOptions = {
- Prop = 'p_amb_clipboard_01',
- PropBone = 36029,
- PropPlacement = { 0.16, 0.08, 0.1, -130.0, -50.0, 0.0 },
- EmoteMoving = true,
- EmoteLoop = true
- }},
- ["map"] = { "amb@world_human_tourist_map@male@base", "base", "Map", AnimationOptions = {
- Prop = 'prop_tourist_map_01',
- PropBone = 28422,
- PropPlacement = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 },
- EmoteMoving = true,
- EmoteLoop = true
- }},
- ["map2"] = { "amb@code_human_in_bus_passenger_idles@female@tablet@idle_a", "idle_a", "Map 2", AnimationOptions = {
- Prop = "prop_tourist_map_01",
- PropBone = 28422,
- PropPlacement = { -0.05, 0.0, 0.0, 0.0, 0.0, 0.0 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["beg"] = { "amb@world_human_bum_freeway@male@base", "base", "Beg", AnimationOptions = {
- Prop = 'prop_beggers_sign_03',
- PropBone = 58868,
- PropPlacement = { 0.19, 0.18, 0.0, 5.0, 0.0, 40.0 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["makeitrain"] = { "anim@mp_player_intupperraining_cash", "idle_a", "Make It Rain", AnimationOptions = {
- Prop = 'prop_anim_cash_pile_01',
- PropBone = 60309,
- PropPlacement = { 0.0, 0.0, 0.0, 180.0, 0.0, 70.0 },
- EmoteMoving = true,
- EmoteLoop = true,
- PtfxAsset = "scr_xs_celebration",
- PtfxName = "scr_xs_money_rain",
- PtfxPlacement = { 0.0, 0.0, -0.09, -80.0, 0.0, 0.0, 1.0 },
- PtfxInfo = Config.Languages[Config.MenuLanguage]['makeitrain'],
- PtfxWait = 500,
- }},
- ["camera"] = { "amb@world_human_paparazzi@male@base", "base", "Camera", AnimationOptions = {
- Prop = 'prop_pap_camera_01',
- PropBone = 28422,
- PropPlacement = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 },
- EmoteLoop = true,
- EmoteMoving = true,
- PtfxAsset = "scr_bike_business",
- PtfxName = "scr_bike_cfid_camera_flash",
- PtfxPlacement = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1.0 },
- PtfxInfo = Config.Languages[Config.MenuLanguage]['camera'],
- PtfxWait = 200,
- }},
- ["champagnespray"] = { "anim@mp_player_intupperspray_champagne", "idle_a", "Champagne Spray", AnimationOptions = {
- Prop = 'ba_prop_battle_champ_open',
- PropBone = 28422,
- PropPlacement = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 },
- EmoteMoving = true,
- EmoteLoop = true,
- PtfxAsset = "scr_ba_club",
- PtfxName = "scr_ba_club_champagne_spray",
- PtfxPlacement = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 },
- PtfxInfo = Config.Languages[Config.MenuLanguage]['spraychamp'],
- PtfxWait = 500,
- }},
- ["joint"] = { "amb@world_human_smoking@male@male_a@enter", "enter", "Joint", AnimationOptions = {
- Prop = 'p_cs_joint_02',
- PropBone = 47419,
- PropPlacement = { 0.015, -0.009, 0.003, 55.0, 0.0, 110.0 },
- EmoteMoving = true,
- EmoteDuration = 2600
- }},
- ["cig"] = { "amb@world_human_smoking@male@male_a@enter", "enter", "Cig", AnimationOptions = {
- Prop = 'prop_amb_ciggy_01',
- PropBone = 47419,
- PropPlacement = { 0.015, -0.009, 0.003, 55.0, 0.0, 110.0 },
- EmoteMoving = true,
- EmoteDuration = 2600
- }},
- ["brief"] = { "move_weapon@jerrycan@generic", "idle", "Briefcase", AnimationOptions = {
- Prop = "prop_ld_case_01",
- PropBone = 57005,
- PropPlacement = { 0.12, 0.0, 0.0, 0.0, 255.0, 80.0 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["tablet"] = { "amb@world_human_tourist_map@male@base", "base", "Tablet", AnimationOptions = {
- Prop = "prop_cs_tablet",
- PropBone = 28422,
- PropPlacement = { 0.0, -0.03, 0.0, 20.0, -90.0, 0.0 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["tablet2"] = { "amb@code_human_in_bus_passenger_idles@female@tablet@idle_a", "idle_a", "Tablet 2", AnimationOptions = {
- Prop = "prop_cs_tablet",
- PropBone = 28422,
- PropPlacement = { -0.05, 0.0, 0.0, 0.0, 0.0, 0.0 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["phonecall"] = { "cellphone@", "cellphone_call_listen_base", "Phone Call", AnimationOptions = {
- Prop = "prop_phone_ing",
- PropBone = 28422,
- PropPlacement = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["phonecall2"] = { "random@kidnap_girl", "ig_1_girl_on_phone_loop", "Phone Call 2", AnimationOptions = {
- Prop = "prop_phone_ing",
- PropBone = 28422,
- PropPlacement = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["wt"] = { "cellphone@", "cellphone_text_read_base", "Walkie Talkie", AnimationOptions = {
- Prop = "prop_cs_hand_radio",
- PropBone = 28422,
- PropPlacement = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["clean"] = { "timetable@floyd@clean_kitchen@base", "base", "Clean", AnimationOptions = {
- Prop = "prop_sponge_01",
- PropBone = 28422,
- PropPlacement = { 0.0, 0.0, -0.01, 90.0, 0.0, 0.0 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["clean2"] = { "amb@world_human_maid_clean@", "base", "Clean 2", AnimationOptions = {
- Prop = "prop_sponge_01",
- PropBone = 28422,
- PropPlacement = { 0.0, 0.0, -0.01, 90.0, 0.0, 0.0 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["protest"] = { "rcmnigel1d", "base_club_shoulder", "Protest", AnimationOptions = {
- Prop = "prop_cs_protest_sign_01",
- PropBone = 57005,
- PropPlacement = { 0.1820, 0.2400, 0.0600, -69.3774235, 5.9142048, -13.9572354 },
- --
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["protest2"] = { "rcmnigel1d", "base_club_shoulder", "Protest 2 - Pride ", AnimationOptions = {
- Prop = "pride_sign_01",
- PropBone = 57005,
- PropPlacement = { 0.1820, 0.2400, 0.0600, -69.3774235, 5.9142048, -13.9572354 },
- --
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["binoculars"] = { "amb@world_human_binoculars@male@idle_b", "idle_f", "Binoculars", AnimationOptions = {
- Prop = "prop_binoc_01",
- PropBone = 28422,
- PropPlacement = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 },
- --
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["binoculars2"] = { "amb@world_human_binoculars@male@idle_a", "idle_c", "Binoculars 2", AnimationOptions = {
- Prop = "prop_binoc_01",
- PropBone = 28422,
- PropPlacement = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["tennisplay"] = { "move_weapon@jerrycan@generic", "idle", "Tennis Play", AnimationOptions = {
- Prop = "prop_tennis_bag_01",
- PropBone = 57005,
- PropPlacement = { 0.27, 0.0, 0.0, 91.0, 0.0, -82.9999951 },
- SecondProp = 'prop_tennis_rack_01',
- SecondPropBone = 60309,
- SecondPropPlacement = { 0.0800, 0.0300, 0.0, -130.2907295, 3.8782324, 6.588224 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["weights"] = { "amb@world_human_muscle_free_weights@male@barbell@base", "base", "Weights", AnimationOptions = {
- Prop = "prop_curl_bar_01",
- PropBone = 28422,
- PropPlacement = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["weights2"] = { "amb@world_human_muscle_free_weights@male@barbell@idle_a", "idle_d", "Weights 2", AnimationOptions = {
- Prop = "prop_curl_bar_01",
- PropBone = 28422,
- PropPlacement = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["fuel"] = { "weapons@misc@jerrycan@", "fire", "Fuel", AnimationOptions = {
- Prop = "w_am_jerrycan",
- PropBone = 57005,
- PropPlacement = { 0.1800, 0.1300, -0.2400, -165.8693883, -11.2122753, -32.9453021 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["fuel2"] = { "weapons@misc@jerrycan@franklin", "idle", "Fuel 2 (Carry)", AnimationOptions = {
- Prop = "w_am_jerrycan",
- PropBone = 28422,
- PropPlacement = { 0.26, 0.050, 0.0300, 80.00, 180.000, 79.99 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["hitchhike"] = { "random@hitch_lift", "idle_f", "Hitchhike", AnimationOptions = {
- Prop = "w_am_jerrycan",
- PropBone = 18905,
- PropPlacement = { 0.32, -0.0100, 0.0, -162.423, 74.83, 58.79 },
- SecondProp = 'prop_michael_backpack',
- SecondPropBone = 40269,
- SecondPropPlacement = { -0.07, -0.21, -0.11, -144.93, 117.358, -6.16 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["ssign"] = { "rcmnigel1d", "base_club_shoulder", "Steal Stop Sign ", AnimationOptions = {
- Prop = "prop_sign_road_01a",
- PropBone = 60309,
- PropPlacement = { -0.1390, -0.9870, 0.4300, -67.3315314, 145.0627869, -4.4318885 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["ssign2"] = { "rcmnigel1d", "base_club_shoulder", "Steal Yield Sign ", AnimationOptions = {
- Prop = "prop_sign_road_02a",
- PropBone = 60309,
- PropPlacement = { -0.1390, -0.9870, 0.4300, -67.3315314, 145.0627869, -4.4318885 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["ssign3"] = { "rcmnigel1d", "base_club_shoulder", "Steal Hospital Sign ", AnimationOptions = {
- Prop = "prop_sign_road_03d",
- PropBone = 60309,
- PropPlacement = { -0.1390, -0.9870, 0.4300, -67.3315314, 145.0627869, -4.4318885 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["ssign4"] = { "rcmnigel1d", "base_club_shoulder", "Steal Parking Sign ", AnimationOptions = {
- Prop = "prop_sign_road_04a",
- PropBone = 60309,
- PropPlacement = { -0.1390, -0.9870, 0.4300, -67.3315314, 145.0627869, -4.4318885 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["ssign5"] = { "rcmnigel1d", "base_club_shoulder", "Steal Parking Sign 2 ", AnimationOptions = {
- Prop = "prop_sign_road_04w",
- PropBone = 60309,
- PropPlacement = { -0.1390, -0.9870, 0.4300, -67.3315314, 145.0627869, -4.4318885 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["ssign6"] = { "rcmnigel1d", "base_club_shoulder", "Steal Pedestrian Sign ", AnimationOptions = {
- Prop = "prop_sign_road_05a",
- PropBone = 60309,
- PropPlacement = { -0.1390, -0.9870, 0.4300, -67.3315314, 145.0627869, -4.4318885 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["ssign7"] = { "rcmnigel1d", "base_club_shoulder", "Steal Street Sign ", AnimationOptions = {
- Prop = "prop_sign_road_05t",
- PropBone = 60309,
- PropPlacement = { -0.1390, -0.9870, 0.4300, -67.3315314, 145.0627869, -4.4318885 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["ssign8"] = { "rcmnigel1d", "base_club_shoulder", "Steal Freeway Sign ", AnimationOptions = {
- Prop = "prop_sign_freewayentrance",
- PropBone = 60309,
- PropPlacement = { -0.1390, -0.9870, 0.4300, -67.3315314, 145.0627869, -4.4318885 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["ssign9"] = { "rcmnigel1d", "base_club_shoulder", "Steal Stop Sign Snow ", AnimationOptions = {
- Prop = "prop_snow_sign_road_01a",
- PropBone = 60309,
- PropPlacement = { -0.1390, -0.9870, 0.4300, -67.3315314, 145.0627869, -4.4318885 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["conehead"] = { "move_m@drunk@verydrunk_idles@", "fidget_07", "Cone Head ", AnimationOptions = {
- Prop = "prop_roadcone02b",
- PropBone = 31086,
- PropPlacement = { 0.0500, 0.0200, -0.000, 30.0000004, 90.0, 0.0 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["foodtraya"] = { "anim@heists@box_carry@", "idle", "Food Tray", AnimationOptions = {
- Prop = "prop_food_bs_tray_03",
- PropBone = 28422,
- PropPlacement = { 0.0100, -0.0400, -0.1390, 20.0000007, 0.0, 0.0 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["foodtrayb"] = { "anim@heists@box_carry@", "idle", "Food Tray B", AnimationOptions = {
- Prop = "prop_food_bs_tray_02",
- PropBone = 28422,
- PropPlacement = { 0.0100, -0.0400, -0.1390, 20.0000007, 0.0, 0.0 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["foodtrayc"] = { "anim@heists@box_carry@", "idle", "Food Tray C", AnimationOptions = {
- Prop = "prop_food_cb_tray_02",
- PropBone = 28422,
- PropPlacement = { 0.0100, -0.0400, -0.1390, 20.0000007, 0.0, 0.0 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["foodtrayd"] = { "anim@heists@box_carry@", "idle", "Food Tray D", AnimationOptions = {
- Prop = "prop_food_tray_02",
- PropBone = 28422,
- PropPlacement = { 0.0100, -0.0400, -0.1390, 20.0000007, 0.0, 0.0 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["foodtraye"] = { "anim@heists@box_carry@", "idle", "Food Tray E", AnimationOptions = {
- Prop = "prop_food_tray_03",
- PropBone = 28422,
- PropPlacement = { 0.0100, -0.0400, -0.1390, 20.0000007, 0.0, 0.0 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["foodtrayf"] = { "anim@heists@box_carry@", "idle", "Food Tray F", AnimationOptions = {
- Prop = "prop_food_bs_tray_02",
- PropBone = 57005,
- PropPlacement = { 0.2500, 0.1000, 0.0700, -110.5483936, 73.3529273, -16.338362 },
- SecondProp = 'prop_food_bs_tray_03',
- SecondPropBone = 18905,
- SecondPropPlacement = { 0.2200, 0.1300, -0.1000, -127.7725487, 110.2074758, -3.5886263 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["foodtrayg"] = { "anim@heists@box_carry@", "idle", "Food Tray G", AnimationOptions = {
- Prop = "prop_food_cb_tray_02",
- PropBone = 57005,
- PropPlacement = { 0.2500, 0.1000, 0.0700, -110.5483936, 73.3529273, -16.338362 },
- SecondProp = 'prop_food_cb_tray_02',
- SecondPropBone = 18905,
- SecondPropPlacement = { 0.2200, 0.1300, -0.1000, -127.7725487, 110.2074758, -3.5886263 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["foodtrayh"] = { "anim@heists@box_carry@", "idle", "Food Tray H", AnimationOptions = {
- Prop = "prop_food_tray_02",
- PropBone = 57005,
- PropPlacement = { 0.2500, 0.1000, 0.0700, -110.5483936, 73.3529273, -16.338362 },
- SecondProp = 'prop_food_tray_03',
- SecondPropBone = 18905,
- SecondPropPlacement = { 0.2200, 0.1300, -0.1000, -127.7725487, 110.2074758, -3.5886263 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["foodtrayi"] = { "anim@heists@box_carry@", "idle", "Food Tray I", AnimationOptions = {
- Prop = "prop_food_tray_02",
- PropBone = 57005,
- PropPlacement = { 0.2500, 0.1000, 0.0700, -110.5483936, 73.3529273, -16.338362 },
- SecondProp = 'prop_food_tray_02',
- SecondPropBone = 18905,
- SecondPropPlacement = { 0.2200, 0.1300, -0.1000, -127.7725487, 110.2074758, -3.5886263 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["foodtrayj"] = { "anim@move_f@waitress", "idle", "Food Tray J", AnimationOptions = {
- Prop = "prop_food_bs_tray_02",
- PropBone = 28422,
- PropPlacement = { 0.0, 0.0, 0.0200, 0.0, 0.0, 0.0 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["foodtrayk"] = { "anim@move_f@waitress", "idle", "Food Tray K", AnimationOptions = {
- Prop = "prop_food_bs_tray_02",
- PropBone = 28422,
- PropPlacement = { 0.0, 0.0, 0.0200, 0.0, 0.0, 0.0 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["foodtrayl"] = { "anim@move_f@waitress", "idle", "Food Tray L", AnimationOptions = {
- Prop = "prop_food_bs_tray_03",
- PropBone = 28422,
- PropPlacement = { 0.0, 0.0, 0.0200, 0.0, 0.0, 0.0 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["foodtraym"] = { "anim@move_f@waitress", "idle", "Food Tray M", AnimationOptions = {
- Prop = "prop_food_cb_tray_02",
- PropBone = 28422,
- PropPlacement = { 0.0, 0.0, 0.0200, 0.0, 0.0, 0.0 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["foodtrayn"] = { "anim@move_f@waitress", "idle", "Food Tray N", AnimationOptions = {
- Prop = "prop_food_tray_02",
- PropBone = 28422,
- PropPlacement = { 0.0, 0.0, 0.0200, 0.0, 0.0, 0.0 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["foodtrayo"] = { "anim@move_f@waitress", "idle", "Food Tray O", AnimationOptions = {
- Prop = "prop_food_tray_02",
- PropBone = 28422,
- PropPlacement = { 0.0, 0.0, 0.0200, 0.0, 0.0, 0.0 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["carrypizza"] = { "anim@heists@box_carry@", "idle", "Carry Pizza Box", AnimationOptions = {
- Prop = "prop_pizza_box_02",
- PropBone = 28422,
- PropPlacement = { 0.0100, -0.1000, -0.1590, 20.0000007, 0.0, 0.0 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["carryfoodbag"] = { "move_weapon@jerrycan@generic", "idle", "Carry Food Bag", AnimationOptions = {
- Prop = "prop_food_bs_bag_01",
- PropBone = 57005,
- PropPlacement = { 0.3300, 0.0, -0.0300, 0.0017365, -79.9999997, 110.0651988 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["carryfoodbag2"] = { "move_weapon@jerrycan@generic", "idle", "Carry Food Bag 2", AnimationOptions = {
- Prop = "prop_food_cb_bag_01",
- PropBone = 57005,
- PropPlacement = { 0.3800, 0.0, -0.0300, 0.0017365, -79.9999997, 110.0651988 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["carryfoodbag3"] = { "move_weapon@jerrycan@generic", "idle", "Carry Food Bag 3", AnimationOptions = {
- Prop = "prop_food_bag1",
- PropBone = 57005,
- PropPlacement = { 0.3800, 0.0, -0.0300, 0.0017365, -79.9999997, 110.0651988 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["tag"] = { "anim@scripted@freemode@postertag@graffiti_spray@male@", "shake_can_male", "Tagging Shake Can Male", AnimationOptions = {
- Prop = "prop_cs_spray_can",
- PropBone = 28422,
- PropPlacement = { 0.0, 0.0, 0.0700, 0.0017365, 0.0, 0.0 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["tag2"] = { "anim@scripted@freemode@postertag@graffiti_spray@heeled@", "shake_can_female", "Tagging Shake Can Female", AnimationOptions = {
- Prop = "prop_cs_spray_can",
- PropBone = 28422,
- PropPlacement = { 0.0, 0.0, 0.0700, 0.0017365, 0.0, 0.0 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["tag3"] = { "anim@scripted@freemode@postertag@graffiti_spray@male@", "spray_can_var_01_male", "Tagging Male 1", AnimationOptions = {
- Prop = "prop_cs_spray_can",
- PropBone = 28422,
- PropPlacement = { 0.0, 0.0, 0.0700, 0.0017365, 0.0, 0.0 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["tag4"] = { "anim@scripted@freemode@postertag@graffiti_spray@male@", "spray_can_var_02_male", "Tagging Male 2", AnimationOptions = {
- Prop = "prop_cs_spray_can",
- PropBone = 28422,
- PropPlacement = { 0.0, 0.0, 0.0700, 0.0017365, 0.0, 0.0 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["tag5"] = { "anim@scripted@freemode@postertag@graffiti_spray@heeled@", "spray_can_var_01_female", "Tagging Female 1", AnimationOptions = {
- Prop = "prop_cs_spray_can",
- PropBone = 28422,
- PropPlacement = { 0.0, 0.0, 0.0700, 0.0017365, 0.0, 0.0 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["tag6"] = { "anim@scripted@freemode@postertag@graffiti_spray@heeled@", "spray_can_var_02_female", "Tagging Female 2", AnimationOptions = {
- Prop = "prop_cs_spray_can",
- PropBone = 28422,
- PropPlacement = { 0.0, 0.0, 0.0700, 0.0017365, 0.0, 0.0 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["beans"] = { "anim@scripted@island@special_peds@pavel@hs4_pavel_ig5_caviar_p1", "base_idle", "Beans", AnimationOptions = {
- Prop = "h4_prop_h4_caviar_tin_01a",
- PropBone = 60309,
- PropPlacement = { 0.0, 0.0300, 0.0100, 0.0, 0.0, 0.0 },
- SecondProp = 'h4_prop_h4_caviar_spoon_01a',
- SecondPropBone = 28422,
- SecondPropPlacement = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["newscam"] = { "missfinale_c2mcs_1", "fin_c2_mcs_1_camman", "News Camera", AnimationOptions = {
- Prop = "prop_v_cam_01",
- PropBone = 28422,
- PropPlacement = { 0.0, 0.0300, 0.0100, 0.0, 0.0, 0.0 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["newsmic"] = { "anim@heists@humane_labs@finale@keycards", "ped_a_enter_loop", "News Microphone", AnimationOptions = {
- Prop = "p_ing_microphonel_01",
- PropBone = 4154,
- PropPlacement = { -0.00, -0.0200, 0.1100, 0.00, 0.0, 60.0 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["newsbmic"] = { "missfra1", "mcs2_crew_idle_m_boom", "News Boom Microphone", AnimationOptions = {
- Prop = "prop_v_bmike_01",
- PropBone = 28422,
- PropPlacement = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["leafblower"] = { "amb@world_human_gardener_leaf_blower@base", "base", "Leaf Blower", AnimationOptions = {
- Prop = "prop_leaf_blower_01",
- PropBone = 28422,
- PropPlacement = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["bbqf"] = { "amb@prop_human_bbq@male@idle_a", "idle_b", "BBQ (Female)", AnimationOptions = {
- Prop = "prop_fish_slice_01",
- PropBone = 28422,
- PropPlacement = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["pump"] = { "missfbi4prepp1", "idle", "Pumpkin", AnimationOptions = {
- Prop = "prop_veg_crop_03_pump",
- PropBone = 28422,
- PropPlacement = { 0.0200, 0.0600, -0.1200, 0.0, 0.0, 0.0 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["pump2"] = { "anim@heists@box_carry@", "idle", "Pumpkin 2", AnimationOptions = {
- Prop = "prop_veg_crop_03_pump",
- PropBone = 28422,
- PropPlacement = { 0.0100, -0.16000, -0.2100, 0.0, 0.0, 0.0 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["mop"] = { "missfbi4prepp1", "idle", "Mop", AnimationOptions = {
- Prop = "prop_cs_mop_s",
- PropBone = 28422,
- PropPlacement = { -0.0200, -0.0600, -0.2000, -13.377, 10.3568, 17.9681 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["mop2"] = { "move_mop", "idle_scrub_small_player", "Mop 2", AnimationOptions = {
- Prop = "prop_cs_mop_s",
- PropBone = 28422,
- PropPlacement = { 0.0, 0.0, 0.1200, 0.0, 0.0, 0.0 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["jerkf"] = { "switch@trevor@jerking_off", "trev_jerking_off_loop", "JerkOff! Female", AnimationOptions = {
- Prop = 'prop_cs_dildo_01',
- PropBone = 28422,
- PropPlacement = { 0.09, 0.05, -0.03, 90.0, 80.0, 30.0 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["rake"] = { "anim@amb@drug_field_workers@rake@male_a@base", "base", "Rake", AnimationOptions = {
- Prop = "prop_tool_rake",
- PropBone = 28422,
- PropPlacement = { 0.0, 0.0, -0.0300, 0.0, 0.0, 0.0 },
- EmoteLoop = true,
- }},
- ["rake2"] = { "anim@amb@drug_field_workers@rake@male_a@idles", "idle_b", "Rake 2", AnimationOptions = {
- Prop = "prop_tool_rake",
- PropBone = 28422,
- PropPlacement = { 0.0, 0.0, -0.0300, 0.0, 0.0, 0.0 },
- EmoteLoop = true,
- }},
- ["rake3"] = { "anim@amb@drug_field_workers@rake@male_b@base", "base", "Rake 3", AnimationOptions = {
- Prop = "prop_tool_rake",
- PropBone = 28422,
- PropPlacement = { 0.0, 0.0, -0.0300, 0.0, 0.0, 0.0 },
- EmoteLoop = true,
- }},
- ["rake4"] = { "anim@amb@drug_field_workers@rake@male_b@idles", "idle_d", "Rake 4", AnimationOptions = {
- Prop = "prop_tool_rake",
- PropBone = 28422,
- PropPlacement = { 0.0, 0.0, -0.0300, 0.0, 0.0, 0.0 },
- EmoteLoop = true,
- }},
- ["broom"] = { "anim@amb@drug_field_workers@rake@male_a@base", "base", "Broom", AnimationOptions = {
- Prop = "prop_tool_broom",
- PropBone = 28422,
- PropPlacement = { -0.0100, 0.0400, -0.0300, 0.0, 0.0, 0.0 },
- EmoteLoop = true,
- }},
- ["broom2"] = { "anim@amb@drug_field_workers@rake@male_a@idles", "idle_b", "Broom 2", AnimationOptions = {
- Prop = "prop_tool_broom",
- PropBone = 28422,
- PropPlacement = { -0.0100, 0.0400, -0.0300, 0.0, 0.0, 0.0 },
- EmoteLoop = true,
- }},
- ["broom3"] = { "anim@amb@drug_field_workers@rake@male_b@base", "base", "Broom 3", AnimationOptions = {
- Prop = "prop_tool_broom",
- PropBone = 28422,
- PropPlacement = { -0.0100, 0.0400, -0.0300, 0.0, 0.0, 0.0 },
- EmoteLoop = true,
- }},
- ["broom4"] = { "anim@amb@drug_field_workers@rake@male_b@idles", "idle_d", "Broom 4", AnimationOptions = {
- Prop = "prop_tool_broom",
- PropBone = 28422,
- PropPlacement = { -0.0100, 0.0400, -0.0300, 0.0, 0.0, 0.0 },
- EmoteLoop = true,
- }},
- ["champw"] = { "anim@move_f@waitress", "idle", "Champagne Waiter", AnimationOptions = {
- Prop = "vw_prop_vw_tray_01a",
- PropBone = 28422,
- PropPlacement = { 0.0, 0.0, 0.0100, 0.0, 0.0, 0.0 },
- SecondProp = 'prop_champ_cool',
- SecondPropBone = 28422,
- SecondPropPlacement = { 0.0, 0.0, 0.010, 0.0, 0.0, 0.0 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["shit"] = { "missfbi3ig_0", "shit_loop_trev", "Shit", AnimationOptions = {
- Prop = "prop_toilet_roll_01",
- PropBone = 28422,
- PropPlacement = { 0.0700, -0.02000, -0.2100, 0, 0, 0.0, 0.0 },
- SecondProp = 'prop_big_shit_01',
- SecondPropBone = 0,
- SecondPropPlacement = { -0.0100, 0.0600, -0.1550, 101.3015175, 7.3512213, -29.2665794 },
- EmoteLoop = true,
- EmoteMoving = false,
- }},
- ["selfie"] = { "anim@mp_player_intuppertake_selfie", "idle_a", "Selfie", AnimationOptions = {
- Prop = "prop_phone_ing",
- PropBone = 60309,
- PropPlacement = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["selfie2"] = { "cellphone@self@franklin@", "peace", "Selfie 2", AnimationOptions = {
- Prop = "prop_phone_ing",
- PropBone = 28422,
- PropPlacement = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["selfie3"] = { "cellphone@self@franklin@", "west_coast", "Selfie 3 - West Side", AnimationOptions = {
- Prop = "prop_phone_ing",
- PropBone = 28422,
- PropPlacement = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["selfie4"] = { "cellphone@self@trevor@", "aggressive_finger", "Selfie 4 - Finger", AnimationOptions = {
- Prop = "prop_phone_ing",
- PropBone = 28422,
- PropPlacement = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["selfie5"] = { "cellphone@self@trevor@", "proud_finger", "Selfie 5 - Finger 2", AnimationOptions = {
- Prop = "prop_phone_ing",
- PropBone = 28422,
- PropPlacement = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["selfie6"] = { "cellphone@self@trevor@", "throat_slit", "Selfie 6 - Throat Slit", AnimationOptions = {
- Prop = "prop_phone_ing",
- PropBone = 28422,
- PropPlacement = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["selfie7"] = { "cellphone@self@franklin@", "chest_bump", "Selfie 7 - Chest Bump", AnimationOptions = {
- Prop = "prop_phone_ing",
- PropBone = 28422,
- PropPlacement = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["sittv"] = { "anim@heists@heist_safehouse_intro@variations@male@tv", "tv_part_one_loop", "Sit TV", AnimationOptions = {
- Prop = "v_res_tre_remote",
- PropBone = 57005,
- PropPlacement = { 0.0990, 0.0170, -0.0300, -64.760, -109.544, 18.717 },
- EmoteLoop = true,
- EmoteMoving = false,
- }},
- ["dig"] = { "random@burial", "a_burial", "Dig", AnimationOptions = {
- Prop = "prop_tool_shovel",
- PropBone = 28422,
- PropPlacement = { 0.0, 0.0, 0.24, 0, 0, 0.0, 0.0 },
- SecondProp = 'prop_ld_shovel_dirt',
- SecondPropBone = 28422,
- SecondPropPlacement = { 0.0, 0.0, 0.24, 0.0, 0.0, 0.0 },
- EmoteLoop = true,
- EmoteMoving = false,
- }},
- ["bongos"] = { "amb@world_human_musician@bongos@male@base", "base", "Bongo Drums", AnimationOptions = {
- Prop = "prop_bongos_01",
- PropBone = 60309,
- PropPlacement = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["medbag"] = { "move_weapon@jerrycan@generic", "idle", "Medic Bag", AnimationOptions = {
- Prop = "xm_prop_x17_bag_med_01a",
- PropBone = 57005,
- PropPlacement = { 0.3900, -0.0600, -0.0600, -100.00, -180.00, -78.00 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["dufbag"] = { "move_weapon@jerrycan@generic", "idle", "Duffel Bag", AnimationOptions = {
- Prop = "bkr_prop_duffel_bag_01a",
- PropBone = 28422,
- PropPlacement = { 0.2600, 0.0400, 0.00, 90.00, 0.00, -78.99 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["shopbag"] = { "move_weapon@jerrycan@generic", "idle", "Shopping Bag", AnimationOptions = {
- Prop = "vw_prop_casino_shopping_bag_01a",
- PropBone = 28422,
- PropPlacement = { 0.24, 0.03, -0.04, 0.00, -90.00, 10.00 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["shopbag2"] = { "move_weapon@jerrycan@generic", "idle", "Shopping Bag 2", AnimationOptions = {
- Prop = "prop_shopping_bags02",
- PropBone = 28422,
- PropPlacement = { 0.05, 0.02, 0.00, 178.80, 91.19, 9.97 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["shopbag3"] = { "move_weapon@jerrycan@generic", "idle", "Shopping Bag 3", AnimationOptions = {
- Prop = "prop_cs_shopping_bag",
- PropBone = 28422,
- PropPlacement = { 0.24, 0.03, -0.04, 0.00, -90.00, 10.00 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["idcard"] = { "paper_1_rcm_alt1-8", "player_one_dual-8", "ID Card 1", AnimationOptions = {
- Prop = "prop_franklin_dl",
- PropBone = 57005,
- PropPlacement = { 0.1000, 0.0200, -0.0300, -90.000, 170.000, 78.999 },
- EmoteLoop = false,
- EmoteMoving = true,
- }},
- ["idcardb"] = { "paper_1_rcm_alt1-8", "player_one_dual-8", "ID Card 2 - FIB", AnimationOptions = {
- Prop = "prop_fib_badge",
- PropBone = 28422,
- PropPlacement = { 0.0600, 0.0210, -0.0400, -90.00, -180.00, 78.999 },
- EmoteLoop = false,
- EmoteMoving = true,
- }},
- ["idcardc"] = { "paper_1_rcm_alt1-8", "player_one_dual-8", "ID Card 3", AnimationOptions = {
- Prop = "prop_michael_sec_id",
- PropBone = 28422,
- PropPlacement = { 0.1000, 0.0200, -0.0300, -90.00, -180.00, 78.999 },
- EmoteLoop = false,
- EmoteMoving = true,
- }},
- ["idcardd"] = { "paper_1_rcm_alt1-8", "player_one_dual-8", "ID Card 4", AnimationOptions = {
- Prop = "prop_trev_sec_id",
- PropBone = 28422,
- PropPlacement = { 0.1000, 0.0200, -0.0300, -90.00, -180.00, 78.999 },
- EmoteLoop = false,
- EmoteMoving = true,
- }},
- ["idcarde"] = { "paper_1_rcm_alt1-8", "player_one_dual-8", "ID Card 5", AnimationOptions = {
- Prop = "p_ld_id_card_002",
- PropBone = 28422,
- PropPlacement = { 0.1000, 0.0200, -0.0300, -90.00, -180.00, 78.999 },
- EmoteLoop = false,
- EmoteMoving = true,
- }},
- ["idcardf"] = { "paper_1_rcm_alt1-8", "player_one_dual-8", "ID Card 6", AnimationOptions = {
- Prop = "prop_cs_r_business_card",
- PropBone = 28422,
- PropPlacement = { 0.1000, 0.0200, -0.0300, -90.00, -180.00, 78.999 },
- EmoteLoop = false,
- EmoteMoving = true,
- }},
- ["idcardg"] = { "paper_1_rcm_alt1-8", "player_one_dual-8", "ID Card 7", AnimationOptions = {
- Prop = "prop_michael_sec_id",
- PropBone = 28422,
- PropPlacement = { 0.1000, 0.0200, -0.0300, -90.00, -180.00, 78.999 },
- EmoteLoop = false,
- EmoteMoving = true,
- }},
- ["idcardh"] = { "paper_1_rcm_alt1-8", "player_one_dual-8", "ID Card 8", AnimationOptions = {
- Prop = "prop_cop_badge",
- PropBone = 28422,
- PropPlacement = { 0.0800, -0.0120, -0.0600, -90.00, 180.00, 69.99 },
- EmoteLoop = false,
- EmoteMoving = true,
- }},
- ["sms"] = { "cellphone@", "cellphone_text_read_base", "SMS", AnimationOptions = {
- Prop = "prop_phone_ing",
- PropBone = 28422,
- PropPlacement = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["sms2"] = { "cellphone@female", "cellphone_text_read_base", "SMS 2", AnimationOptions = {
- Prop = "prop_phone_ing",
- PropBone = 28422,
- PropPlacement = { 0.00, 0.00, 0.0301, 0.000, 00.00, 00.00 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["sms3"] = { "cellphone@female", "cellphone_email_read_base", "SMS 3", AnimationOptions = {
- Prop = "prop_phone_ing",
- PropBone = 28422,
- PropPlacement = { -0.0190, -0.0240, 0.0300, 18.99, -72.07, 6.39 },
- EmoteLoop = false,
- EmoteMoving = true,
- }},
- ["sms4"] = { "cellphone@female", "cellphone_text_read_base_cover_low", "SMS 4", AnimationOptions = {
- Prop = "prop_phone_ing",
- PropBone = 28422,
- PropPlacement = { -0.0190, -0.0250, 0.0400, 19.17, -78.50, 14.97 },
- EmoteLoop = false,
- EmoteMoving = true,
- }},
- ["sms5"] = { "amb@code_human_wander_texting_fat@male@base", "static", "SMS 6", AnimationOptions = {
- Prop = "prop_phone_ing",
- PropBone = 28422,
- PropPlacement = { -0.0200, -0.0100, 0.00, 2.309, 88.845, 29.979 },
- EmoteLoop = false,
- EmoteMoving = true,
- }},
- ["tire"] = { "anim@heists@box_carry@", "idle", "Tire", AnimationOptions = {
- Prop = "prop_wheel_tyre",
- PropBone = 60309,
- PropPlacement = { -0.05, 0.16, 0.32, -130.0, -55.0, 150.0 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["register"] = { "anim@heists@box_carry@", "idle", "Register", AnimationOptions = {
- Prop = "v_ret_gc_cashreg",
- PropBone = 60309,
- PropPlacement = { 0.138, 0.2, 0.2, -50.0, 290.0, 0.0 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["weedbrick"] = { "impexp_int-0", "mp_m_waremech_01_dual-0", "Weed Brick", AnimationOptions = {
- Prop = "prop_weed_block_01",
- PropBone = 60309,
- PropPlacement = { 0.1, 0.1, 0.05, 0.0, -90.0, 90.0 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["weedbrick2"] = { "anim@heists@box_carry@", "idle", "Weed Brick BIG", AnimationOptions = {
- Prop = "bkr_prop_weed_bigbag_01a",
- PropBone = 60309,
- PropPlacement = { 0.158, -0.05, 0.23, -50.0, 290.0, 0.0 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["potplant"] = { "anim@heists@box_carry@", "idle", "Pot Plant (Small)", AnimationOptions = {
- Prop = "bkr_prop_weed_01_small_01c",
- PropBone = 60309,
- PropPlacement = { 0.138, -0.05, 0.23, -50.0, 290.0, 0.0 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["potplant2"] = { "anim@heists@box_carry@", "idle", "Pot Plant (Medium)", AnimationOptions = {
- Prop = "bkr_prop_weed_01_small_01b",
- PropBone = 60309,
- PropPlacement = { 0.138, -0.05, 0.23, -50.0, 290.0, 0.0 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["potplant3"] = { "anim@heists@box_carry@", "idle", "Pot Plant (Large)", AnimationOptions = {
- Prop = "bkr_prop_weed_lrg_01b",
- PropBone = 60309,
- PropPlacement = { 0.138, -0.05, 0.23, -50.0, 290.0, 0.0 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["lawnchair"] = { "timetable@ron@ig_5_p3", "ig_5_p3_base", "Lawnchair", AnimationOptions = {
- Prop = "prop_skid_chair_02",
- PropBone = 0,
- PropPlacement = { 0.025, -0.2, -0.1, 45.0, -5.0, 180.0 },
- EmoteLoop = true,
- EmoteMoving = false,
- }},
- ["lawnchair2"] = { "timetable@reunited@ig_10", "base_amanda", "Lawnchair 2", AnimationOptions = {
- Prop = "prop_skid_chair_02",
- PropBone = 0,
- PropPlacement = { 0.025, -0.15, -0.1, 45.0, 5.0, 180.0 },
- EmoteLoop = true,
- EmoteMoving = false,
- }},
- ["lawnchair3"] = { "timetable@ron@ig_3_couch", "base", "Lawnchair 3", AnimationOptions = {
- Prop = "prop_skid_chair_02",
- PropBone = 0,
- PropPlacement = { -0.05, 0.0, -0.2, 5.0, 0.0, 180.0 },
- EmoteLoop = true,
- EmoteMoving = false,
- }},
- ["rose2"] = { "missheistdocksprep1hold_cellphone", "static", "Rose 2 (Male)", AnimationOptions = {
- Prop = "prop_single_rose",
- PropBone = 31086,
- PropPlacement = { -0.0140, 0.1030, 0.0620, -2.932, 4.564, 39.910 },
- EmoteLoop = false,
- EmoteMoving = true,
- }},
- ["rose3"] = { "missheistdocksprep1hold_cellphone", "static", "Rose 3 (Female)", AnimationOptions = {
- Prop = "prop_single_rose",
- PropBone = 31086,
- PropPlacement = { -0.0140, 0.1070, 0.0720, 0.00, 0.00, 2.99 },
- EmoteLoop = false,
- EmoteMoving = true,
- }},
- ["cbbox"] = { "anim@heists@box_carry@", "idle", "Carry Beer Box", AnimationOptions = {
- Prop = "v_ret_ml_beerben1",
- PropBone = 28422,
- PropPlacement = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["cbbox2"] = { "anim@heists@box_carry@", "idle", "Carry Beer Box 2", AnimationOptions = {
- Prop = "v_ret_ml_beerbla1",
- PropBone = 28422,
- PropPlacement = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["cbbox3"] = { "anim@heists@box_carry@", "idle", "Carry Beer Box 3", AnimationOptions = {
- Prop = "v_ret_ml_beerjak1",
- PropBone = 28422,
- PropPlacement = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["cbbox4"] = { "anim@heists@box_carry@", "idle", "Carry Beer Box 4", AnimationOptions = {
- Prop = "v_ret_ml_beerlog1",
- PropBone = 28422,
- PropPlacement = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["cbbox5"] = { "anim@heists@box_carry@", "idle", "Carry Beer Box 5", AnimationOptions = {
- Prop = "v_ret_ml_beerpis1",
- PropBone = 28422,
- PropPlacement = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["cbbox6"] = { "anim@heists@box_carry@", "idle", "Carry Beer Box 6", AnimationOptions = {
- Prop = "prop_beer_box_01",
- PropBone = 28422,
- PropPlacement = { 0.0200, -0.0600, -0.1200, -180.00, -180.00, 1.99 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["gbin"] = { "anim@heists@box_carry@", "idle", "Garbage Bin", AnimationOptions = {
- Prop = "prop_bin_08open",
- PropBone = 28422,
- PropPlacement = { 0.00, -0.420, -1.290, 0.0, 0.0, 0.0 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["gbin2"] = { "anim@heists@box_carry@", "idle", "Garbage Bin 2", AnimationOptions = {
- Prop = "prop_cs_bin_01",
- PropBone = 28422,
- PropPlacement = { 0.00, -0.420, -1.290, 0.0, 0.0, 0.0 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["gbin3"] = { "anim@heists@box_carry@", "idle", "Garbage Bin 3", AnimationOptions = {
- Prop = "prop_cs_bin_03",
- PropBone = 28422,
- PropPlacement = { 0.00, -0.420, -1.290, 0.0, 0.0, 0.0 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["gbin4"] = { "anim@heists@box_carry@", "idle", "Garbage Bin 4", AnimationOptions = {
- Prop = "prop_bin_08a",
- PropBone = 28422,
- PropPlacement = { 0.00, -0.420, -1.290, 0.0, 0.0, 0.0 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["gbin5"] = { "anim@heists@box_carry@", "idle", "Garbage Bin 5", AnimationOptions = {
- Prop = "prop_bin_07d",
- PropBone = 28422,
- PropPlacement = { -0.0100, -0.2200, -0.8600, 0.0, 0.0, 0.0 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ['pflag'] = { 'rcmnigel1d', 'base_club_shoulder', 'Pride Flag - Rainbow', AnimationOptions = {
- Prop = 'prideflag1',
- PropBone = 18905,
- PropPlacement = { 0.0800, -0.2090, 0.0900, -82.6677, -141.2988, 12.3308 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ['pflag2'] = { 'rcmnigel1d', 'base_club_shoulder', 'Pride Flag 2 - LGBTQ', AnimationOptions = {
- Prop = 'prideflag2',
- PropBone = 18905,
- PropPlacement = { 0.0800, -0.2090, 0.0900, -82.6677, -141.2988, 12.3308 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ['pflag3'] = { 'rcmnigel1d', 'base_club_shoulder', 'Pride Flag 3 - Bisexual ', AnimationOptions = {
- Prop = 'prideflag3',
- PropBone = 18905,
- PropPlacement = { 0.0800, -0.2090, 0.0900, -82.6677, -141.2988, 12.3308 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ['pflag4'] = { 'rcmnigel1d', 'base_club_shoulder', 'Pride Flag 4 - Lesbian ', AnimationOptions = {
- Prop = 'prideflag4',
- PropBone = 18905,
- PropPlacement = { 0.0800, -0.2090, 0.0900, -82.6677, -141.2988, 12.3308 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ['pflag5'] = { 'rcmnigel1d', 'base_club_shoulder', 'Pride Flag 5 - Pansexual ', AnimationOptions = {
- Prop = 'prideflag5',
- PropBone = 18905,
- PropPlacement = { 0.0800, -0.2090, 0.0900, -82.6677, -141.2988, 12.3308 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ['pflag6'] = { 'rcmnigel1d', 'base_club_shoulder', 'Pride Flag 6 - Transexual ', AnimationOptions = {
- Prop = 'prideflag6',
- PropBone = 18905,
- PropPlacement = { 0.0800, -0.2090, 0.0900, -82.6677, -141.2988, 12.3308 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ['pflag7'] = { 'rcmnigel1d', 'base_club_shoulder', 'Pride Flag 7 - Non Binary ', AnimationOptions = {
- Prop = 'prideflag7',
- PropBone = 18905,
- PropPlacement = { 0.0800, -0.2090, 0.0900, -82.6677, -141.2988, 12.3308 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ['pflag8'] = { 'rcmnigel1d', 'base_club_shoulder', 'Pride Flag 8 - Asexual ', AnimationOptions = {
- Prop = 'prideflag8',
- PropBone = 18905,
- PropPlacement = { 0.0800, -0.2090, 0.0900, -82.6677, -141.2988, 12.3308 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ['pflag9'] = { 'rcmnigel1d', 'base_club_shoulder', 'Pride Flag 9 - Straight Ally ', AnimationOptions = {
- Prop = 'prideflag9',
- PropBone = 18905,
- PropPlacement = { 0.0800, -0.2090, 0.0900, -82.6677, -141.2988, 12.3308 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ['old'] = { 'missbigscore2aleadinout@bs_2a_2b_int', 'lester_base_idle', 'Old Man Walking Stick', AnimationOptions = {
- Prop = 'prop_cs_walking_stick',
- PropBone = 28422,
- PropPlacement = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 },
- SecondProp = 'prop_phone_ing',
- SecondPropBone = 60309,
- SecondPropPlacement = { 0.0800, 0.0300, 0.0100, -107.9999, 0.0, -4.6003 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ['digiscan'] = { 'weapons@misc@digi_scanner', 'aim_med_loop', 'Digiscan 1 ', AnimationOptions = {
- Prop = 'w_am_digiscanner',
- PropBone = 28422,
- PropPlacement = { 0.0480, 0.0780, 0.0040, -81.6893, 2.5616, -15.7909 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ['digiscan2'] = { 'weapons@misc@digi_scanner', 'aim_low_loop', 'Digiscan 2 ', AnimationOptions = {
- Prop = 'w_am_digiscanner',
- PropBone = 28422,
- PropPlacement = { 0.0480, 0.0780, 0.0040, -81.6893, 2.5616, -15.7909 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ['digiscan3'] = { 'weapons@misc@digi_scanner', 'aim_high_loop', 'Digiscan 3 ', AnimationOptions = {
- Prop = 'w_am_digiscanner',
- PropBone = 28422,
- PropPlacement = { 0.0480, 0.0780, 0.0040, -81.6893, 2.5616, -15.7909 },
- EmoteLoop = true,
- EmoteMoving = true,
- }},
- ["cop4"] = { "amb@world_human_car_park_attendant@male@base", "base", "Cop 4", AnimationOptions = {
- Prop = "prop_parking_wand_01",
- PropBone = 57005,
- PropPlacement = { 0.12, 0.05, 0.0, 80.0, -20.0, 180.0 },
- EmoteLoop = true,
- EmoteMoving = true,
- } },
- ["leanphone"] = { "amb@world_human_leaning@male@wall@back@mobile@base", "base", "Leaning With Phone", AnimationOptions = {
- EmoteMoving = false,
- EmoteLoop = true,
- Prop = "prop_phone_ing",
- PropBone = 28422,
- PropPlacement = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 },
- } },
- ["piss"] = { "misscarsteal2peeing", "peeing_loop", "Piss", AnimationOptions = {
- EmoteStuck = true,
- PtfxAsset = "scr_amb_chop",
- PtfxName = "ent_anim_dog_peeing",
- PtfxNoProp = true,
- PtfxPlacement = { -0.05, 0.3, 0.0, 0.0, 90.0, 90.0, 1.0 },
- PtfxInfo = Config.Languages[Config.MenuLanguage]['pee'],
- PtfxWait = 3000,
- } },
- ["hump"] = { "timetable@trevor@skull_loving_bear", "skull_loving_bear", "Hump (Bear)", AnimationOptions = {
- Prop = 'prop_mr_raspberry_01',
- PropBone = 28422,
- PropPlacement = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 },
- EmoteMoving = false,
- EmoteLoop = true,
- } },
-}
diff --git a/resources/dpemotes-master/client/Emote.lua b/resources/dpemotes-master/client/Emote.lua
deleted file mode 100644
index cc0164c18..000000000
--- a/resources/dpemotes-master/client/Emote.lua
+++ /dev/null
@@ -1,451 +0,0 @@
--- You probably shouldnt touch these.
-local AnimationDuration = -1
-local ChosenAnimation = ""
-local ChosenDict = ""
-local IsInAnimation = false
-local MostRecentChosenAnimation = ""
-local MostRecentChosenDict = ""
-local MovementType = 0
-local PlayerGender = "male"
-local PlayerHasProp = false
-local PlayerProps = {}
-local PlayerParticles = {}
-local SecondPropEmote = false
-local lang = Config.MenuLanguage
-local PtfxNotif = false
-local PtfxPrompt = false
-local PtfxWait = 500
-local PtfxNoProp = false
-
-Citizen.CreateThread(function()
- while true do
- if IsPedShooting(PlayerPedId()) and IsInAnimation then
- EmoteCancel()
- end
-
- if PtfxPrompt then
- if not PtfxNotif then
- SimpleNotify(PtfxInfo)
- PtfxNotif = true
- end
- if IsControlPressed(0, 47) then
- PtfxStart()
- Wait(PtfxWait)
- PtfxStop()
- end
- end
-
- if Config.EnableXtoCancel then if IsControlPressed(0, 73) then EmoteCancel() end end
- Citizen.Wait(1)
- end
-end)
-
-if Config.MenuKeybindEnabled then
- RegisterKeyMapping("emotemenu", "Open dpemotes menu", "keyboard", Config.MenuKeybind)
-end
-
------------------------------------------------------------------------------------------------------
--- Commands / Events --------------------------------------------------------------------------------
------------------------------------------------------------------------------------------------------
-
-Citizen.CreateThread(function()
- TriggerEvent('chat:addSuggestion', '/e', 'Play an emote', { { name = "emotename", help = "dance, camera, sit or any valid emote." } })
- TriggerEvent('chat:addSuggestion', '/emote', 'Play an emote', { { name = "emotename", help = "dance, camera, sit or any valid emote." } })
- if Config.SqlKeybinding then
- TriggerEvent('chat:addSuggestion', '/emotebind', 'Bind an emote', { { name = "key", help = "num4, num5, num6, num7. num8, num9. Numpad 4-9!" }, { name = "emotename", help = "dance, camera, sit or any valid emote." } })
- TriggerEvent('chat:addSuggestion', '/emotebinds', 'Check your currently bound emotes.')
- end
- TriggerEvent('chat:addSuggestion', '/emotemenu', 'Open dpemotes menu (F5) by default.')
- TriggerEvent('chat:addSuggestion', '/emotes', 'List available emotes.')
- TriggerEvent('chat:addSuggestion', '/walk', 'Set your walkingstyle.', { { name = "style", help = "/walks for a list of valid styles" } })
- TriggerEvent('chat:addSuggestion', '/walks', 'List available walking styles.')
-end)
-
-RegisterCommand('e', function(source, args, raw) EmoteCommandStart(source, args, raw) end)
-RegisterCommand('emote', function(source, args, raw) EmoteCommandStart(source, args, raw) end)
-if Config.SqlKeybinding then
- RegisterCommand('emotebind', function(source, args, raw) EmoteBindStart(source, args, raw) end)
- RegisterCommand('emotebinds', function(source, args, raw) EmoteBindsStart(source, args, raw) end)
-end
-RegisterCommand('emotemenu', function(source, args, raw) OpenEmoteMenu() end)
-RegisterCommand('emotes', function(source, args, raw) EmotesOnCommand() end)
-RegisterCommand('walk', function(source, args, raw) WalkCommandStart(source, args, raw) end)
-RegisterCommand('walks', function(source, args, raw) WalksOnCommand() end)
-
-AddEventHandler('onResourceStop', function(resource)
- if resource == GetCurrentResourceName() then
- local ply = PlayerPedId()
- DestroyAllProps()
- ClearPedTasksImmediately(ply)
- DetachEntity(ply, true, false)
- ResetPedMovementClipset(ply)
- end
-end)
-
------------------------------------------------------------------------------------------------------
------- Functions and stuff --------------------------------------------------------------------------
------------------------------------------------------------------------------------------------------
-
-function EmoteCancel()
- local ply = PlayerPedId()
- if ChosenDict == "MaleScenario" and IsInAnimation then
- ClearPedTasksImmediately(ply)
- IsInAnimation = false
- DebugPrint("Forced scenario exit")
- elseif ChosenDict == "Scenario" and IsInAnimation then
- ClearPedTasksImmediately(ply)
- IsInAnimation = false
- DebugPrint("Forced scenario exit")
- end
-
- PtfxNotif = false
- PtfxPrompt = false
-
- if IsInAnimation then
- PtfxStop()
- ClearPedTasks(ply)
- DetachEntity(ply, true, false)
- CancelSharedEmote(ply)
- DestroyAllProps()
- IsInAnimation = false
- end
-end
-
-function EmoteChatMessage(args)
- if args == display then
- TriggerEvent("chatMessage", "^5Help^0", { 0, 0, 0 }, string.format(""))
- else
- TriggerEvent("chatMessage", "^5Help^0", { 0, 0, 0 }, string.format("" .. args .. ""))
- end
-end
-
-function DebugPrint(args)
- if Config.DebugDisplay then
- print(args)
- end
-end
-
-function PtfxStart()
- if PtfxNoProp then
- PtfxAt = PlayerPedId()
- else
- PtfxAt = prop
- end
- UseParticleFxAssetNextCall(PtfxAsset)
- Ptfx = StartNetworkedParticleFxLoopedOnEntityBone(PtfxName, PtfxAt, Ptfx1, Ptfx2, Ptfx3, Ptfx4, Ptfx5, Ptfx6, GetEntityBoneIndexByName(PtfxName, "VFX"), 1065353216, 0, 0, 0, 1065353216, 1065353216, 1065353216, 0)
- SetParticleFxLoopedColour(Ptfx, 1.0, 1.0, 1.0)
- table.insert(PlayerParticles, Ptfx)
-end
-
-function PtfxStop()
- for a, b in pairs(PlayerParticles) do
- DebugPrint("Stopped PTFX: " .. b)
- StopParticleFxLooped(b, false)
- table.remove(PlayerParticles, a)
- end
-end
-
-function EmotesOnCommand(source, args, raw)
- local EmotesCommand = ""
- for a in pairsByKeys(DP.Emotes) do
- EmotesCommand = EmotesCommand .. "" .. a .. ", "
- end
- EmoteChatMessage(EmotesCommand)
- EmoteChatMessage(Config.Languages[lang]['emotemenucmd'])
-end
-
-function pairsByKeys(t, f)
- local a = {}
- for n in pairs(t) do
- table.insert(a, n)
- end
- table.sort(a, f)
- local i = 0 -- iterator variable
- local iter = function() -- iterator function
- i = i + 1
- if a[i] == nil then
- return nil
- else
- return a[i], t[a[i]]
- end
- end
- return iter
-end
-
-function EmoteMenuStart(args, hard)
- local name = args
- local etype = hard
-
- if etype == "dances" then
- if DP.Dances[name] ~= nil then
- if OnEmotePlay(DP.Dances[name]) then end
- end
- elseif etype == "animals" then
- if DP.AnimalEmotes[name] ~= nil then
- if OnEmotePlay(DP.AnimalEmotes[name]) then end
- end
- elseif etype == "props" then
- if DP.PropEmotes[name] ~= nil then
- if OnEmotePlay(DP.PropEmotes[name]) then end
- end
- elseif etype == "emotes" then
- if DP.Emotes[name] ~= nil then
- if OnEmotePlay(DP.Emotes[name]) then end
- else
- if name ~= "🕺 Dance Emotes" then end
- end
- elseif etype == "expression" then
- if DP.Expressions[name] ~= nil then
- if OnEmotePlay(DP.Expressions[name]) then end
- end
- end
-end
-
-function EmoteCommandStart(source, args, raw)
- if #args > 0 then
- local name = string.lower(args[1])
- if name == "c" then
- if IsInAnimation then
- EmoteCancel()
- else
- EmoteChatMessage(Config.Languages[lang]['nocancel'])
- end
- return
- elseif name == "help" then
- EmotesOnCommand()
- return
- end
-
- if DP.Emotes[name] ~= nil then
- if OnEmotePlay(DP.Emotes[name]) then end
- return
- elseif DP.Dances[name] ~= nil then
- if OnEmotePlay(DP.Dances[name]) then end
- return
- elseif DP.AnimalEmotes[name] ~= nil then
- if OnEmotePlay(DP.AnimalEmotes[name]) then end
- return
- elseif DP.PropEmotes[name] ~= nil then
- if OnEmotePlay(DP.PropEmotes[name]) then end
- return
- else
- EmoteChatMessage("'" .. name .. "' " .. Config.Languages[lang]['notvalidemote'] .. "")
- end
- end
-end
-
-function LoadAnim(dict)
- if not DoesAnimDictExist(dict) then
- return false
- end
-
- while not HasAnimDictLoaded(dict) do
- RequestAnimDict(dict)
- Wait(10)
- end
-
- return true
-end
-
-function LoadPropDict(model)
- while not HasModelLoaded(GetHashKey(model)) do
- RequestModel(GetHashKey(model))
- Wait(10)
- end
-end
-
-function PtfxThis(asset)
- while not HasNamedPtfxAssetLoaded(asset) do
- RequestNamedPtfxAsset(asset)
- Wait(10)
- end
- UseParticleFxAssetNextCall(asset)
-end
-
-function DestroyAllProps()
- for _, v in pairs(PlayerProps) do
- DeleteEntity(v)
- end
- PlayerHasProp = false
- DebugPrint("Destroyed Props")
-end
-
-function AddPropToPlayer(prop1, bone, off1, off2, off3, rot1, rot2, rot3)
- local Player = PlayerPedId()
- local x, y, z = table.unpack(GetEntityCoords(Player))
-
- if not HasModelLoaded(prop1) then
- LoadPropDict(prop1)
- end
-
- prop = CreateObject(GetHashKey(prop1), x, y, z + 0.2, true, true, true)
- AttachEntityToEntity(prop, Player, GetPedBoneIndex(Player, bone), off1, off2, off3, rot1, rot2, rot3, true, true, false, true, 1, true)
- table.insert(PlayerProps, prop)
- PlayerHasProp = true
- SetModelAsNoLongerNeeded(prop1)
-end
-
------------------------------------------------------------------------------------------------------
--- V -- This could be a whole lot better, i tried messing around with "IsPedMale(ped)"
--- V -- But i never really figured it out, if anyone has a better way of gender checking let me know.
--- V -- Since this way doesnt work for ped models.
--- V -- in most cases its better to replace the scenario with an animation bundled with prop instead.
------------------------------------------------------------------------------------------------------
-
-function CheckGender()
- local hashSkinMale = GetHashKey("mp_m_freemode_01")
- local hashSkinFemale = GetHashKey("mp_f_freemode_01")
-
- if GetEntityModel(PlayerPedId()) == hashSkinMale then
- PlayerGender = "male"
- elseif GetEntityModel(PlayerPedId()) == hashSkinFemale then
- PlayerGender = "female"
- end
- DebugPrint("Set gender as = (" .. PlayerGender .. ")")
-end
-
------------------------------------------------------------------------------------------------------
------- This is the major function for playing emotes! -----------------------------------------------
------------------------------------------------------------------------------------------------------
-
-function OnEmotePlay(EmoteName)
- InVehicle = IsPedInAnyVehicle(PlayerPedId(), true)
- if not Config.AllowedInCars and InVehicle == 1 then
- return
- end
-
- if not DoesEntityExist(PlayerPedId()) then
- return false
- end
-
- if Config.DisarmPlayer then
- if IsPedArmed(PlayerPedId(), 7) then
- SetCurrentPedWeapon(PlayerPedId(), GetHashKey('WEAPON_UNARMED'), true)
- end
- end
-
- ChosenDict, ChosenAnimation, ename = table.unpack(EmoteName)
- AnimationDuration = -1
-
- if PlayerHasProp then
- DestroyAllProps()
- end
-
- if ChosenDict == "Expression" then
- SetFacialIdleAnimOverride(PlayerPedId(), ChosenAnimation, 0)
- return
- end
-
- if ChosenDict == "MaleScenario" or "Scenario" then
- CheckGender()
- if ChosenDict == "MaleScenario" then if InVehicle then return end
- if PlayerGender == "male" then
- ClearPedTasks(PlayerPedId())
- TaskStartScenarioInPlace(PlayerPedId(), ChosenAnimation, 0, true)
- DebugPrint("Playing scenario = (" .. ChosenAnimation .. ")")
- IsInAnimation = true
- else
- EmoteChatMessage(Config.Languages[lang]['maleonly'])
- end
- return
- elseif ChosenDict == "ScenarioObject" then if InVehicle then return end
- BehindPlayer = GetOffsetFromEntityInWorldCoords(PlayerPedId(), 0.0, 0 - 0.5, -0.5);
- ClearPedTasks(PlayerPedId())
- TaskStartScenarioAtPosition(PlayerPedId(), ChosenAnimation, BehindPlayer['x'], BehindPlayer['y'], BehindPlayer['z'], GetEntityHeading(PlayerPedId()), 0, 1, false)
- DebugPrint("Playing scenario = (" .. ChosenAnimation .. ")")
- IsInAnimation = true
- return
- elseif ChosenDict == "Scenario" then if InVehicle then return end
- ClearPedTasks(PlayerPedId())
- TaskStartScenarioInPlace(PlayerPedId(), ChosenAnimation, 0, true)
- DebugPrint("Playing scenario = (" .. ChosenAnimation .. ")")
- IsInAnimation = true
- return
- end
- end
-
- if not LoadAnim(ChosenDict) then
- EmoteChatMessage("'" .. ename .. "' " .. Config.Languages[lang]['notvalidemote'] .. "")
- return
- end
-
- if EmoteName.AnimationOptions then
- if EmoteName.AnimationOptions.EmoteLoop then
- MovementType = 1
- if EmoteName.AnimationOptions.EmoteMoving then
- MovementType = 51
- end
-
- elseif EmoteName.AnimationOptions.EmoteMoving then
- MovementType = 51
- elseif EmoteName.AnimationOptions.EmoteMoving == false then
- MovementType = 0
- elseif EmoteName.AnimationOptions.EmoteStuck then
- MovementType = 50
- end
-
- else
- MovementType = 0
- end
-
- if InVehicle == 1 then
- MovementType = 51
- end
-
- if EmoteName.AnimationOptions then
- if EmoteName.AnimationOptions.EmoteDuration == nil then
- EmoteName.AnimationOptions.EmoteDuration = -1
- AttachWait = 0
- else
- AnimationDuration = EmoteName.AnimationOptions.EmoteDuration
- AttachWait = EmoteName.AnimationOptions.EmoteDuration
- end
-
- if EmoteName.AnimationOptions.PtfxAsset then
- PtfxAsset = EmoteName.AnimationOptions.PtfxAsset
- PtfxName = EmoteName.AnimationOptions.PtfxName
- if EmoteName.AnimationOptions.PtfxNoProp then
- PtfxNoProp = EmoteName.AnimationOptions.PtfxNoProp
- else
- PtfxNoProp = false
- end
- Ptfx1, Ptfx2, Ptfx3, Ptfx4, Ptfx5, Ptfx6, PtfxScale = table.unpack(EmoteName.AnimationOptions.PtfxPlacement)
- PtfxInfo = EmoteName.AnimationOptions.PtfxInfo
- PtfxWait = EmoteName.AnimationOptions.PtfxWait
- PtfxNotif = false
- PtfxPrompt = true
- PtfxThis(PtfxAsset)
- else
- DebugPrint("Ptfx = none")
- PtfxPrompt = false
- end
- end
-
- TaskPlayAnim(PlayerPedId(), ChosenDict, ChosenAnimation, 2.0, 2.0, AnimationDuration, MovementType, 0, false, false, false)
- RemoveAnimDict(ChosenDict)
- IsInAnimation = true
- MostRecentDict = ChosenDict
- MostRecentAnimation = ChosenAnimation
-
- if EmoteName.AnimationOptions then
- if EmoteName.AnimationOptions.Prop then
- PropName = EmoteName.AnimationOptions.Prop
- PropBone = EmoteName.AnimationOptions.PropBone
- PropPl1, PropPl2, PropPl3, PropPl4, PropPl5, PropPl6 = table.unpack(EmoteName.AnimationOptions.PropPlacement)
- if EmoteName.AnimationOptions.SecondProp then
- SecondPropName = EmoteName.AnimationOptions.SecondProp
- SecondPropBone = EmoteName.AnimationOptions.SecondPropBone
- SecondPropPl1, SecondPropPl2, SecondPropPl3, SecondPropPl4, SecondPropPl5, SecondPropPl6 = table.unpack(EmoteName.AnimationOptions.SecondPropPlacement)
- SecondPropEmote = true
- else
- SecondPropEmote = false
- end
- Wait(AttachWait)
- AddPropToPlayer(PropName, PropBone, PropPl1, PropPl2, PropPl3, PropPl4, PropPl5, PropPl6)
- if SecondPropEmote then
- AddPropToPlayer(SecondPropName, SecondPropBone, SecondPropPl1, SecondPropPl2, SecondPropPl3, SecondPropPl4, SecondPropPl5, SecondPropPl6)
- end
- end
- end
- return true
-end
diff --git a/resources/dpemotes-master/client/EmoteMenu.lua b/resources/dpemotes-master/client/EmoteMenu.lua
deleted file mode 100644
index f405f46e4..000000000
--- a/resources/dpemotes-master/client/EmoteMenu.lua
+++ /dev/null
@@ -1,327 +0,0 @@
-TriggerServerEvent("dp:CheckVersion")
-
-rightPosition = { x = 1450, y = 100 }
-leftPosition = { x = 0, y = 100 }
-menuPosition = { x = 0, y = 200 }
-
-if Config.MenuPosition then
- if Config.MenuPosition == "left" then
- menuPosition = leftPosition
- elseif Config.MenuPosition == "right" then
- menuPosition = rightPosition
- end
-end
-
-if Config.CustomMenuEnabled then
- local RuntimeTXD = CreateRuntimeTxd('Custom_Menu_Head')
- local Object = CreateDui(Config.MenuImage, 512, 128)
- _G.Object = Object
- local TextureThing = GetDuiHandle(Object)
- local Texture = CreateRuntimeTextureFromDuiHandle(RuntimeTXD, 'Custom_Menu_Head', TextureThing)
- Menuthing = "Custom_Menu_Head"
-else
- Menuthing = "shopui_title_sm_hangar"
-end
-
-_menuPool = NativeUI.CreatePool()
-mainMenu = NativeUI.CreateMenu("Tay's Emote Menu", "", menuPosition["x"], menuPosition["y"], Menuthing, Menuthing)
-_menuPool:Add(mainMenu)
-
-function ShowNotification(text)
- SetNotificationTextEntry("STRING")
- AddTextComponentString(text)
- DrawNotification(false, false)
-end
-
-local EmoteTable = {}
-local FavEmoteTable = {}
-local KeyEmoteTable = {}
-local DanceTable = {}
-local AnimalTable = {}
-local PropETable = {}
-local WalkTable = {}
-local FaceTable = {}
-local ShareTable = {}
-local FavoriteEmote = ""
-
-if Config.FavKeybindEnabled then
- Citizen.CreateThread(function()
- while true do
- if IsControlPressed(0, Config.FavKeybind) then
- if not IsPedSittingInAnyVehicle(PlayerPedId()) then
- if FavoriteEmote ~= "" then
- EmoteCommandStart(nil, { FavoriteEmote, 0 })
- Wait(3000)
- end
- end
- end
- Citizen.Wait(1)
- end
- end)
-end
-
-lang = Config.MenuLanguage
-
-function AddEmoteMenu(menu)
- local submenu = _menuPool:AddSubMenu(menu, Config.Languages[lang]['emotes'], "", "", Menuthing, Menuthing)
- local dancemenu = _menuPool:AddSubMenu(submenu, Config.Languages[lang]['danceemotes'], "", "", Menuthing, Menuthing)
- local animalmenu = _menuPool:AddSubMenu(submenu, Config.Languages[lang]['animalemotes'], "", "", Menuthing, Menuthing)
- local propmenu = _menuPool:AddSubMenu(submenu, Config.Languages[lang]['propemotes'], "", "", Menuthing, Menuthing)
- table.insert(EmoteTable, Config.Languages[lang]['danceemotes'])
- table.insert(EmoteTable, Config.Languages[lang]['danceemotes'])
- table.insert(EmoteTable, Config.Languages[lang]['animalemotes'])
-
- if Config.SharedEmotesEnabled then
- sharemenu = _menuPool:AddSubMenu(submenu, Config.Languages[lang]['shareemotes'], Config.Languages[lang]['shareemotesinfo'], "", Menuthing, Menuthing)
- shareddancemenu = _menuPool:AddSubMenu(sharemenu, Config.Languages[lang]['sharedanceemotes'], "", "", Menuthing, Menuthing)
- table.insert(ShareTable, 'none')
- table.insert(EmoteTable, Config.Languages[lang]['shareemotes'])
- end
-
- if not Config.SqlKeybinding then
- unbind2item = NativeUI.CreateItem(Config.Languages[lang]['rfavorite'], Config.Languages[lang]['rfavorite'])
- unbinditem = NativeUI.CreateItem(Config.Languages[lang]['prop2info'], "")
- favmenu = _menuPool:AddSubMenu(submenu, Config.Languages[lang]['favoriteemotes'], Config.Languages[lang]['favoriteinfo'], "", Menuthing, Menuthing)
- favmenu:AddItem(unbinditem)
- favmenu:AddItem(unbind2item)
- table.insert(FavEmoteTable, Config.Languages[lang]['rfavorite'])
- table.insert(FavEmoteTable, Config.Languages[lang]['rfavorite'])
- table.insert(EmoteTable, Config.Languages[lang]['favoriteemotes'])
- else
- table.insert(EmoteTable, "keybinds")
- keyinfo = NativeUI.CreateItem(Config.Languages[lang]['keybinds'], Config.Languages[lang]['keybindsinfo'] .. " /emotebind [~y~num4-9~w~] [~g~emotename~w~]")
- submenu:AddItem(keyinfo)
- end
-
- for a, b in pairsByKeys(DP.Emotes) do
- x, y, z = table.unpack(b)
- emoteitem = NativeUI.CreateItem(z, "/e (" .. a .. ")")
- submenu:AddItem(emoteitem)
- table.insert(EmoteTable, a)
- if not Config.SqlKeybinding then
- favemoteitem = NativeUI.CreateItem(z, Config.Languages[lang]['set'] .. z .. Config.Languages[lang]['setboundemote'])
- favmenu:AddItem(favemoteitem)
- table.insert(FavEmoteTable, a)
- end
- end
-
- for a, b in pairsByKeys(DP.Dances) do
- x, y, z = table.unpack(b)
- danceitem = NativeUI.CreateItem(z, "/e (" .. a .. ")")
- sharedanceitem = NativeUI.CreateItem(z, "")
- dancemenu:AddItem(danceitem)
- if Config.SharedEmotesEnabled then
- shareddancemenu:AddItem(sharedanceitem)
- end
- table.insert(DanceTable, a)
- end
-
- for a, b in pairsByKeys(DP.AnimalEmotes) do
- x, y, z = table.unpack(b)
- animalitem = NativeUI.CreateItem(z, "/e (" .. a .. ")")
- animalmenu:AddItem(animalitem)
- table.insert(AnimalTable, a)
- end
-
- if Config.SharedEmotesEnabled then
- for a, b in pairsByKeys(DP.Shared) do
- x, y, z, otheremotename = table.unpack(b)
- if otheremotename == nil then
- shareitem = NativeUI.CreateItem(z, "/nearby (~g~" .. a .. "~w~)")
- else
- shareitem = NativeUI.CreateItem(z, "/nearby (~g~" .. a .. "~w~) " .. Config.Languages[lang]['makenearby'] .. " (~y~" .. otheremotename .. "~w~)")
- end
- sharemenu:AddItem(shareitem)
- table.insert(ShareTable, a)
- end
- end
-
- for a, b in pairsByKeys(DP.PropEmotes) do
- x, y, z = table.unpack(b)
- propitem = NativeUI.CreateItem(z, "/e (" .. a .. ")")
- propmenu:AddItem(propitem)
- table.insert(PropETable, a)
- if not Config.SqlKeybinding then
- propfavitem = NativeUI.CreateItem(z, Config.Languages[lang]['set'] .. z .. Config.Languages[lang]['setboundemote'])
- favmenu:AddItem(propfavitem)
- table.insert(FavEmoteTable, a)
- end
- end
-
- if not Config.SqlKeybinding then
- favmenu.OnItemSelect = function(sender, item, index)
- if FavEmoteTable[index] == Config.Languages[lang]['rfavorite'] then
- FavoriteEmote = ""
- ShowNotification(Config.Languages[lang]['rfavorite'], 2000)
- return
- end
- if Config.FavKeybindEnabled then
- FavoriteEmote = FavEmoteTable[index]
- ShowNotification("~o~" .. firstToUpper(FavoriteEmote) .. Config.Languages[lang]['newsetemote'])
- end
- end
- end
-
- dancemenu.OnItemSelect = function(sender, item, index)
- EmoteMenuStart(DanceTable[index], "dances")
- end
-
- animalmenu.OnItemSelect = function(sender, item, index)
- EmoteMenuStart(AnimalTable[index], "animals")
- end
-
- if Config.SharedEmotesEnabled then
- sharemenu.OnItemSelect = function(sender, item, index)
- if ShareTable[index] ~= 'none' then
- target, distance = GetClosestPlayer()
- if (distance ~= -1 and distance < 3) then
- _, _, rename = table.unpack(DP.Shared[ShareTable[index]])
- TriggerServerEvent("ServerEmoteRequest", GetPlayerServerId(target), ShareTable[index])
- SimpleNotify(Config.Languages[lang]['sentrequestto'] .. GetPlayerName(target))
- else
- SimpleNotify(Config.Languages[lang]['nobodyclose'])
- end
- end
- end
-
- shareddancemenu.OnItemSelect = function(sender, item, index)
- target, distance = GetClosestPlayer()
- if (distance ~= -1 and distance < 3) then
- _, _, rename = table.unpack(DP.Dances[DanceTable[index]])
- TriggerServerEvent("ServerEmoteRequest", GetPlayerServerId(target), DanceTable[index], 'Dances')
- SimpleNotify(Config.Languages[lang]['sentrequestto'] .. GetPlayerName(target))
- else
- SimpleNotify(Config.Languages[lang]['nobodyclose'])
- end
- end
- end
-
- propmenu.OnItemSelect = function(sender, item, index)
- EmoteMenuStart(PropETable[index], "props")
- end
-
- submenu.OnItemSelect = function(sender, item, index)
- if EmoteTable[index] ~= Config.Languages[lang]['favoriteemotes'] then
- EmoteMenuStart(EmoteTable[index], "emotes")
- end
- end
-end
-
-function AddCancelEmote(menu)
- local newitem = NativeUI.CreateItem(Config.Languages[lang]['cancelemote'], Config.Languages[lang]['cancelemoteinfo'])
- menu:AddItem(newitem)
- menu.OnItemSelect = function(sender, item, checked_)
- if item == newitem then
- EmoteCancel()
- DestroyAllProps()
- end
- end
-end
-
-function AddWalkMenu(menu)
- local submenu = _menuPool:AddSubMenu(menu, Config.Languages[lang]['walkingstyles'], "", "", Menuthing, Menuthing)
-
- walkreset = NativeUI.CreateItem(Config.Languages[lang]['normalreset'], Config.Languages[lang]['resetdef'])
- submenu:AddItem(walkreset)
- table.insert(WalkTable, Config.Languages[lang]['resetdef'])
-
- WalkInjured = NativeUI.CreateItem("Injured", "")
- submenu:AddItem(WalkInjured)
- table.insert(WalkTable, "move_m@injured")
-
- for a, b in pairsByKeys(DP.Walks) do
- x = table.unpack(b)
- walkitem = NativeUI.CreateItem(a, "")
- submenu:AddItem(walkitem)
- table.insert(WalkTable, x)
- end
-
- submenu.OnItemSelect = function(sender, item, index)
- if item ~= walkreset then
- WalkMenuStart(WalkTable[index])
- else
- ResetPedMovementClipset(PlayerPedId())
- end
- end
-end
-
-function AddFaceMenu(menu)
- local submenu = _menuPool:AddSubMenu(menu, Config.Languages[lang]['moods'], "", "", Menuthing, Menuthing)
-
- facereset = NativeUI.CreateItem(Config.Languages[lang]['normalreset'], Config.Languages[lang]['resetdef'])
- submenu:AddItem(facereset)
- table.insert(FaceTable, "")
-
- for a, b in pairsByKeys(DP.Expressions) do
- x, y, z = table.unpack(b)
- faceitem = NativeUI.CreateItem(a, "")
- submenu:AddItem(faceitem)
- table.insert(FaceTable, a)
- end
-
- submenu.OnItemSelect = function(sender, item, index)
- if item ~= facereset then
- EmoteMenuStart(FaceTable[index], "expression")
- else
- ClearFacialIdleAnimOverride(PlayerPedId())
- end
- end
-end
-
-function AddInfoMenu(menu)
- if not UpdateAvailable then
- infomenu = _menuPool:AddSubMenu(menu, Config.Languages[lang]['infoupdate'], "Huge Thank You ❤️", "", Menuthing, Menuthing)
- else
- infomenu = _menuPool:AddSubMenu(menu, Config.Languages[lang]['infoupdateav'], Config.Languages[lang]['infoupdateavtext'], "", Menuthing, Menuthing)
- end
- contact = NativeUI.CreateItem(Config.Languages[lang]['suggestions'], Config.Languages[lang]['suggestionsinfo'])
- u170 = NativeUI.CreateItem("Thanks", "DullPear for the original dpemotes ❤️")
- u165 = NativeUI.CreateItem("Thanks", "AvaN0x for assisting with the formatting of the code.")
- u160 = NativeUI.CreateItem("Thanks", "SMGMissy for the custom pride flags 🏳️🌈.")
- u151 = NativeUI.CreateItem("Thanks", "Kibook for the addition of Animal Emotes 🐩.")
- u150 = NativeUI.CreateItem("Thanks", "To you, the community for helping me keep this menu alive ❤️.")
- infomenu:AddItem(contact)
- infomenu:AddItem(u170)
- infomenu:AddItem(u165)
- infomenu:AddItem(u160)
- infomenu:AddItem(u151)
- infomenu:AddItem(u150)
-end
-
-function OpenEmoteMenu()
- mainMenu:Visible(not mainMenu:Visible())
-end
-
-function firstToUpper(str)
- return (str:gsub("^%l", string.upper))
-end
-
-AddEmoteMenu(mainMenu)
-AddCancelEmote(mainMenu)
-if Config.WalkingStylesEnabled then
- AddWalkMenu(mainMenu)
-end
-if Config.ExpressionsEnabled then
- AddFaceMenu(mainMenu)
-end
-
-_menuPool:RefreshIndex()
-
-Citizen.CreateThread(function()
- while true do
- Citizen.Wait(0)
- _menuPool:ProcessMenus()
- end
-end)
-
-RegisterNetEvent("dp:Update")
-AddEventHandler("dp:Update", function(state)
- UpdateAvailable = state
- AddInfoMenu(mainMenu)
- _menuPool:RefreshIndex()
-end)
-
-RegisterNetEvent("dp:RecieveMenu") -- For opening the emote menu from another resource.
-AddEventHandler("dp:RecieveMenu", function()
- OpenEmoteMenu()
-end)
diff --git a/resources/dpemotes-master/client/Keybinds.lua b/resources/dpemotes-master/client/Keybinds.lua
deleted file mode 100644
index 2994d60d5..000000000
--- a/resources/dpemotes-master/client/Keybinds.lua
+++ /dev/null
@@ -1,126 +0,0 @@
-if Config.SqlKeybinding then
- local emob1 = ""
- local emob2 = ""
- local emob3 = ""
- local emob4 = ""
- local emob5 = ""
- local emob6 = ""
- local keyb1 = ""
- local keyb2 = ""
- local keyb3 = ""
- local keyb4 = ""
- local keyb5 = ""
- local keyb6 = ""
- local Initialized = false
-
- -----------------------------------------------------------------------------------------------------
- -- Commands / Events --------------------------------------------------------------------------------
- -----------------------------------------------------------------------------------------------------
-
- Citizen.CreateThread(function()
- while true do
- if NetworkIsPlayerActive(PlayerId()) and not Initialized then
- if not Initialized then
- TriggerServerEvent("dp:ServerKeybindExist")
- Wait(5000)
- end
- end
-
- if not IsPedSittingInAnyVehicle(PlayerPedId()) then
- for k, v in pairs(Config.KeybindKeys) do
- if IsControlJustReleased(0, v) then
- if k == keyb1 then if emob1 ~= "" then EmoteCommandStart(nil, { emob1, 0 }) end end
- if k == keyb2 then if emob2 ~= "" then EmoteCommandStart(nil, { emob2, 0 }) end end
- if k == keyb3 then if emob3 ~= "" then EmoteCommandStart(nil, { emob3, 0 }) end end
- if k == keyb4 then if emob4 ~= "" then EmoteCommandStart(nil, { emob4, 0 }) end end
- if k == keyb5 then if emob5 ~= "" then EmoteCommandStart(nil, { emob5, 0 }) end end
- if k == keyb6 then if emob6 ~= "" then EmoteCommandStart(nil, { emob6, 0 }) end end
- Wait(1000)
- end
- end
- end
- Citizen.Wait(1)
- end
- end)
-
- RegisterNetEvent("dp:ClientKeybindExist")
- AddEventHandler("dp:ClientKeybindExist", function(does)
- if does then
- TriggerServerEvent("dp:ServerKeybindGrab")
- else
- TriggerServerEvent("dp:ServerKeybindCreate")
- end
- end)
-
- RegisterNetEvent("dp:ClientKeybindGet")
- AddEventHandler("dp:ClientKeybindGet", function(k1, e1, k2, e2, k3, e3, k4, e4, k5, e5, k6, e6)
- keyb1 = k1
- emob1 = e1
- keyb2 = k2
- emob2 = e2
- keyb3 = k3
- emob3 = e3
- keyb4 = k4
- emob4 = e4
- keyb5 = k5
- emob5 = e5
- keyb6 = k6
- emob6 = e6
- Initialized = true
- end)
-
- RegisterNetEvent("dp:ClientKeybindGetOne")
- AddEventHandler("dp:ClientKeybindGetOne", function(key, e)
- SimpleNotify(Config.Languages[lang]['bound'] .. "~y~" .. e .. "~w~ " .. Config.Languages[lang]['to'] .. " ~g~" .. firstToUpper(key) .. "~w~")
- if key == "num4" then emob1 = e
- keyb1 = "num4"
- elseif key == "num5" then emob2 = e
- keyb2 = "num5"
- elseif key == "num6" then emob3 = e
- keyb3 = "num6"
- elseif key == "num7" then emob4 = e
- keyb4 = "num7"
- elseif key == "num8" then emob5 = e
- keyb5 = "num8"
- elseif key == "num9" then emob6 = e
- keyb6 = "num9"
- end
- end)
-
- -----------------------------------------------------------------------------------------------------
- ------ Functions and stuff --------------------------------------------------------------------------
- -----------------------------------------------------------------------------------------------------
-
- function EmoteBindsStart()
- EmoteChatMessage(Config.Languages[lang]['currentlyboundemotes'] .. "\n"
- .. firstToUpper(keyb1) .. " = '^2" .. emob1 .. "^7'\n"
- .. firstToUpper(keyb2) .. " = '^2" .. emob2 .. "^7'\n"
- .. firstToUpper(keyb3) .. " = '^2" .. emob3 .. "^7'\n"
- .. firstToUpper(keyb4) .. " = '^2" .. emob4 .. "^7'\n"
- .. firstToUpper(keyb5) .. " = '^2" .. emob5 .. "^7'\n"
- .. firstToUpper(keyb6) .. " = '^2" .. emob6 .. "^7'\n")
- end
-
- function EmoteBindStart(source, args, raw)
- if #args > 0 then
- local key = string.lower(args[1])
- local emote = string.lower(args[2])
- if (Config.KeybindKeys[key]) ~= nil then
- if DP.Emotes[emote] ~= nil then
- TriggerServerEvent("dp:ServerKeybindUpdate", key, emote)
- elseif DP.Dances[emote] ~= nil then
- TriggerServerEvent("dp:ServerKeybindUpdate", key, emote)
- elseif DP.PropEmotes[emote] ~= nil then
- TriggerServerEvent("dp:ServerKeybindUpdate", key, emote)
- else
- EmoteChatMessage("'" .. emote .. "' " .. Config.Languages[lang]['notvalidemote'] .. "")
- end
- else
- EmoteChatMessage("'" .. key .. "' " .. Config.Languages[lang]['notvalidkey'])
- end
- else
- print("invalid")
- end
- end
-
-end
diff --git a/resources/dpemotes-master/client/Ragdoll.lua b/resources/dpemotes-master/client/Ragdoll.lua
deleted file mode 100644
index 8352435f2..000000000
--- a/resources/dpemotes-master/client/Ragdoll.lua
+++ /dev/null
@@ -1,24 +0,0 @@
-local isInRagdoll = false
-
-Citizen.CreateThread(function()
- while true do
- Citizen.Wait(10)
- if isInRagdoll then
- SetPedToRagdoll(PlayerPedId(), 1000, 1000, 0, 0, 0, 0)
- end
- end
-end)
-
-Citizen.CreateThread(function()
- while true do
- Citizen.Wait(0)
- if IsControlJustPressed(2, Config.RagdollKeybind) and Config.RagdollEnabled and IsPedOnFoot(PlayerPedId()) then
- if isInRagdoll then
- isInRagdoll = false
- else
- isInRagdoll = true
- Wait(500)
- end
- end
- end
-end)
diff --git a/resources/dpemotes-master/client/Syncing.lua b/resources/dpemotes-master/client/Syncing.lua
deleted file mode 100644
index f925acd96..000000000
--- a/resources/dpemotes-master/client/Syncing.lua
+++ /dev/null
@@ -1,236 +0,0 @@
-local isRequestAnim = false
-local requestedemote = ''
-local targetPlayerId = ''
-
--- Some of the work here was done by Super.Cool.Ninja / rubbertoe98
--- https://forum.fivem.net/t/release-nanimstarget/876709
-
------------------------------------------------------------------------------------------------------
--- Commands / Events --------------------------------------------------------------------------------
------------------------------------------------------------------------------------------------------
-if Config.SharedEmotesEnabled then
- RegisterCommand('nearby', function(source, args, raw)
- if #args > 0 then
- local emotename = string.lower(args[1])
- target, distance = GetClosestPlayer()
- if (distance ~= -1 and distance < 3) then
- if DP.Shared[emotename] ~= nil then
- dict, anim, ename = table.unpack(DP.Shared[emotename])
- TriggerServerEvent("ServerEmoteRequest", GetPlayerServerId(target), emotename)
- SimpleNotify(Config.Languages[lang]['sentrequestto'] ..
- GetPlayerName(target) .. " ~w~(~g~" .. ename .. "~w~)")
- else
- EmoteChatMessage("'" .. emotename .. "' " .. Config.Languages[lang]['notvalidsharedemote'] .. "")
- end
- else
- SimpleNotify(Config.Languages[lang]['nobodyclose'])
- end
- else
- MearbysOnCommand()
- end
- end, false)
-end
-
-RegisterNetEvent("SyncPlayEmote")
-AddEventHandler("SyncPlayEmote", function(emote, player)
- EmoteCancel()
- Wait(300)
- targetPlayerId = player
- -- wait a little to make sure animation shows up right on both clients after canceling any previous emote
- if DP.Shared[emote] ~= nil then
- if DP.Shared[emote].AnimationOptions and DP.Shared[emote].AnimationOptions.Attachto then
- -- We do not want to attach the player if the target emote already is attached to player
- -- this would cause issue where both player would be attached to each other and fall under the map
- local targetEmote = DP.Shared[emote][4]
- if not targetEmote or not DP.Shared[targetEmote] or not DP.Shared[targetEmote].AnimationOptions or
- not DP.Shared[targetEmote].AnimationOptions.Attachto then
- local plyServerId = GetPlayerFromServerId(player)
- local pedInFront = GetPlayerPed(plyServerId ~= 0 and plyServerId or GetClosestPlayer())
- local bone = DP.Shared[emote].AnimationOptions.bone or 11816 -- SKEL_Pelvis
- local xPos = DP.Shared[emote].AnimationOptions.xPos or 0.0
- local yPos = DP.Shared[emote].AnimationOptions.yPos or 0.0
- local zPos = DP.Shared[emote].AnimationOptions.zPos or 0.0
- local xRot = DP.Shared[emote].AnimationOptions.xRot or 0.0
- local yRot = DP.Shared[emote].AnimationOptions.yRot or 0.0
- local zRot = DP.Shared[emote].AnimationOptions.zRot or 0.0
- AttachEntityToEntity(PlayerPedId(), pedInFront, bone, xPos, yPos, zPos, xRot, yRot, zRot, false, false,
- false, false, 2, false)
- end
- end
-
- if OnEmotePlay(DP.Shared[emote]) then end
- return
- elseif DP.Dances[emote] ~= nil then
- if OnEmotePlay(DP.Dances[emote]) then end
- return
- end
-end)
-
-RegisterNetEvent("SyncPlayEmoteSource")
-AddEventHandler("SyncPlayEmoteSource", function(emote, player)
- -- Thx to Poggu for this part!
- local ply = PlayerPedId()
- local plyServerId = GetPlayerFromServerId(player)
- local pedInFront = GetPlayerPed(plyServerId ~= 0 and plyServerId or GetClosestPlayer())
-
- local heading = GetEntityHeading(pedInFront)
- local coords = GetOffsetFromEntityInWorldCoords(pedInFront, 0.0, 1.0, 0.0)
- if (DP.Shared[emote] and DP.Shared[emote].AnimationOptions) then
- local SyncOffsetFront = DP.Shared[emote].AnimationOptions.SyncOffsetFront
- if SyncOffsetFront then
- coords = GetOffsetFromEntityInWorldCoords(pedInFront, 0.0, SyncOffsetFront, 0.0)
- end
-
- -- There is a priority to the source attached, if it is not set, it will use the target
- if (DP.Shared[emote].AnimationOptions.Attachto) then
- local bone = DP.Shared[emote].AnimationOptions.bone or 11816 -- SKEL_Pelvis
- local xPos = DP.Shared[emote].AnimationOptions.xPos or 0.0
- local yPos = DP.Shared[emote].AnimationOptions.yPos or 0.0
- local zPos = DP.Shared[emote].AnimationOptions.zPos or 0.0
- local xRot = DP.Shared[emote].AnimationOptions.xRot or 0.0
- local yRot = DP.Shared[emote].AnimationOptions.yRot or 0.0
- local zRot = DP.Shared[emote].AnimationOptions.zRot or 0.0
- AttachEntityToEntity(ply, pedInFront, bone, xPos, yPos, zPos, xRot, yRot, zRot, false, false, false, false,
- 2, false)
- end
- end
- SetEntityHeading(ply, heading - 180.1)
- SetEntityCoordsNoOffset(ply, coords.x, coords.y, coords.z, 0)
- EmoteCancel()
- Wait(300)
- targetPlayerId = player
- if DP.Shared[emote] ~= nil then
- if OnEmotePlay(DP.Shared[emote]) then end
- return
- elseif DP.Dances[emote] ~= nil then
- if OnEmotePlay(DP.Dances[emote]) then end
- return
- end
-end)
-
-RegisterNetEvent("SyncCancelEmote")
-AddEventHandler("SyncCancelEmote", function(player)
- if targetPlayerId and targetPlayerId == player then
- targetPlayerId = nil
- EmoteCancel()
- end
-end)
-
-function CancelSharedEmote(ply)
- if targetPlayerId then
- TriggerServerEvent("ServerEmoteCancel", targetPlayerId)
- targetPlayerId = nil
- end
-end
-
-RegisterNetEvent("ClientEmoteRequestReceive")
-AddEventHandler("ClientEmoteRequestReceive", function(emotename, etype)
- isRequestAnim = true
- requestedemote = emotename
-
- if etype == 'Dances' then
- _, _, remote = table.unpack(DP.Dances[requestedemote])
- else
- _, _, remote = table.unpack(DP.Shared[requestedemote])
- end
-
- PlaySound(-1, "NAV", "HUD_AMMO_SHOP_SOUNDSET", 0, 0, 1)
- SimpleNotify(Config.Languages[lang]['doyouwanna'] .. remote .. "~w~)")
-end)
-
-Citizen.CreateThread(function()
- while true do
- Citizen.Wait(5)
- if IsControlJustPressed(1, 246) and isRequestAnim then
- target, distance = GetClosestPlayer()
- if (distance ~= -1 and distance < 3) then
- if DP.Shared[requestedemote] ~= nil then
- _, _, _, otheremote = table.unpack(DP.Shared[requestedemote])
- elseif DP.Dances[requestedemote] ~= nil then
- _, _, _, otheremote = table.unpack(DP.Dances[requestedemote])
- end
- if otheremote == nil then otheremote = requestedemote end
- TriggerServerEvent("ServerValidEmote", GetPlayerServerId(target), requestedemote, otheremote)
- isRequestAnim = false
- else
- SimpleNotify(Config.Languages[lang]['nobodyclose'])
- end
- elseif IsControlJustPressed(1, 182) and isRequestAnim then
- SimpleNotify(Config.Languages[lang]['refuseemote'])
- isRequestAnim = false
- end
- end
-end)
-
------------------------------------------------------------------------------------------------------
------- Functions and stuff --------------------------------------------------------------------------
------------------------------------------------------------------------------------------------------
-
-function GetPlayerFromPed(ped)
- for _, player in ipairs(GetActivePlayers()) do
- if GetPlayerPed(player) == ped then
- return player
- end
- end
- return -1
-end
-
-function GetPedInFront()
- local player = PlayerId()
- local plyPed = GetPlayerPed(player)
- local plyPos = GetEntityCoords(plyPed, false)
- local plyOffset = GetOffsetFromEntityInWorldCoords(plyPed, 0.0, 1.3, 0.0)
- local rayHandle = StartShapeTestCapsule(plyPos.x, plyPos.y, plyPos.z, plyOffset.x, plyOffset.y, plyOffset.z, 10.0, 12
- , plyPed, 7)
- local _, _, _, _, ped2 = GetShapeTestResult(rayHandle)
- return ped2
-end
-
-function MearbysOnCommand(source, args, raw)
- local NearbysCommand = ""
- for a in pairsByKeys(DP.Shared) do
- NearbysCommand = NearbysCommand .. "" .. a .. ", "
- end
- EmoteChatMessage(NearbysCommand)
- EmoteChatMessage(Config.Languages[lang]['emotemenucmd'])
-end
-
-function SimpleNotify(message)
- SetNotificationTextEntry("STRING")
- AddTextComponentString(message)
- DrawNotification(0, 1)
-end
-
-function GetClosestPlayer()
- local players = GetPlayers()
- local closestDistance = -1
- local closestPlayer = -1
- local ply = PlayerPedId()
- local plyCoords = GetEntityCoords(ply, 0)
-
- for index, value in ipairs(players) do
- local target = GetPlayerPed(value)
- if (target ~= ply) then
- local targetCoords = GetEntityCoords(GetPlayerPed(value), 0)
- local distance = GetDistanceBetweenCoords(targetCoords["x"], targetCoords["y"], targetCoords["z"],
- plyCoords["x"], plyCoords["y"], plyCoords["z"], true)
- if (closestDistance == -1 or closestDistance > distance) then
- closestPlayer = value
- closestDistance = distance
- end
- end
- end
- return closestPlayer, closestDistance
-end
-
-function GetPlayers()
- local players = {}
-
- for i = 0, 255 do
- if NetworkIsPlayerActive(i) then
- table.insert(players, i)
- end
- end
-
- return players
-end
diff --git a/resources/dpemotes-master/client/Walk.lua b/resources/dpemotes-master/client/Walk.lua
deleted file mode 100644
index e5f1e6750..000000000
--- a/resources/dpemotes-master/client/Walk.lua
+++ /dev/null
@@ -1,41 +0,0 @@
-function WalkMenuStart(name)
- RequestWalking(name)
- SetPedMovementClipset(PlayerPedId(), name, 0.2)
- RemoveAnimSet(name)
-end
-
-function RequestWalking(set)
- RequestAnimSet(set)
- while not HasAnimSetLoaded(set) do
- Citizen.Wait(1)
- end
-end
-
-function WalksOnCommand(source, args, raw)
- local WalksCommand = ""
- for a in pairsByKeys(DP.Walks) do
- WalksCommand = WalksCommand .. "" .. string.lower(a) .. ", "
- end
- EmoteChatMessage(WalksCommand)
- EmoteChatMessage("To reset do /walk reset")
-end
-
-function WalkCommandStart(source, args, raw)
- local name = firstToUpper(args[1])
-
- if name == "Reset" then
- ResetPedMovementClipset(PlayerPedId())
- return
- end
-
- if tableHasKey(DP.Walks, name) then
- local name2 = table.unpack(DP.Walks[name])
- WalkMenuStart(name2)
- else
- EmoteChatMessage("'" .. name .. "' is not a valid walk")
- end
-end
-
-function tableHasKey(table, key)
- return table[key] ~= nil
-end
diff --git a/resources/dpemotes-master/config.lua b/resources/dpemotes-master/config.lua
deleted file mode 100644
index 7cb88fd94..000000000
--- a/resources/dpemotes-master/config.lua
+++ /dev/null
@@ -1,589 +0,0 @@
-Config = {
- -- Change the language of the menu here!.
- -- Note fr and de are google translated, if you would like to help out with translations, feel free to send me an 'issue' on Github.
- -- Thank you to those who provided translations.
- --
-
- MenuLanguage = 'en',
- -- Set this to true to enable some extra prints
- DebugDisplay = false,
- -- Set this to false if you have something else on X, and then just use /e c to cancel emotes.
- EnableXtoCancel = true,
- -- Set this to true if you want to disarm the player when they play an emote.
- DisarmPlayer = false,
- -- Set this if you really wanna disable emotes in cars, as of 1.7.2 they only play the upper body part if in vehicle
- AllowedInCars = true,
- -- You can disable the menu here / change the keybind. It is currently set to F3
- MenuKeybindEnabled = true,
- MenuKeybind = 'DELETE', -- Get the button string here https://docs.fivem.net/docs/game-references/input-mapper-parameter-ids/keyboard/
- -- You can disable the Favorite emote keybinding here.
- FavKeybindEnabled = true,
- FavKeybind = 256, -- Get the button number here https://docs.fivem.net/game-references/controls/
- -- You can change the header image for the menu here
- -- Use a 512 x 128 image!
- -- Note this might cause an issue of the image getting stuck on peoples screens
- CustomMenuEnabled = true,
- MenuImage = "https://i.imgur.com/IRzHWb3.png", ----[Custom banner imgur URLs go here ]---
- -- You can change the menu image by pasting a link above. It must be the same width and length
- --
- -- You can change the menu position here
- MenuPosition = "right", -- (left, right)
- -- You can enable or disable the Ragdoll keybinding here.
- RagdollEnabled = false,
- RagdollKeybind = 303, -- Get the button number here https://docs.fivem.net/game-references/controls/
- -- You can disable the Facial Expressions menu here.
- ExpressionsEnabled = true,
- -- You can disable the Walking Styles menu here.
- WalkingStylesEnabled = true,
- -- You can disable the Shared Emotes here.
- SharedEmotesEnabled = true,
- CheckForUpdates = true,
- -- If you have the SQL imported enable this to turn on keybinding.
- SqlKeybinding = false,
-}
-
-Config.KeybindKeys = {
- ['num4'] = 108,
- ['num5'] = 110,
- ['num6'] = 109,
- ['num7'] = 117,
- ['num8'] = 111,
- ['num9'] = 118
-}
-
-Config.Languages = {
- ['en'] = { -- English 🇬🇧
- ['emotes'] = 'Emotes 🎬',
- ['danceemotes'] = "🕺 Dance Emotes",
- ['animalemotes'] = "🐩 Animal Emotes",
- ['propemotes'] = "📦 Prop Emotes",
- ['favoriteemotes'] = "🌟 Favorite",
- ['favoriteinfo'] = "Select an emote here to set it as your favorite.",
- ['rfavorite'] = "Reset favorite",
- ['prop2info'] = "❓ Prop Emotes can be located at the end",
- ['set'] = "Set (",
- ['setboundemote'] = ") to be your bound emote?",
- ['newsetemote'] = "~w~ is now your bound emote, press ~g~CapsLock~w~ to use it.",
- ['cancelemote'] = "Cancel Emote 🚷",
- ['cancelemoteinfo'] = "~r~X~w~ Cancels the currently playing emote",
- ['walkingstyles'] = "Walking Styles 🚶🏻♂️",
- ['resetdef'] = "Reset to default",
- ['normalreset'] = "Normal (Reset)",
- ['moods'] = "Moods 😒",
- ['infoupdate'] = "Credits & Suggestions 🙏🏻",
- ['infoupdateav'] = "Information (Update available)",
- ['infoupdateavtext'] = "An update is available, get the latest version from ~y~https://github.com/TayMcKenzieNZ/dpemotes~w~",
- ['suggestions'] = "Suggestions?",
- ['suggestionsinfo'] = "'TayMcKenzieNZ' on FiveM forums for any feature/emote suggestions! ✉️",
- ['notvaliddance'] = "is not a valid dance.",
- ['notvalidemote'] = "is not a valid emote.",
- ['nocancel'] = "No emote to cancel.",
- ['maleonly'] = "This emote is male only, sorry!",
- ['emotemenucmd'] = "Do /emotemenu for a menu.",
- ['shareemotes'] = "👫 Shared Emotes",
- ['shareemotesinfo'] = "Invite a nearby person to emote",
- ['sharedanceemotes'] = "🕺 Shared Dances",
- ['notvalidsharedemote'] = "is not a valid shared emote.",
- ['sentrequestto'] = "Sent request to ~y~",
- ['nobodyclose'] = "Nobody ~r~close~w~ enough.",
- ['doyouwanna'] = "~y~Y~w~ to accept, ~r~L~w~ to refuse (~g~",
- ['refuseemote'] = "Emote refused.",
- ['makenearby'] = "makes the nearby player play",
- ['camera'] = "Press ~y~G~w~ to use camera flash.",
- ['makeitrain'] = "Press ~y~G~w~ to make it rain.",
- ['pee'] = "Hold ~y~G~w~ to pee.",
- ['spraychamp'] = "Hold ~y~G~w~ to spray champagne",
- ['stun'] = "Press ~y~G~w~ to 'use' stun gun.",
- ['bound'] = "Bound ",
- ['to'] = "to",
- ['currentlyboundemotes'] = " Currently bound emotes:",
- ['notvalidkey'] = "is not a valid key.",
- ['keybinds'] = "🔢 Keybinds",
- ['keybindsinfo'] = "Use"
- },
- ['cs'] = { -- Czech 🇨🇿
- ['emotes'] = 'Animace 🎬',
- ['danceemotes'] = "🕺 Taneční Animace",
- ['animalemotes'] = "🐩 zvířecí Animace",
- ['propemotes'] = "📦 Animace s předměty",
- ['favoriteemotes'] = "🌟 Oblíbené",
- ['favoriteinfo'] = "Vyberte si animaci a nastavte ji jako svou oblíbenou.",
- ['rfavorite'] = "Obnovit oblíbené",
- ['prop2info'] = "❓ Pomůcky se mohou nacházet na konci",
- ['set'] = "Nastavit",
- ['setboundemote'] = "Nastavit jako vaši animaci?",
- ['newsetemote'] = "~w~ je nyní vaší novou nastavenou animací. Chcete-li jej použít, stiskněte ~g~CapsLock~w~.",
- ['cancelemote'] = "Zrušit animaci 🚷",
- ['cancelemoteinfo'] = "~r~X~w~ Zruší aktuálně přehrávanou animaci",
- ['walkingstyles'] = "Styly chůze 🚶🏻♂️",
- ['resetdef'] = "Obnovit do základního nastavení",
- ['normalreset'] = "Neutrální výraz",
- ['moods'] = "Výrazy 😒",
- ['infoupdate'] = "Kredity a nápady 🙏🏻",
- ['infoupdateav'] = "Informace (aktualizace dostupná)",
- ['infoupdateavtext'] = "Je k dispozici aktualizace, stáhněte si nejnovější verzi z ~y~https://github.com/TayMcKenzieNZ/dpemotes~w~",
- ['suggestions'] = "Nápady?",
- ['suggestionsinfo'] = "'TayMcKenzieNZ' na FiveM forums je pro jakýkoliv návrh! ✉️",
- ['notvaliddance'] = "Není platný tanec.",
- ['notvalidemote'] = "Není platná animace.",
- ['nocancel'] = "Žádné animace ke zrušení.",
- ['maleonly'] = "Tato emoce je pouze pro muže, omlouvám se!",
- ['emotemenucmd'] = "Použíj /emotemenu pro otevření menu.",
- ['shareemotes'] = "👫 Sdílené animace",
- ['shareemotesinfo'] = "Pozvěte osobu v okolí, k tanci",
- ['sharedanceemotes'] = "🕺 Sdílený tanece",
- ['notvalidsharedemote'] = "Není platný Sdílený tanec.",
- ['sentrequestto'] = "Odeslal jsi ~y~ žádost o tanec ",
- ['nobodyclose'] = "Nikdo ~r~není~w~ v dostatečné blízkosti.",
- ['doyouwanna'] = "~y~Y~w~ pro příjmutí, ~r~L~w~ pro odmitnutí (~g~",
- ['refuseemote'] = "Emote odmítnut.",
- ['makenearby'] = "nechat hráče poblíž hrát",
- ['camera'] = "Stiskni ~y~G~w~ pro použítí blesku u fotoaparátu.",
- ['makeitrain'] = "Stiskni ~y~G~w~ pro spuštení deště.",
- ['pee'] = "Podrž ~y~G~w~ pro čůraní.",
- ['spraychamp'] = "Podrž ~y~G~w~ pro stříkaní šampaňského",
- ['stun'] = "Stiskni ~y~G~w~ pro 'použití' paralyzéru.",
- ['bound'] = "Bound ",
- ['to'] = "na",
- ['currentlyboundemotes'] = "Momentálně nastavené animace:",
- ['notvalidkey'] = "Není platná klávesa.",
- ['keybinds'] = "🔢 Klávesové Zkratky",
- ['keybindsinfo'] = "Use"
- },
- ['fr'] = { -- French 🇫🇷
- ['emotes'] = 'Emotes 🎬',
- ['danceemotes'] = "🕺 Danses",
- ['animalemotes'] = "🐩 Emotes d'animaux",
- ['propemotes'] = "📦 Emotes objet",
- ['favoriteemotes'] = "🌟 Favori",
- ['favoriteinfo'] = "Définir une emote comme favori.",
- ['rfavorite'] = "Réinitialiser le favori.",
- ['prop2info'] = "❓ Les emotes d'objet peuvent être à la fin",
- ['set'] = "Mettre (",
- ['setboundemote'] = ") en emote favorite?",
- ['newsetemote'] = "~w~ est maintenant votre emote favorite, appuyez sur ~g~CapsLock~w~ pour l'utiliser.",
- ['cancelemote'] = "Annuler Emote 🚷",
- ['cancelemoteinfo'] = "~r~X~w~ Annule l'emote en cours",
- ['walkingstyles'] = "Styles de marche 🚶🏻♂️",
- ['resetdef'] = "Réinitialiser aux valeurs par défaut",
- ['normalreset'] = "Normal (réinitialiser)",
- ['moods'] = "Humeurs 😒",
- ['infoupdate'] = "Crédits et suggestions 🙏🏻",
- ['infoupdateav'] = "Information (Mise à jour disponible)",
- ['infoupdateavtext'] = "Une mise à jour est disponible ~y~https://github.com/TayMcKenzieNZ/dpemotes~w~",
- ['suggestions'] = "Suggestions?",
- ['suggestionsinfo'] = "'TayMcKenzieNZ' sur les forums FiveM pour toutes les suggestions! ✉️",
- ['notvaliddance'] = "n'est pas une danse valide",
- ['notvalidemote'] = "n'est pas une emote valide",
- ['nocancel'] = "Pas d'emote à annuler",
- ['maleonly'] = "Cet emote est réservé aux hommes, désolé!",
- ['emotemenucmd'] = "Fait /emotemenu pour ouvrir le menu",
- ['shareemotes'] = "👫 Emotes partagées",
- ['shareemotesinfo'] = "Invite une personne proche à faire une emote avec toi",
- ['sharedanceemotes'] = "🕺 Dances partagées",
- ['notvalidsharedemote'] = "n'est pas un emote partagée valide.",
- ['sentrequestto'] = "Demande envoyée à ~g~",
- ['nobodyclose'] = "Personne n'esst assez proche.",
- ['doyouwanna'] = "~y~Y~w~ accepter, ~r~L~w~ refuser (~g~",
- ['refuseemote'] = "Emote refusée.",
- ['makenearby'] = "fait jouer le joueur à proximité",
- ['camera'] = "Presse ~y~G~w~ pour utiliser le flash de l'appareil.",
- ['makeitrain'] = "Presse ~y~G~w~ pour jeter de l'argent.",
- ['pee'] = "Tenir ~y~G~w~ pour faire pipi.",
- ['spraychamp'] = "Tenir ~y~G~w~ pour vaporiser du champagne.",
- ['bound'] = "Liée ",
- ['to'] = "à",
- ['currentlyboundemotes'] = " Emotes actuellement liées:",
- ['notvalidkey'] = "n'est pas une clé valide.",
- ['keybinds'] = "🔢 Raccourcis clavier",
- ['keybindsinfo'] = "Utilise"
- },
- ['de'] = { -- German 🇩🇪
- ['emotes'] = 'Emotes 🎬',
- ['danceemotes'] = "🕺 Tanz-Emotes",
- ['animalemotes'] = "🐩 Animal Emotes",
- ['propemotes'] = "📦 Prop-Emotes",
- ['favoriteemotes'] = "🌟 Favorit",
- ['favoriteinfo'] = "Wählen Sie hier ein Emote aus, um es als gebundenes Emote festzulegen.",
- ['rfavorite'] = "Keybind zurücksetzen",
- ['prop2info'] = "❓ Prop-Emotes können am Ende platziert werden",
- ['set'] = "Set (",
- ['setboundemote'] = ") soll dein gebundenes Emote sein?",
- ['newsetemote'] = "~w~ ist jetzt dein gebundenes Emote, drücke ~g~CapsLock~w~, um es zu verwenden.",
- ['cancelemote'] = "Emote abbrechen 🚷",
- ['cancelemoteinfo'] = "~r~ X ~w~ Bricht das aktuell wiedergegebene Emote ab",
- ['walkingstyles'] = "Gehstile 🚶🏻♂️",
- ['resetdef'] = "Auf Standard zurücksetzen",
- ['normalreset'] = "Normal (Zurücksetzen)",
- ['moods'] = "Stimmungen 😒",
- ['infoupdate'] = "Credits und Dank 🙏🏻",
- ['infoupdateav'] = "Information (Update verfügbar)",
- ['infoupdateavtext'] = "Eine Aktualisierung ist verfügbar ~y~https://github.com/TayMcKenzieNZ/dpemotes~w~",
- ['suggestions'] = "Vorschläge?",
- ['suggestionsinfo'] = "'TayMcKenzieNZ' in FiveM-Foren für alle Feature- / Emote-Vorschläge! ✉️",
- ['notvaliddance'] = "ist kein gültiger Tanz",
- ['notvalidemote'] = "ist kein gültiges Emote",
- ['nocancel'] = "Kein Emote zum Abbrechen",
- ['maleonly'] = "Dieses Emote ist nur männlich, sorry!",
- ['emotemenucmd'] = "Do /emotemenu für ein Menü",
- ['shareemotes'] = "👫 Geteilte Emotes",
- ['shareemotesinfo'] = "Laden Sie eine Person in Ihrer Nähe zum Emoten ein",
- ['sharedanceemotes'] = "🕺 Geteilte Tänze",
- ['notvalidsharedemote'] = "ist kein gültiges geteiltes Emote.",
- ['sentrequestto'] = "Gesendete Anfrage an ~g~",
- ['nobodyclose'] = "Niemand ist nah genug dran.",
- ['doyouwanna'] = "~y~Z~w~ zu akzeptieren, ~r~L~w~ zu verweigern (~g~",
- ['refuseemote'] = "Emote abgelehnt.",
- ['makenearby'] = "Lässt den Spieler in der Nähe spielen",
- ['camera'] = "Drücken ~y~G~w~ Kamerablitz verwenden.",
- ['makeitrain'] = "Drücken ~y~G~w~ Geld werfen.",
- ['pee'] = "Halt ~y~G~w~ urinieren.",
- ['spraychamp'] = "Halt ~y~G~w~ champagner sprühen",
- ['bound'] = "Gebunden ",
- ['to'] = "zu",
- ['currentlyboundemotes'] = " Derzeit gebundene Emotes:",
- ['notvalidkey'] = "ist kein gültiger schlüssel.",
- ['keybinds'] = "🔢 Tastenkombinationen",
- ['keybindsinfo'] = "verwenden"
- },
- ['sv'] = { -- Swedish 🇸🇪
- ['emotes'] = 'Emotes 🎬',
- ['danceemotes'] = "🕺 Dans Emotes",
- ['animalemotes'] = "🐩 Animal Emotes",
- ['propemotes'] = "📦 Objekt Emotes",
- ['favoriteemotes'] = "🌟 Favorit",
- ['favoriteinfo'] = "Välj en emote här för att ställa in den som din favorit emote.",
- ['rfavorite'] = "Återställ favorit.",
- ['prop2info'] = "❓ Objekt Emotes finns längst ner i listan.",
- ['set'] = "Sätt (",
- ['setboundemote'] = ") till din favorit emote?",
- ['newsetemote'] = "~w~ är nu din favorit emote, tryck ~g~CapsLock~w~ för att använda den.",
- ['cancelemote'] = "Avbryt Emote 🚷",
- ['cancelemoteinfo'] = "~r~X~w~ Avbryter det emote som för närvarande används.",
- ['walkingstyles'] = "Walking Stil 🚶🏻♂️",
- ['resetdef'] = "Återställ till standard",
- ['normalreset'] = "Normal (Återställ)",
- ['moods'] = "Humör 😒",
- ['infoupdate'] = "Krediter Och Förslag 🙏🏻",
- ['infoupdateav'] = "Information (Uppdatering tillgänglig)",
- ['infoupdateavtext'] = "En uppdatering är tillgänglig ~y~https://github.com/TayMcKenzieNZ/dpemotes~w~",
- ['suggestions'] = "Förslag?",
- ['suggestionsinfo'] = "'TayMcKenzieNZ' på FiveM-forum för alla funktioner/emote-förslag! ✉️",
- ['notvaliddance'] = "är inte en giltig dans",
- ['notvalidemote'] = "är inte en giltig emote",
- ['nocancel'] = "Ingen emote att avbryta",
- ['maleonly'] = "Den här emoten är endast för män, ledsen!",
- ['emotemenucmd'] = "Gör /emotemenu för en meny",
- ['shareemotes'] = "👫 Delade Emotes",
- ['shareemotesinfo'] = "Bjud in en någon nära för en emote",
- ['sharedanceemotes'] = "🕺 Delade Danser",
- ['notvalidsharedemote'] = "är inte en giltig delad emote.",
- ['sentrequestto'] = "Skickad förfrågan till ~g~",
- ['nobodyclose'] = "Ingen ~r~nära~w~ tillräckligt.",
- ['doyouwanna'] = "~y~Y~w~ för att acceptera, ~r~L~w~ för att vägra (~g~",
- ['refuseemote'] = "Emote vägrades.",
- ['makenearby'] = "andra personen spelar",
- ['camera'] = "Tryck ~y~G~w~ för att använda blixt.",
- ['makeitrain'] = "Tryck ~y~G~w~ för att kasta pengar.",
- ['pee'] = "Håll ~y~G~w~ att kissa.",
- ['spraychamp'] = "Håll ~y~G~w~ för att spraya champagne.",
- ['bound'] = "Bunde ",
- ['to'] = "till",
- ['currentlyboundemotes'] = " För närvarande bundna emotes:",
- ['notvalidkey'] = "är inte en giltig tangent.",
- ['keybinds'] = "🔢 Keybinds",
- ['keybindsinfo'] = "Använd"
- },
- ['es'] = { -- Spanish 🇪🇸
- ['emotes'] = "Animaciones 🎬",
- ['danceemotes'] = "🕺 Bailes",
- ['animalemotes'] = "🐩 Emotes de animales",
- ['propemotes'] = "📦 Objetos",
- ['favoriteemotes'] = "🌟 Favoritos",
- ['favoriteinfo'] = "Seleccione un emoticón aquí para configurarlo como su favorito.",
- ['rfavorite'] = "Restablecer favorito",
- ['prop2info'] = "❓ Prop Emotes se pueden ubicar al final",
- ['set'] = "Elegir (",
- ['setboundemote'] = ") como tu animacion favorita?",
- ['newsetemote'] = "~w~ es ahora tu animacion favorita, presiona ~g~[CapsLock]~w~ para usarla.",
- ['cancelemote'] = "Cancelar animacion 🚷",
- ['cancelemoteinfo'] = "~r~X~w~ Cancela la animacion actual.",
- ['walkingstyles'] = "Formas de caminar 🚶🏻♂️",
- ['resetdef'] = "Reiniciar a por defecto",
- ['normalreset'] = "Normal (Reiniciar)",
- ['moods'] = "Estados de animo 😒",
- ['infoupdate'] = "Créditos Y Sugerencias 🙏🏻",
- ['infoupdateav'] = "Informacion (Actualizacion disponible)",
- ['infoupdateavtext'] = "Una actualizacion esta disponible, para conseguir la ultima version ingresa a ~y~https://github.com/TayMcKenzieNZ/dpemotes~w~",
- ['suggestions'] = "Sugerencias?",
- ['suggestionsinfo'] = "TayMcKenzieNZ' en el foro de FiveM para cualquier sugerencia! ✉️",
- ['notvaliddance'] = "no es un baile valido.",
- ['notvalidemote'] = "no es una animacion valida.",
- ['nocancel'] = "No hay animacion para cancelar.",
- ['maleonly'] = "Esta animacion es solo de hombre!",
- ['emotemenucmd'] = "Escribe /emotemenu para abrir el menu.",
- ['shareemotes'] = "👫 Animaciones compartidas",
- ['shareemotesinfo'] = "Invita a una persona cercana para la animacion.",
- ['sharedanceemotes'] = "🕺 Bailes compartidos",
- ['notvalidsharedemote'] = "no es una animacion compartida valida.",
- ['sentrequestto'] = "Solicitud enviada ~y~",
- ['nobodyclose'] = "Nadie ~r~cerca~w~.",
- ['doyouwanna'] = "~y~Y~w~ para aceptar, ~r~L~w~ para rechazar (~g~",
- ['refuseemote'] = "Animacion rechazada.",
- ['makenearby'] = "hacer que el jugador cercano juegue",
- ['camera'] = "Presione ~y~G~w~ para usar el flash de la camara.",
- ['makeitrain'] = "Presiona ~y~G~w~ para hacer llover.",
- ['pee'] = "Mantiene ~y~G~w~ para mear.",
- ['spraychamp'] = "Mantiene ~y~G~w~ rociar champán.",
- ['bound'] = "Unida ",
- ['to'] = "a",
- ['currentlyboundemotes'] = " Emotes vinculados actualmente:",
- ['notvalidkey'] = "no es una clave válida.",
- ['keybinds'] = "🔢 Keybinds",
- ['keybindsinfo'] = "Utilizar"
- },
- ['nl'] = { -- Dutch 🇳🇱
- ['emotes'] = 'Animaties 🎬',
- ['danceemotes'] = "🕺 Dans Animaties",
- ['animalemotes'] = "🐩 Dier Animaties",
- ['propemotes'] = "📦 Prop Animaties",
- ['favoriteemotes'] = "🌟 Favorieten",
- ['favoriteinfo'] = "Selecteer hier een animatie om deze als favoriete in te stellen.",
- ['rfavorite'] = "Reset Favorieten",
- ['prop2info'] = "❓ Prop animaties staan aan het einde.",
- ['set'] = "Maak (",
- ['setboundemote'] = ") je toegewezen animatie?",
- ['newsetemote'] = "~w~ is nu je toegewezen animatie, druk op ~g~CapsLock~w~ om hem te gebruiken.",
- ['cancelemote'] = "Stop Animatie 🚷",
- ['cancelemoteinfo'] = "~r~X~w~ Stopt je huidige animatie",
- ['walkingstyles'] = "Loopjes 🚶🏻♂️",
- ['resetdef'] = "Reset naar standaard",
- ['normalreset'] = "Normaal (Reset)",
- ['moods'] = "Stemmingen 😒",
- ['infoupdate'] = "Credits en bedankt 🙏🏻",
- ['infoupdateav'] = "Informatie (Update beschikbaar)",
- ['infoupdateavtext'] = "Een update is beschikbaar, download de laatste versie via ~y~https://github.com/TayMcKenzieNZ/dpemotes~w~",
- ['suggestions'] = "Suggesties?",
- ['suggestionsinfo'] = "'TayMcKenzieNZ' op de FiveM forums om suggesties in te dienen! ✉️",
- ['notvaliddance'] = "Is geen geldige dans.",
- ['notvalidemote'] = "Is geen geldige animatie.",
- ['nocancel'] = "Er is geen animatie om te annuleren.",
- ['maleonly'] = "Deze animatie is alleen voor mannen, sorry!",
- ['emotemenucmd'] = "Doe /emotemenu voor het animatiemenu.",
- ['shareemotes'] = "👫 Gedeelde Animaties",
- ['shareemotesinfo'] = "Nodig een persoon in de buurt uit om een animatie te doen.",
- ['sharedanceemotes'] = "🕺 Gedeelde Dansjes",
- ['notvalidsharedemote'] = "Is geen geldige gedeelde animatie.",
- ['sentrequestto'] = "Verzoek gestuurd naar ~y~",
- ['nobodyclose'] = "Er is niemand ~r~dichtbij~w~ genoeg.",
- ['doyouwanna'] = "~y~Y~w~ om te accepteren, ~r~L~w~ om te weigeren (~g~",
- ['refuseemote'] = "Animatie geweigerd.",
- ['makenearby'] = "laat de dichtstbijzijnde persoon de animatie doen",
- ['camera'] = "Druk op ~y~G~w~ om de flitser te gebruiken..",
- ['makeitrain'] = "Druk op ~y~G~w~ om geld te gooien.",
- ['pee'] = "Druk op ~y~G~w~ om te plassen.",
- ['spraychamp'] = "Druk op ~y~G~w~ om batra's te spuiten.",
- ['stun'] = "Druk op ~y~G~w~ om de taser te 'gebruiken'.",
- ['bound'] = "Gebonden ",
- ['to'] = "aan",
- ['currentlyboundemotes'] = " Huidig gebonden animaties:",
- ['notvalidkey'] = "Is geen geldige knop.",
- ['keybinds'] = "🔢 Keybinds",
- ['keybindsinfo'] = "Gebruik"
- },
- ['pt'] = { -- Brazilian Portuguese 🇧🇷
- ['emotes'] = 'Emotes 🎬',
- ['danceemotes'] = "🕺 Emotes de Danças",
- ['animalemotes'] = "🐩 Emotes de Animais",
- ['propemotes'] = "📦 Emotes com Props",
- ['favoriteemotes'] = "🌟 Favoritos",
- ['favoriteinfo'] = "Selecione um emote para colocá-lo nos seus favoritos",
- ['rfavorite'] = "Limpar favoritos",
- ['prop2info'] = "❓ Emotes de props podem ser localizados no fim",
- ['set'] = "Set (",
- ['setboundemote'] = ") para ser seu emote vinculado?",
- ['newsetemote'] = "~w~ é o seu emote vinculado, pressione ~g~CapsLock~w~ para usá-lo",
- ['cancelemote'] = "Cancelar emote 🚷",
- ['cancelemoteinfo'] = "~r~X~w~ Cancela os emotes rodando atualmente",
- ['walkingstyles'] = "Estilos de Caminhada 🚶🏻♂️",
- ['resetdef'] = "Resetar para o padrão",
- ['normalreset'] = "Normal (Resetar)",
- ['moods'] = "Humores 😒",
- ['infoupdate'] = "Crédito e agradecimento 🙏🏻",
- ['infoupdateav'] = "Informação (Atualização disponível)",
- ['infoupdateavtext'] = "Uma atualização disponível, veja ~y~https://github.com/TayMcKenzieNZ/dpemotes~w~ para pegar",
- ['suggestions'] = "Sugestões?",
- ['suggestionsinfo'] = "'TayMcKenzieNZ' no fórum do FiveM para qualquer sugestão de recurso/emotes! ✉️",
- ['notvaliddance'] = "não é uma dança válida.",
- ['notvalidemote'] = "não é um emote válido.",
- ['nocancel'] = "Nenhum emote para cancelar",
- ['maleonly'] = "Este emote é para homens, desculpe!",
- ['emotemenucmd'] = "Faça /emotemenu para abrir o menu.",
- ['shareemotes'] = "👫 Emotes compartilhados",
- ['shareemotesinfo'] = "Convide uma pessoa próxima para para realizar a animação",
- ['sharedanceemotes'] = "🕺 Danças compartilhadas",
- ['notvalidsharedemote'] = "não é um emote compartilhado válido.",
- ['sentrequestto'] = "Enviar solicitação para ~y~",
- ['nobodyclose'] = "Ninguém próximo o ~r~rsuficiente~w~.",
- ['doyouwanna'] = "~y~Y~w~ para aceitar, ~r~L~w~ para recursar (~g~",
- ['refuseemote'] = "Emote recursado",
- ['makenearby'] = "Faz o jogador próximo participar",
- ['camera'] = "Pressione ~y~G~w~ para usar o flash da câmera",
- ['makeitrain'] = "Pressione ~y~G~w~ para fazer chover.",
- ['pee'] = "Mantenha pressionado ~y~G~w~ para fazer xixi.",
- ['spraychamp'] = "Mantenha pressionado ~y~G~w~ jogar champagne",
- ['stun'] = "Press ~y~G~w~ to 'use' stun gun.",
- ['bound'] = "Vinculado ",
- ['to'] = "para",
- ['currentlyboundemotes'] = "Emotes atualmente vinculados: ",
- ['notvalidkey'] = "isto não é uma chave válida",
- ['keybinds'] = "🔢 Keybinds",
- ['keybindsinfo'] = "Usar"
- },
- ['it'] = { -- Italian 🇮🇹
- ['emotes'] = 'Animazioni 🎬',
- ['danceemotes'] = "🕺 Animazioni Di Danza",
- ['animalemotes'] = "🐩 Animazioni Di Animali",
- ['propemotes'] = "📦 Animazioni Prop",
- ['favoriteemotes'] = "🌟 Emote preferite",
- ['favoriteinfo'] = "Seleziona un'animazione per metterla nei preferiti.",
- ['rfavorite'] = "Rimuovi preferito",
- ['prop2info'] = "❓ Le animazioni Prop possono essere trovate in fondo.",
- ['set'] = "Imposta (",
- ['setboundemote'] = ") come tua animazione corrente?",
- ['newsetemote'] = "~w~ è ora la tua animazione corrente, premi ~g~CapsLock~w~ per usarla.",
- ['cancelemote'] = "Annulla animazione 🚷",
- ['cancelemoteinfo'] = "~r~X~w~ Cancella l'animazione in corso.",
- ['walkingstyles'] = "Stili di camminata 🚶🏻♂️",
- ['resetdef'] = "Ripristina predefiniti",
- ['normalreset'] = "Normale (Reset)",
- ['moods'] = "Umori 😒",
- ['infoupdate'] = "Crediti e grazie 🙏🏻",
- ['infoupdateav'] = "Informazioni (Aggiornamento disponibile)",
- ['infoupdateavtext'] = "Un aggiornamento è disponibile, ottieni l'ulima versione qui ~y~https://github.com/TayMcKenzieNZ/dpemotes~w~",
- ['suggestions'] = "Suggerimenti?",
- ['suggestionsinfo'] = "'TayMcKenzieNZ' nei forum di FiveM per suggerimenti su funzionalitá/animazioni! ✉️",
- ['notvaliddance'] = "non è un ballo valido.",
- ['notvalidemote'] = "non è un'animazione valida.",
- ['nocancel'] = "Nessun'animazione da cancellare.",
- ['maleonly'] = "Quest'animazione è solo maschile!",
- ['emotemenucmd'] = "Esegui /emotemenu per aprire il menù.",
- ['shareemotes'] = "👫 Animazioni di coppia",
- ['shareemotesinfo'] = "Invita un giocatore vicino ad un'animazione",
- ['sharedanceemotes'] = "🕺 Balli di coppia",
- ['notvalidsharedemote'] = "non è un'animazione di coppia valida.",
- ['sentrequestto'] = "Richiesta mandata a ~y~",
- ['nobodyclose'] = "Nessun giocatore abbastanza ~r~vicino~w~.",
- ['doyouwanna'] = "~y~Y~w~ per accettare, ~r~L~w~ per rifiutare (~g~",
- ['refuseemote'] = "Animazione rifiutata.",
- ['makenearby'] = "fa eseguire l'animazione al giocatore vicino",
- ['camera'] = "Premi ~y~G~w~ per usare il flash della fotocamera.",
- ['makeitrain'] = "Premi ~y~G~w~ per far piovere.",
- ['pee'] = "Tieni premuto ~y~G~w~ per urinare.",
- ['spraychamp'] = "Tieni premuto ~y~G~w~ per spruzzare champagne",
- ['stun'] = "Premi ~y~G~w~ per 'usare' la pistola stordente.",
- ['bound'] = "É stato impostato ",
- ['to'] = "per",
- ['currentlyboundemotes'] = " Animazioni correnti:",
- ['notvalidkey'] = "non è una chiave valida.",
- ['keybinds'] = "🔢 Tasti",
- ['keybindsinfo'] = "Utilizza"
- },
- ['da'] = { -- Danish 🇩🇰
- ['emotes'] = 'Animationer',
- ['danceemotes'] = "🕺 Danse Animationer",
- ['animalemotes'] = "🐩 Dyr Animationer",
- ['propemotes'] = "📦 Rekvisit Animationer",
- ['favoriteemotes'] = "🌟 Favorit",
- ['favoriteinfo'] = "Vælge en animationer her for at sætte den som din favorit.",
- ['rfavorite'] = "Nulstil Favorit",
- ['prop2info'] = "❓ Rekvisit emotes findes i slutningen",
- ['set'] = "Sæt (",
- ['setboundemote'] = ") til din favorit animationer?",
- ['newsetemote'] = "~w~ Er nu din favorit animationer, tryk ~g~CapsLock~w~ for at anvende den.",
- ['cancelemote'] = "Afbryd animationer",
- ['cancelemoteinfo'] = "~r~X~w~ Anullere din igangværende animationer.",
- ['walkingstyles'] = "Gågange",
- ['resetdef'] = "Nulstil til standard",
- ['normalreset'] = "Normal (Nulstil)",
- ['moods'] = "Humør 😒",
- ['infoupdate'] = "Info / opdateringer",
- ['infoupdateav'] = "Information (Opdatering available)",
- ['infoupdateavtext'] = "En opdatering er tilgænglig, hent den nyeste version fra ~y~https://github.com/TayMcKenzieNZ/dpemotes~w~",
- ['suggestions'] = "Forslag?",
- ['suggestionsinfo'] = "'TayMcKenzieNZ' på FiveM-forum for alle funktioner/emote-forslag! ✉️",
- ['notvaliddance'] = "er ikke en gyldig dans",
- ['notvalidemote'] = "er ikke en gyldig emote",
- ['nocancel'] = "Ingen animationer afspilles lige nu",
- ['maleonly'] = "Denne animationer virker desværre kun til mænd!",
- ['emotemenucmd'] = "Skriv /emotemenu for animationer menuen",
- ['shareemotes'] = "👫 Delte animationer",
- ['shareemotesinfo'] = "Invitere en spillere i nærheden for afspille animationer",
- ['sharedanceemotes'] = "🕺 Delete Danse",
- ['notvalidsharedemote'] = "er ikke en gyldig delt animationer.",
- ['sentrequestto'] = "Anmodning sendt til ~y~",
- ['nobodyclose'] = "Ingen ~r~tæt~w~ nok.",
- ['doyouwanna'] = "~y~Y~w~ for at acceptere, ~r~L~w~ for at nægte (~g~",
- ['refuseemote'] = "Animationer nægtede.",
- ['makenearby'] = "får den nærliggende spiller til at spille",
- ['camera'] = "Tryk ~y~G~w~ for at bruge kamera kameraets blitz.",
- ['makeitrain'] = "Tryk ~y~G~w~ for at regne med penge.",
- ['pee'] = "Hold ~y~G~w~ for at tisse.",
- ['spraychamp'] = "Hold ~y~G~w~ for at sprøjte med champagnen",
- ['stun'] = "tryk på ~y~G~w~ for at bruge elektrisk pistol.",
- ['bound'] = "Bundet ",
- ['to'] = "til",
- ['currentlyboundemotes'] = " Keybind animationer:",
- ['notvalidkey'] = "er ikke en gyldigt nøgle.",
- ['keybinds'] = "🔢 Keybinds",
- ['keybindsinfo'] = "Brug"
- },
- ['fi'] = { -- Finnish 🇫🇮
- ['emotes'] = 'Emotet 🎬',
- ['danceemotes'] = "🕺 Tanssi Emotet",
- ['animalemotes'] = "🐩 Eläin Emotet",
- ['propemotes'] = "📦 Esine Emotet",
- ['favoriteemotes'] = "🌟 Suosikit",
- ['favoriteinfo'] = " Valitse emote täältä laittaaksesi sen suosikiksi.",
- ['rfavorite'] = "Resettaa Suosikin.",
- ['prop2info'] = "❓ Esine Emotet voivat sijaita lopussa",
- ['set'] = "Aseta (",
- ['setboundemote'] = ") on sinun bindattu emote ?",
- ['newsetemote'] = "w on nyt bindattuna emotesi, paina gCapsLockw käyttääksesi",
- ['cancelemote'] = "Peru emote 🚷",
- ['cancelemoteinfo'] = "rXw Peruu meneillään olevan emoten ",
- ['walkingstyles'] = "Kävelytyylit🚶🏻♂️",
- ['resetdef'] = "Resettaa oletuksen",
- ['normalreset'] = "Normaali (Reseettaa)",
- ['moods'] = "Mielitilat😒",
- ['infoupdate'] = "Krediitit & Ehdotukset 🙏🏻",
- ['infoupdateav'] = "Informaatio (Päivitys Saatavilla)",
- ['infoupdateavtext'] = " Uusin versio saatavilla täältä yhttps://github.com/TayMcKenzieNZ/dpemotes~w~",
- ['suggestions'] = "Ehdotukset?",
- ['suggestionsinfo'] = "'TayMcKenzieNZ' Fivem foormueilta mitä vain fiituria/emote ehdotusta! ✉️",
- ['notvaliddance'] = "Ei ole tanssi.",
- ['notvalidemote'] = "Ei ole emote.",
- ['nocancel'] = "Ei ole emotea peruutettavaksi.",
- ['maleonly'] = "Tämä emote on miehille ainostaan, anteeksi!",
- ['emotemenucmd'] = "Tee /emotemenu avataksesi emote menun",
- ['shareemotes'] = "👫 Yhteiset Emotet",
- ['shareemotesinfo'] = "Kutsu lähin hahmo emoteen ",
- ['sharedanceemotes'] = "🕺 Yhteiset Tanssit",
- ['notvalidsharedemote'] = "Ei ole yhteinen tanssi emote.",
- ['sentrequestto'] = "Lähetä kutsu y",
- ['nobodyclose'] = "Ei ketään rlähelläw sinua.",
- ['doyouwanna'] = "yYw hyväksyyksesi, rLw kieltäytyäksesi (g",
- ['refuseemote'] = "Emote peruutettu.",
- ['makenearby'] = "tekee lähimmän pelaaja osallistumaan ",
- ['camera'] = "Paina yGw käyttääksesi kameran salamaa.",
- ['makeitrain'] = "Paina yGw heittääksesi rahaa.",
- ['pee'] = "Pidä yGw pissaksesi.",
- ['spraychamp'] = "Pidä yGw suihkutaaksesi shamppaniaa",
- ['stun'] = "Paina yGw to 'käytä' etälamautinta.",
- ['bound'] = "Bindata",
- ['to'] = 'lle',
- ['currentlyboundemotes'] = " On jo bindattuna emotehin :",
- ['notvalidkey'] = "Ei ole käytettävä näppäin.",
- ['keybinds'] = "🔢 Pikanäppäimet",
- ['keybindsinfo'] = "Käytä",
-}}
diff --git a/resources/dpemotes-master/server/Server.lua b/resources/dpemotes-master/server/Server.lua
deleted file mode 100644
index 0a3472a0a..000000000
--- a/resources/dpemotes-master/server/Server.lua
+++ /dev/null
@@ -1,125 +0,0 @@
------------------------------------------------------------------------------------------------------
--- Shared Emotes Syncing ---------------------------------------------------------------------------
------------------------------------------------------------------------------------------------------
-
-RegisterServerEvent("ServerEmoteRequest")
-AddEventHandler("ServerEmoteRequest", function(target, emotename, etype)
- TriggerClientEvent("ClientEmoteRequestReceive", target, emotename, etype)
-end)
-
-RegisterServerEvent("ServerValidEmote")
-AddEventHandler("ServerValidEmote", function(target, requestedemote, otheremote)
- TriggerClientEvent("SyncPlayEmote", source, otheremote, target)
- TriggerClientEvent("SyncPlayEmoteSource", target, requestedemote, source)
-end)
-
-RegisterServerEvent("ServerEmoteCancel")
-AddEventHandler("ServerEmoteCancel", function(target)
- TriggerClientEvent("SyncCancelEmote", target, source)
-end)
-
------------------------------------------------------------------------------------------------------
--- Keybinding --------------------------------------------------------------------------------------
------------------------------------------------------------------------------------------------------
-
-local function addKeybindEventHandlers()
- RegisterServerEvent("dp:ServerKeybindExist")
- AddEventHandler('dp:ServerKeybindExist', function()
- local src = source
- local srcid = GetPlayerIdentifier(source)
- MySQL.query('SELECT * FROM dpkeybinds WHERE `id`=@id;', { id = srcid }, function(dpkeybinds)
- if dpkeybinds[1] then
- TriggerClientEvent("dp:ClientKeybindExist", src, true)
- else
- TriggerClientEvent("dp:ClientKeybindExist", src, false)
- end
- end)
- end)
-
- -- This is my first time doing SQL stuff, and after i finished everything i realized i didnt have to store the keybinds in the database at all.
- -- But remaking it now is a little pointless since it does it job just fine!
-
- RegisterServerEvent("dp:ServerKeybindCreate")
- AddEventHandler("dp:ServerKeybindCreate", function()
- local src = source
- local srcid = GetPlayerIdentifier(source)
- MySQL.insert('INSERT INTO dpkeybinds (`id`, `keybind1`, `emote1`, `keybind2`, `emote2`, `keybind3`, `emote3`, `keybind4`, `emote4`, `keybind5`, `emote5`, `keybind6`, `emote6`) VALUES (@id, @keybind1, @emote1, @keybind2, @emote2, @keybind3, @emote3, @keybind4, @emote4, @keybind5, @emote5, @keybind6, @emote6);',
- { id = srcid, keybind1 = "num4", emote1 = "", keybind2 = "num5", emote2 = "", keybind3 = "num6", emote3 = "", keybind4 = "num7", emote4 = "", keybind5 = "num8", emote5 = "", keybind6 = "num9", emote6 = "" }, function(created) print("[dp] ^2" .. GetPlayerName(src) .. "^7 got created!") TriggerClientEvent("dp:ClientKeybindGet", src, "num4", "", "num5", "", "num6", "", "num7", "", "num8", "", "num8", "") end)
- end)
-
- RegisterServerEvent("dp:ServerKeybindGrab")
- AddEventHandler("dp:ServerKeybindGrab", function()
- local src = source
- local srcid = GetPlayerIdentifier(source)
- MySQL.query('SELECT keybind1, emote1, keybind2, emote2, keybind3, emote3, keybind4, emote4, keybind5, emote5, keybind6, emote6 FROM `dpkeybinds` WHERE `id` = @id'
- ,
- { ['@id'] = srcid }, function(kb)
- if kb[1].keybind1 ~= nil then
- TriggerClientEvent("dp:ClientKeybindGet", src, kb[1].keybind1, kb[1].emote1, kb[1].keybind2, kb[1].emote2 , kb[1].keybind3, kb[1].emote3, kb[1].keybind4, kb[1].emote4, kb[1].keybind5, kb[1].emote5, kb[1].keybind6, kb[1].emote6)
- else
- TriggerClientEvent("dp:ClientKeybindGet", src, "num4", "", "num5", "", "num6", "", "num7", "", "num8", "", "num8", "")
- end
- end)
- end)
-
- RegisterServerEvent("dp:ServerKeybindUpdate")
- AddEventHandler("dp:ServerKeybindUpdate", function(key, emote)
- local src = source
- local myid = GetPlayerIdentifier(source)
- if key == "num4" then chosenk = "keybind1"
- elseif key == "num5" then chosenk = "keybind2"
- elseif key == "num6" then chosenk = "keybind3"
- elseif key == "num7" then chosenk = "keybind4"
- elseif key == "num8" then chosenk = "keybind5"
- elseif key == "num9" then chosenk = "keybind6"
- end
- if chosenk == "keybind1" then
- MySQL.update("UPDATE dpkeybinds SET emote1=@emote WHERE id=@id", { id = myid, emote = emote },
- function() TriggerClientEvent("dp:ClientKeybindGetOne", src, key, emote) end)
- elseif chosenk == "keybind2" then
- MySQL.update("UPDATE dpkeybinds SET emote2=@emote WHERE id=@id", { id = myid, emote = emote },
- function() TriggerClientEvent("dp:ClientKeybindGetOne", src, key, emote) end)
- elseif chosenk == "keybind3" then
- MySQL.update("UPDATE dpkeybinds SET emote3=@emote WHERE id=@id", { id = myid, emote = emote },
- function() TriggerClientEvent("dp:ClientKeybindGetOne", src, key, emote) end)
- elseif chosenk == "keybind4" then
- MySQL.update("UPDATE dpkeybinds SET emote4=@emote WHERE id=@id", { id = myid, emote = emote },
- function() TriggerClientEvent("dp:ClientKeybindGetOne", src, key, emote) end)
- elseif chosenk == "keybind5" then
- MySQL.update("UPDATE dpkeybinds SET emote5=@emote WHERE id=@id", { id = myid, emote = emote },
- function() TriggerClientEvent("dp:ClientKeybindGetOne", src, key, emote) end)
- elseif chosenk == "keybind6" then
- MySQL.update("UPDATE dpkeybinds SET emote6=@emote WHERE id=@id", { id = myid, emote = emote },
- function() TriggerClientEvent("dp:ClientKeybindGetOne", src, key, emote) end)
- end
- end)
-end
-
-if Config.SqlKeybinding and MySQL then
- MySQL.update(
- [[
- CREATE TABLE IF NOT EXISTS `dpkeybinds` (
- `id` varchar(50) NULL DEFAULT NULL,
- `keybind1` varchar(50) NULL DEFAULT "num4",
- `emote1` varchar(255) NULL DEFAULT "",
- `keybind2` varchar(50) NULL DEFAULT "num5",
- `emote2` varchar(255) NULL DEFAULT "",
- `keybind3` varchar(50) NULL DEFAULT "num6",
- `emote3` varchar(255) NULL DEFAULT "",
- `keybind4` varchar(50) NULL DEFAULT "num7",
- `emote4` varchar(255) NULL DEFAULT "",
- `keybind5` varchar(50) NULL DEFAULT "num8",
- `emote5` varchar(255) NULL DEFAULT "",
- `keybind6` varchar(50) NULL DEFAULT "num9",
- `emote6` varchar(255) NULL DEFAULT ""
- ) ENGINE=InnoDB COLLATE=latin1_swedish_ci;
- ]], {}, function(success)
- if success then
- addKeybindEventHandlers()
- else
- print("[dp] ^3Error connecting to DB^7")
- end
- end)
-else
- print("[dp] ^3Sql Keybinding^7 is turned ^1off^7, if you want to enable /emotebind, set ^3SqlKeybinding = ^2true^7 in config.lua and uncomment oxmysql lines in fxmanifest.lua.")
-end
diff --git a/resources/dpemotes-master/server/Updates.lua b/resources/dpemotes-master/server/Updates.lua
deleted file mode 100644
index 9ae344f1d..000000000
--- a/resources/dpemotes-master/server/Updates.lua
+++ /dev/null
@@ -1,33 +0,0 @@
-if Config.CheckForUpdates then
- Citizen.CreateThread(function()
- updatePath = "/TayMcKenzieNZ/dpemotes"
- resourceName = "dp Emotes (" .. GetCurrentResourceName() .. ")"
- PerformHttpRequest("https://raw.githubusercontent.com" .. updatePath .. "/master/version", checkVersion, "GET")
- end)
-end
-
-RegisterServerEvent("dp:CheckVersion")
-AddEventHandler("dp:CheckVersion", function()
- if updateavail then
- TriggerClientEvent("dp:Update", source, true)
- else
- TriggerClientEvent("dp:Update", source, false)
- end
-end)
-
-function checkVersion(err, responseText, headers)
- curVersion = LoadResourceFile(GetCurrentResourceName(), "version")
-
- if curVersion ~= responseText and tonumber(curVersion) < tonumber(responseText) then
- updateavail = true
- print("\n^1----------------------------------------------------------------------------------^7")
- print(resourceName .. " is outdated, latest version is: ^2" .. responseText .. "^7, installed version: ^1" .. curVersion .. "^7!\nupdate from https://github.com" .. updatePath .. "")
- print("^1----------------------------------------------------------------------------------^7")
- elseif tonumber(curVersion) > tonumber(responseText) then
- print("\n^3----------------------------------------------------------------------------------^7")
- print(resourceName .. " git version is: ^2" .. responseText .. "^7, installed version: ^1" .. curVersion .. "^7!")
- print("^3----------------------------------------------------------------------------------^7")
- else
- print("\n" .. resourceName .. " is up to date. (^2" .. curVersion .. "^7)")
- end
-end
diff --git a/resources/dpemotes-master/version b/resources/dpemotes-master/version
deleted file mode 100644
index bea0d09c4..000000000
--- a/resources/dpemotes-master/version
+++ /dev/null
@@ -1 +0,0 @@
-207
\ No newline at end of file