Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- -- JIMMY BETA FIGHTING STYLE ( SOURCE CODE )
- -- AUTHOR : ALTAMURENZA
- -- SHARED ENVIRONMENTS
- shared.JamesBETA = {
- Style = "Nemesis", Timer = GetTimer(), Combo = 1, Hold = GetTimer(), Speed = GameGetPedStat(gPlayer, 20),
- Combo = {1, GetTimer(), GetTimer()}, Movement = {false, 0, GetTimer(), GetTimer()},
- }
- -- MAIN FUNCTION
- function main()
- -- SYSTEM WAIT
- while not SystemIsReady() or AreaIsLoading() do
- Wait(0)
- end
- -- REQUIRED ANIMATION GROUP
- local REQUIRED_ANIM = {
- "Authority","Boxing","Russell","Nemesis","B_Striker","CV_Female","CV_Male","DO_Edgar","DO_Grap","DO_StrikeCombo",
- "DO_Striker","F_Adult","F_BULLY","F_Douts","F_Girls","F_Greas","F_Jocks","F_Nerds","F_OldPeds","F_Pref","F_Preps",
- "G_Grappler","G_Johnny","G_Striker","Grap","J_Damon","J_Grappler","J_Melee","J_Ranged","J_Striker","LE_Orderly","N_Ranged",
- "N_Striker","N_Striker_A","N_Striker_B","P_Grappler","P_Striker","PunchBag","Qped","Rat_Ped","Russell_Pbomb","Straf_Dout",
- "Straf_Fat","Straf_Female","Straf_Male","Straf_Nerd","Straf_Prep","Straf_Savage","Straf_Wrest","TE_Female","MINI_React",
- }
- for I, V in ipairs(REQUIRED_ANIM) do
- if HasAnimGroupLoaded(V) == false then
- LoadAnimationGroup(V)
- end
- end
- -- NEMESIS STYLE
- PedSetActionTree(gPlayer, "/Global/Nemesis", "Act/Anim/Nemesis.act")
- -- THREAD
- shared.JamesBETA_Thread = {
- [1] = CreateThread("SET_COMBO"),
- [2] = CreateThread("SET_MOVEMENT"),
- }
- -- MAIN LOOP
- while true do
- Wait(0)
- if IsButtonPressed(7, 0) and shared.JamesBETA.Combo[1] == 1 and PedHasWeapon(gPlayer, -1) and PedMePlaying(gPlayer, "DEFAULT_KEY") and GetStickValue(17, 0) < 0.08 then
- PedSetActionNode(gPlayer, "/Global/Nemesis/Offense/Short/Strikes/LightAttacks/JAB", "Act/Anim/Nemesis.act")
- while PedIsPlaying(gPlayer, "/Global/Nemesis/Offense/Short/Strikes/LightAttacks/JAB", true) do
- if PedIsPlaying(gPlayer, "/Global/Nemesis/Offense/Short/Strikes/LightAttacks/JAB/HeavyAttacks/SuperUppercut", true) then
- PlayerStopAllActionControllers()
- break
- end
- Wait(0)
- end
- shared.JamesBETA.Combo[1] = 2
- elseif IsButtonBeingPressed(6, 0) and shared.JamesBETA.Combo[1] == 2 then
- PedSetActionNode(gPlayer, "/Global/Player/Attacks/GroundAttacks/GroundAttacks/Strikes/HeavyAttacks/GroundKick", "act/anim/Player.act")
- shared.JamesBETA.Combo[1] = 1
- elseif IsButtonBeingPressed(7, 0) and shared.JamesBETA.Combo[1] == 2 then
- PedSetActionNode(gPlayer, "/Global/Nemesis/Offense/Short/Strikes/LightAttacks/LeftHook/RightCross", "Act/Anim/Nemesis.act")
- while PedIsPlaying(gPlayer, "/Global/Nemesis/Offense/Short/Strikes/LightAttacks/LeftHook/RightCross", true) do
- if PedIsPlaying(gPlayer, "/Global/Nemesis/Offense/Short/Strikes/LightAttacks/LeftHook/RightCross/HeavyAttacks", true) then
- PlayerStopAllActionControllers()
- break
- end
- Wait(0)
- end
- shared.JamesBETA.Combo[1] = 3
- elseif IsButtonPressed(6, 0) and shared.JamesBETA.Combo[1] == 3 then
- PedSetActionNode(gPlayer, "/Global/Player/Attacks/Strikes/LightAttacks/Left1/Right2/Release/Unblockable/LegKickReleaseMax", "Act/Anim/Player.act")
- shared.JamesBETA.Combo[1] = 1
- elseif IsButtonBeingPressed(7, 0) and shared.JamesBETA.Combo[1] == 3 then
- PedSetActionNode(gPlayer, "/Global/Nemesis/Offense/Short/Strikes/LightAttacks/LeftHook", "Act/Anim/Nemesis.act")
- while PedIsPlaying(gPlayer, "/Global/Nemesis/Offense/Short/Strikes/LightAttacks/LeftHook", true) do
- if PedIsPlaying(gPlayer, "/Global/Nemesis/Offense/Short/Strikes/LightAttacks/LeftHook/RightCross", true) then
- PlayerStopAllActionControllers()
- break
- end
- Wait(0)
- end
- shared.JamesBETA.Combo[1] = 4
- elseif IsButtonBeingPressed(6, 0) and shared.JamesBETA.Combo[1] == 4 then
- PedSetActionNode(gPlayer, "/Global/Actions/RisingAttacks/HeavyAttacks/RisingAttacks", "Globals/G_Striker_A.act")
- shared.JamesBETA.Combo[1] = 1
- elseif IsButtonBeingPressed(7,0) and shared.JamesBETA.Combo[1] == 4 then
- PedSetActionNode(gPlayer, "/Global/Nemesis/Offense/Short/Strikes/LightAttacks/JAB/HeavyAttacks/SuperUppercut", "Act/Anim/Nemesis.act")
- while PedIsPlaying(gPlayer, "/Global/Nemesis/Offense/Short/Strikes/LightAttacks/JAB/HeavyAttacks/SuperUppercut", true) do
- if PedIsPlaying(gPlayer, "/Global/Nemesis/Offense/Short/Strikes/LightAttacks/JAB/HeavyAttacks/SuperUppercut/Knee", true) then
- PlayerStopAllActionControllers()
- break
- end
- Wait(0)
- end
- shared.JamesBETA.Combo[1] = 5
- elseif IsButtonBeingPressed(6, 0) and shared.JamesBETA.Combo[1] == 5 then
- PedSetActionNode(gPlayer, "/Global/Nemesis/Offense/Medium/Strikes/HeavyAttacks/JackieKick", "Act/Anim/Nemesis.act")
- shared.JamesBETA.Combo[1] = 1
- elseif IsButtonBeingPressed(7, 0) and shared.JamesBETA.Combo[1] == 5 then
- PedSetActionNode(gPlayer, "/Global/Player/Attacks/Strikes/LightAttacks/Left1/Right2/Left3/Right4/Left5/Release/UpperCut", "act/anim/Player.act")
- shared.JamesBETA.Combo[1] = 1
- end
- end
- end
- -- PLAYER MOVEMENT
- SET_MOVEMENT = function()
- while true do
- Wait(0)
- local TARGET = PedGetTargetPed(gPlayer)
- if PedHasWeapon(gPlayer, -1) then
- if IsButtonBeingPressed(7, 0) then
- shared.JamesBETA.Movement[2], shared.JamesBETA.Movement[4] = shared.JamesBETA.Movement[2] + 1, GetTimer()
- elseif GetTimer() >= shared.JamesBETA.Movement[4] + 300 then
- shared.JamesBETA.Movement[2] = 0
- end
- if IsButtonBeingReleased(7, 0) then
- shared.JamesBETA.Movement[3] = GetTimer()
- end
- local IS_FREE = function(PED, STYLE)
- return PedIsPlaying(PED, "/Global/Player/Default_KEY",true) or PedIsPlaying(PED, "/Global/"..STYLE.."/Default_KEY", true) or
- PedIsPlaying(PED, "/Global/"..STYLE.."/Default_KEY/ExecuteNodes/Free/WalkBasic", true) or
- PedIsPlaying(PED, "/Global/"..STYLE.."/Default_KEY/ExecuteNodes/Free/RunBasic", true) or
- PedIsPlaying(PED, "/Global/"..STYLE.."/Default_KEY/ExecuteNodes/Free/SprintBasic", true)
- end
- if IS_FREE(gPlayer, shared.JamesBETA.Style) and not PedGetFlag(gPlayer, 2, true) and not PlayerIsInAnyVehicle() then
- local S = 0.1
- if S <= math.abs(GetStickValue(16, 0)) + math.abs(GetStickValue(17, 0)) and not IsButtonPressed(10, 0) then
- shared.JamesBETA.Movement[1] = true
- PedSetActionNode(gPlayer, "/Global/"..shared.JamesBETA.Style.."/Default_KEY/ExecuteNodes/Free/"..(shared.JamesBETA.Movement[2] > 1 and "SprintBasic" or ((IsButtonPressed(7, 0) or GetTimer() < shared.JamesBETA.Movement[3] + 200) and "RunBasic" or "WalkBasic")), "Act/Anim/"..shared.JamesBETA.Style..".act")
- if IsButtonBeingPressed(8, 0) then
- PedSetActionNode(gPlayer,"/Global/Player/JumpActions/Jump", "Act/Anim/Player.act")
- end
- if IsButtonBeingPressed(9, 0) and PedIsValid(PedGetTargetPed(gPlayer)) then
- PedSetActionNode(gPlayer, "/Global/Actions/Grapples/RunningTakedown", "Act/Globals.act")
- end
- if IsButtonBeingPressed(6, 0) and PedIsPlaying(gPlayer, "/Global/"..shared.JamesBETA.Style.."/Default_KEY/ExecuteNodes/Free/RunBasic", true) then
- PedSetActionNode(gPlayer, "/Global/Actions/Offense/RunningAttacks/RunningAttacksDirect", "Act/Globals.act")
- elseif IsButtonBeingPressed(6, 0) and PedIsPlaying(gPlayer, "/Global/"..shared.JamesBETA.Style.."/Default_KEY/ExecuteNodes/Free/SprintBasic", true) then
- PedSetActionNode(gPlayer, "/Global/Player/Attacks/Strikes/RunningAttacks/HeavyAttacks/RunShoulder", "Act/Player.act")
- end
- if PedIsValid(TARGET) and IsButtonPressed(10, 0) then
- if PedIsPlaying(gPlayer, "/Global/"..shared.JamesBETA.Style.."/Default_KEY/ExecuteNodes/Free/WalkBasic", true) then
- local TX, TY, TZ = PedGetPosXYZ(TARGET)
- PedFaceXYZ(gPlayer, TX, TY, TZ)
- end
- end
- elseif shared.JamesBETA.Movement[1] then
- shared.JamesBETA.Movement[1] = false
- PedSetActionNode(gPlayer, "/Global/Nemesis", "Act/Anim/Nemesis.act")
- end
- end
- end
- end
- end
- -- PLAYER MONITOR
- SET_COMBO = function()
- while true do
- Wait(0)
- CURRENT_COMBO, RESET = shared.JamesBETA.Combo[1], false
- repeat
- if shared.JamesBETA.Combo[2] + 350 < GetTimer() then
- RESET = true
- end
- Wait(0)
- until shared.JamesBETA.Combo[1] ~= CURRENT_COMBO or RESET
- if RESET then
- shared.JamesBETA.Combo[1] = 1
- end
- shared.JamesBETA.Combo[2] = GetTimer()
- end
- end
Add Comment
Please, Sign In to add comment