Kolopsel Posted August 20, 2017 Share Posted August 20, 2017 (edited) Hello, i wanted to ask if there is a good method, to wait for something until a event (Task) finishes. For example : A Ped drives somewhere but after he finished this given event, he does something else. I know, checking it periodically is capable of doing this, but i wanted to ask if there is a better method. Thank you for reading ! - Kolopsel Edited August 20, 2017 by Kolopsel Link to comment Share on other sites More sharing options...
aimless Posted August 20, 2017 Share Posted August 20, 2017 You can use task sequences. There is an example in this thread. http://gtaforums.com/topic/819828-task-sequence/?hl=sequence You can use up to 16 tasks in a task sequence. But you can run a task sequence of task sequences. If you need more. Also some tasks are task sequence themselves like guard position, and scenarios. If you use these the sequence will stop at that task and wont continue. Most will work like TASK_VEHICLE_DRIVE_TO_COORD, TASK_PLAY_ANIM, TASK_FOLLOW_NAV_MESH_TO_COORD sollaholla 1 Link to comment Share on other sites More sharing options...
NoNameSet Posted August 25, 2017 Share Posted August 25, 2017 (edited) Hello, i wanted to ask if there is a good method, to wait for something until a event (Task) finishes. For example : A Ped drives somewhere but after he finished this given event, he does something else. I know, checking it periodically is capable of doing this, but i wanted to ask if there is a better method. Thank you for reading ! - Kolopsel I use RagePluginHook as a reference but the code should be the same: if (!IsTask4Done && Game.LocalPlayer.Character.Position.DistanceTo(Pris3) <= 8) { Game.DisplayHelp("Press ~b~T~w~ to speak with ~r~Prisoner~w~", 6000); while (!Game.IsKeyDown(System.Windows.Forms.Keys.T)) GameFiber.Yield(); Game.DisplaySubtitle("~b~You~w~: HANDS UP, THIS IS THE POLICE!", 4000); GameFiber.Wait(4000); int c = new Random().Next(1, 3); if (c == 1) { Game.DisplaySubtitle("~r~Prisoner~w~: Congratulations, you just won the golden prize...a battle against the one and only " + suspect3Persona.Forename); GameFiber.Wait(6000); Pris3.Tasks.FightAgainst(Game.LocalPlayer.Character); } else { Game.DisplaySubtitle("~r~Prisoner~w~: Catch me if you can!"); GameFiber.Wait(3000); Pris3.Tasks.Flee(Game.LocalPlayer.Character, 5000, -1); } IsTask4Done = true; } if (IsTask4Done == true && Game.LocalPlayer.Character.Position.DistanceTo(Pris3)<=8){//now task him something else or you could continue in the !IsTask4Done method Pris3.Tasks.EnterVehicle(Game.LocalPlayer.CurrentVehicle, -1); Pris3.Tasks.DriveToPosition(Game.LocalPlayer.Character.CurrentVehicle, Pris2.Position, 25);} Edited August 25, 2017 by NoNameSet Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now