function main()
Wait(500)
LoadAnimationGroup("Authority")
LoadAnimationGroup("Bike")
LoadAnimationGroup("V_Bike")
LoadAnimationGroup("Boxing")
LoadAnimationGroup("B_Striker")
LoadAnimationGroup("CV_Female")
LoadAnimationGroup("CV_Male")
LoadAnimationGroup("DO_Edgar")
LoadAnimationGroup("DO_Grap")
LoadAnimationGroup("DO_StrikeCombo")
LoadAnimationGroup("DO_Striker")
LoadAnimationGroup("Earnest")
LoadAnimationGroup("F_Adult")
LoadAnimationGroup("F_BULLY")
LoadAnimationGroup("F_Crazy")
LoadAnimationGroup("F_Douts")
LoadAnimationGroup("F_Girls")
LoadAnimationGroup("F_Greas")
LoadAnimationGroup("F_Jocks")
LoadAnimationGroup("F_Nerds")
LoadAnimationGroup("F_OldPeds")
LoadAnimationGroup("F_Pref")
LoadAnimationGroup("F_Preps")
LoadAnimationGroup("G_Grappler")
LoadAnimationGroup("G_Johnny")
LoadAnimationGroup("G_Striker")
LoadAnimationGroup("Grap")
LoadAnimationGroup("J_Damon")
LoadAnimationGroup("J_Grappler")
LoadAnimationGroup("J_Melee")
LoadAnimationGroup("J_Ranged")
LoadAnimationGroup("J_Striker")
LoadAnimationGroup("LE_Orderly")
LoadAnimationGroup("Nemesis")
LoadAnimationGroup("NPC_AggroTaunt")
LoadAnimationGroup("NPC_Mascot")
LoadAnimationGroup("N_Ranged")
LoadAnimationGroup("N_Striker")
LoadAnimationGroup("N_Striker_A")
LoadAnimationGroup("N_Striker_B")
LoadAnimationGroup("P_Grappler")
LoadAnimationGroup("P_Striker")
LoadAnimationGroup("PunchBag")
LoadAnimationGroup("Qped")
LoadAnimationGroup("Rat_Ped")
LoadAnimationGroup("Russell")
LoadAnimationGroup("Russell_Pbomb")
LoadAnimationGroup("Straf_Dout")
LoadAnimationGroup("Straf_Fat")
LoadAnimationGroup("Straf_Female")
LoadAnimationGroup("Straf_Male")
LoadAnimationGroup("Straf_Nerd")
LoadAnimationGroup("Straf_Prep")
LoadAnimationGroup("Straf_Savage")
LoadAnimationGroup("Straf_Wrest")
LoadAnimationGroup("TE_Female")
LoadAnimationGroup("Dodgeball")
LoadAnimationGroup("Dodgeball2")
CreateThread("FPS1")
CreateThread("FPS2")
CreateThread("FPS3")
CreateThread("FPS4")
end
FPS1 = function()
CameraSetActive(2)
PlayerWeaponHudLock(true)
IsRunning = false
while true do
if IsButtonBeingPressed(2, 0) then
CameraSetActive(2)
end
if IsMoving() and not IsRunning and not (PedIsValid(PedGetGrappleTargetPed(gPlayer)) or PedIsValid(PedGetTargetPed())) then
ExecuteActionNode(gPlayer, "/Global/GS_Female_A/Default_KEY/ExecuteNodes/Free/RunBasic", "Act/Anim/GS_Female_A.act")
IsRunning = true
elseif PedIsPlaying(gPlayer, "/Global/GS_Female_A/Default_KEY/ExecuteNodes/Free/RunBasic", "Act/Anim/GS_Female_A.act") and IsRunning and not IsMoving() then
PlayerStopAllActionControllers()
IsRunning = false
elseif IsMoving() and not PedIsPlaying(gPlayer, "/Global/GS_Female_A/Default_KEY/ExecuteNodes/Free/RunBasic", "Act/Anim/GS_Female_A.act") then
IsRunning = false
end
Wait(0)
end
end
FPS2 = function()
while true do
if IsButtonBeingPressed(6, 0) or IsButtonBeingPressed(12, 0) then
PlayerStopAllActionControllers()
SoundPlay2D("GunPump")
HX, HY, HZ = PedGetHeadPos(gPlayer)
Heading = PedGetHeading(gPlayer)
DeltaX = -math.sin(Heading)
DeltaY = math.cos(Heading)
UpDown = GetStickValue(18, 0)
local Effect1 = EffectCreate("SGTargetHit", HX + DeltaX, HY + DeltaY, HZ - 0.3)
EffectSlowKill(Effect1, 0.1)
CreateProjectile(304, HX + DeltaX, HY + DeltaY, HZ - 0.3, DeltaX*4, DeltaY*4, UpDown*4, 15)
Wait(50)
SoundPlay2D("GunPump")
HX, HY, HZ = PedGetHeadPos(gPlayer)
Heading = PedGetHeading(gPlayer)
DeltaX = -math.sin(Heading)
DeltaY = math.cos(Heading)
UpDown = GetStickValue(18, 0)
local Effect1 = EffectCreate("SGTargetHit", HX + DeltaX, HY + DeltaY, HZ - 0.3)
EffectSlowKill(Effect1, 0.1)
CreateProjectile(304, HX + DeltaX, HY + DeltaY, HZ - 0.3, DeltaX*4, DeltaY*4, UpDown*4, 15)
Wait(50)
SoundPlay2D("GunPump")
HX, HY, HZ = PedGetHeadPos(gPlayer)
Heading = PedGetHeading(gPlayer)
DeltaX = -math.sin(Heading)
DeltaY = math.cos(Heading)
UpDown = GetStickValue(18, 0)
local Effect1 = EffectCreate("SGTargetHit", HX + DeltaX, HY + DeltaY, HZ - 0.3)
EffectSlowKill(Effect1, 0.1)
CreateProjectile(304, HX + DeltaX, HY + DeltaY, HZ - 0.3, DeltaX*4, DeltaY*4, UpDown*4, 15)
Wait(200)
end
Wait(0)
end
end
FPS3 = function()
while true do
if IsButtonPressed(8, 0) then
HX, HY, HZ = PedGetHeadPos(gPlayer)
Heading = PedGetHeading(gPlayer)
DeltaX = -math.sin(Heading)
DeltaY = math.cos(Heading)
UpDown = GetStickValue(18, 0)
CreateProjectile(301, HX + DeltaX, HY + DeltaY, HZ - 0.3, DeltaX/1.3, DeltaY/1.3, UpDown/1.3, 0)
Wait(800)
end
Wait(0)
end
end
FPS4 = function()
while true do
if IsButtonPressed(9, 0) then
PlayerForceActionNode("/Global/Player/Attacks/Strikes/LightAttacks/Left1/Right2/Left3/Release/Unblockable/JackieKick", "Player.act")
Wait(800)
end
Wait(0)
end
end
function IsMoving()
local s = 0.5
return GetStickValue(16, 0) > s or GetStickValue(16, 0) < -s or GetStickValue(17, 0) > s or GetStickValue(17, 0) < -s
end
PlayerForceActionNode = function(Action1, Action2)
for i = 0, 20 do
if PedIsPlaying(gPlayer, Action1, true) then
break
end
PlayerStopAllActionControllers()
PedLockTarget(gPlayer, -1)
Wait(0)
PedSetAITree(gPlayer, "/Global/DarbyAI", "Act/AI_DARBY_2_B.act")
PedSetActionNode(gPlayer, Action1, Action2)
PedSetAITree(gPlayer, "/Global/PlayerAI", "Act/PlayerAI.act")
end
end
I make a first person shooter mod, but I can't aim up and down, how can I fix it