Andrew_Thiago Posted October 26, 2015 Share Posted October 26, 2015 (edited) Hi, i'm trying to create a simple mission in my gta 2, using scriptpad. But the point is: I just can't make the player answer a telephone properly. I'm trying to use the (WHILE_EXEC) command to answer the phone, and receive the first brief, then the game should point a truck and i would begin the mission. **When i answer the phone, he tell the initial brief and the second brief: ''drive carefully'' after sucefully answered the phone. But the commands between he aren't executing.Take a look and see if you can help me guys. That's just the first code after LEVEL START : PLAYER_PED boy = (82.10,148.3,2.0) 8 0 /////COUNTERS//// COUNTER onmission1 = 0 COUNTER inside_truck1 = 0 COUNTER mission1_completed = 0 COUNTER mission1_failed = 0 /////Vehicles/// CAR_DATA truck1 = ( 84.7,149.8,2.0 ) 23 090 TRUKCAB2 TRUKTRNS /////Phones//// OBJ_DATA phone1 = (82.7,148.255) 090 GREEN_PHONE ///Arrows// ARROW_DATA ar1 ARROW_DATA ar2 ARROW_DATA ar3 ARROW_DATA ar4 LevelStart ----------------------------------------------------------------------------------------------------------------------------------------- Phone1_mission1: ///Mission label POINT_ARROW_AT ( ar1, phone1 ) DISPLAY_BRIEF (1019) // Go and answer the phone, must be your boss! CHANGE_CAR_LOCK (truck1,LOCKED) ANSWER_PHONE ( boy , phone1 , 2000 ) WHILE_EXEC (onmission1 = 0) IF (CHECK_ANSWERED_PHONE(phone1)) SET onmission1 = 1 // Now, the counter named ''onmission1'' should have the VALUE equal to = 1 REMOVE_ARROW(ar1) STOP_PHONE ( phone1 ) DISPLAY_BRIEF (1020) //Hello my dear! Today, we have a lot of work to do, get ready! ++onmission1 //I really do not know why we have to put that (++onmission) command!! ENDIF ENDWHILE IF (onmission1 = 0) //If he did not answered the phone DISPLAY_BRIEF (1019) //You failed to answer the phone! ENDIF REMOVE_ARROW(ar1) CHANGE_CAR_LOCK (truck1,NO_LOCK) POINT_ARROW_AT ( ar1, truck1 ) DISPLAY_BRIEF (1022) //After answered the phone, he just say this brief, but doesn't unlock my truck or point him, etc... LEVELEND Edited October 26, 2015 by Andrew_Thiago Link to comment Share on other sites More sharing options...
Sektor Posted October 26, 2015 Share Posted October 26, 2015 (edited) Interesting bug with the POINT_ARROW_AT command. It doesn't work with trucks with trailers unless they are created after LEVELSTART. I also changed NO_LOCK to UNLOCKED to unlock the truck. PLAYER_PED boy = (82.10,148.3,2.0) 8 0/////COUNTERS////COUNTER onmission1 = 0COUNTER inside_truck1 = 0COUNTER mission1_completed = 0COUNTER mission1_failed = 0/////Vehicles///CAR_DATA truck1/////Phones////OBJ_DATA phone1 = (82.7,148.255) 090 GREEN_PHONE///Arrows//ARROW_DATA ar1ARROW_DATA ar2ARROW_DATA ar3ARROW_DATA ar4LEVELSTART//-----------------------------------------------------------------------------------------------------------------------------------------truck1 = CREATE_CAR ( 84.7,149.8,255.0 ) 23 90 TRUKCAB2 TRUKTRNS ENDPhone1_mission1: ///Mission labelPOINT_ARROW_AT ( ar1, phone1 )DISPLAY_BRIEF (1019) // Go and answer the phone, must be your boss!CHANGE_CAR_LOCK (truck1,LOCKED)ANSWER_PHONE ( boy , phone1 , 2000 ) WHILE_EXEC (onmission1 = 0) IF (CHECK_ANSWERED_PHONE(phone1)) SET onmission1 = 1 // Now, the counter named ''onmission1'' should have the VALUE equal to = 1 REMOVE_ARROW(ar1) STOP_PHONE ( phone1 ) DISPLAY_BRIEF (1020) //Hello my dear! Today, we have a lot of work to do, get ready! ENDIFENDWHILEIF (onmission1 = 0) //If he did not answered the phone DISPLAY_BRIEF (1019) //You failed to answer the phone!ENDIF REMOVE_ARROW(ar1) CHANGE_CAR_LOCK (truck1,UNLOCKED) POINT_ARROW_AT ( ar1, truck1 ) DISPLAY_BRIEF (1022)LEVELEND Edited October 26, 2015 by Sektor Link to comment Share on other sites More sharing options...
Andrew_Thiago Posted October 26, 2015 Author Share Posted October 26, 2015 Thank you so much! i'M seeing the cerbera tutorials and a lot of stuff at same time here,right now. I'm really understanding very well since i began to study this deep codes yesterday. I was also since yesterday trying to find out what was the problem with this code, and just like you said: i changed the truck spawn to after levelstart and it works now. Now almost everything makes sense! Thank you!!!! Link to comment Share on other sites More sharing options...
Andrew_Thiago Posted October 26, 2015 Author Share Posted October 26, 2015 SEKTOR, could you help me in another thing? what is the corret write to check a negative action? Look my script that doesn't work: WHILE_EXEC (phone01_atendido = 1) IF (IS_CHARACTER_IN_CAR ( boy , truck1 ) ) // that code is working fine! SET inside_truck1 = 1 DELAY_HERE (10) DISPLAY_BRIEF (1023) //We gonna have our vegeneance!! Let's take our car back from a customer that did not pay his bills REMOVE_ARROW (ar1) ENDIF IF ( ( NOT (IS_CHARACTER_IN_CAR ( boy , truck1 ) ) ) //Why that code not working? How i use that (not) properly? DISPLAY_BRIEF (1022) //Get in the truck! POINT_ARROW_AT ( ar1, truck1 ) ENDIF ENDWHILE Link to comment Share on other sites More sharing options...
Sektor Posted October 26, 2015 Share Posted October 26, 2015 (edited) Too many brackets. This should work: IF (NOT(IS_CHARACTER_IN_CAR ( boy , truck1 ))) DISPLAY_BRIEF (1022) //Get in the truck! POINT_ARROW_AT ( ar1, truck1 ) ENDIF Edited October 26, 2015 by Sektor Link to comment Share on other sites More sharing options...
Andrew_Thiago Posted October 26, 2015 Author Share Posted October 26, 2015 thank you man!!! 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