Marioleo69 Geplaatst: 18 maart 2008 Rapport Geplaatst: 18 maart 2008 (bewerkt) Hey, Ik ben weer eens bezig met scripten. Ik wilde graag dat de vrachtwagen uit de missie Highjack hebben. Zodat als hij een auto raakt dat die auto dan weg vliegt. Het is gelukt om het stukje code te vinden. Ik heb het stukje code omgezet naar variabele onder de 33 zodat hij in een thread kan. Helaas loopt het spel vast. @Tjerk hieronder: Dat is een foutje door de codebox heb ze even verbeterd. :TANKER thread 'TANKER' Model.Load(#PETRO) Model.Load(#PETROTR) 03CF: load_wav 19400 as 3 038B: load_requested_models :TANKER_LOAD if not Model.Available(#PETRO) not Model.Available(#PETROTR) 83D0: not wav 3 loaded else_jump @TANKER_SPAWN wait 0 jump @TANKER_LOAD :TANKER_SPAWN 4@ = 0.0 5@ = 0.0 6@ = 0.0 9@ = 0.0 7@ = 0 8@ = 0.0 10@ = 0.0 11@ = 0.0 12@ = 0.0 13@ = 0.0 14@ = 0.0 15@ = 0.0 16@ = 0.0 17@ = 0.0 18@ = 0.0 19@ = 0.0 20@ = -1 1@ = Car.Create(#PETRO, -1687.8, 537.7, 36. //dit moet een 8 ) dus niet die smiley! Car.Angle(1@) = 137.0 2@ = Car.Create(#PETROTR, -1679.5, 545.9, 36.9) Car.Angle(2@) = 137.0 0893: put_trailer 2@ on_cab 1@ 053F: toggle_car 1@ tires_vulnerability 0 Car.DoorStatus(1@) = 3 0560: create_random_actor_in_car 1@ handle_as 3@ Car.ImmuneToNonPlayer(1@) = True 054A: toggle_actor 3@ immune_to_car_headshots 0 Car.SetMaxSpeed(1@, 0.0) 00AE: set_car 1@ traffic_behavior_to 2 0714: unknown_car 1@ flag 1 03C0: 21@ = actor $PLAYER_ACTOR car 0615: define_AS_pack_begin 0@ 05D1: AS_actor -1 drive_car 1@ to -1914.6 -1187.7 30.0 speed 15.0 0 model #NULL 3 0616: define_AS_pack_end 0@ 0618: assign_actor 3@ to_AS_pack 0@ 061B: remove_references_to_AS_pack 0@ jump @TORENO2_12228 :TORENO2_12228 if not Car.Wrecked(1@) else_jump @TORENO2_12931 0407: store_coords_to 4@ 5@ $TEMPVAR_FLOAT_3 from_car 1@ with_offset -3.0 2.0 0.0 0407: store_coords_to 6@ 9@ $TEMPVAR_FLOAT_3 from_car 1@ with_offset 3.0 11.0 0.0 053E: 20@ = get_random_car_with_model -1 in_rectangle_cornerA 4@ 5@ cornerB 6@ 9@ if 8039: not 20@ == -1 else_jump @TORENO2_12228 if not Car.Wrecked(20@) else_jump @TORENO2_12931 if 803B: not 20@ == 21@ // (int) else_jump @TORENO2_12931 7@ = Car.Health(20@) if 7@ > 500 else_jump @TORENO2_12931 02E3: 16@ = car 1@ speed 16@ *= 0.02 02F8: get_car 1@ Z_angle_cosine_to 4@ 02F9: get_car 1@ Z_angle_sine_to 5@ 0087: 6@ = 5@ // (float) 9@ = -1.0 006B: 9@ *= 4@ // (float) Car.StorePos(20@, 12@, 13@, 14@) Car.StorePos(1@, 8@, 10@, 11@) 0063: 12@ -= 8@ // (float) 0063: 13@ -= 10@ // (float) 0087: 17@ = 6@ // (float) 006B: 17@ *= 12@ // (float) 0087: 18@ = 9@ // (float) 006B: 18@ *= 13@ // (float) 0087: 15@ = 17@ // (float) 005B: 15@ += 18@ // (float) if 2.5 > 15@ else_jump @TORENO2_12921 if 15@ > -2.5 else_jump @TORENO2_12921 if 15@ > 0.0 else_jump @TORENO2_12615 15@ = 1.0 jump @TORENO2_12625 :TORENO2_12615 15@ = -1.0 :TORENO2_12625 0087: 17@ = 4@ // (float) 006B: 17@ *= 16@ // (float) 0087: 18@ = 15@ // (float) 006B: 18@ *= 6@ // (float) 18@ *= 0.5 0087: 19@ = 16@ // (float) 006B: 19@ *= 18@ // (float) 0087: 8@ = 17@ // (float) 005B: 8@ += 19@ // (float) 0087: 17@ = 5@ // (float) 006B: 17@ *= 16@ // (float) 0087: 18@ = 15@ // (float) 006B: 18@ *= 9@ // (float) 18@ *= 0.5 0087: 19@ = 16@ // (float) 006B: 19@ *= 18@ // (float) 0087: 10@ = 17@ // (float) 005B: 10@ += 19@ // (float) 0087: 11@ = 16@ // (float) 11@ += 0.008 11@ *= 0.5 12@ = -1.0 006B: 12@ *= 15@ // (float) 006B: 12@ *= 6@ // (float) 006B: 12@ *= 16@ // (float) 13@ = -1.0 006B: 13@ *= 15@ // (float) 006B: 13@ *= 9@ // (float) 006B: 13@ *= 16@ // (float) 14@ = 0.0 03D1: play_wav 3 03A2: set_car 20@ action 3 07D5: set_car 20@ velocity_in_direction_XYZ 8@ 10@ 11@ rotation_velocitiesXY 12@ 13@ unk 14@ Car.Health(20@) = 499:TORENO2_12921 054F: clear_car 20@ damage Car.RemoveReferences(20@) :TORENO2_12931 wait 0 ms jump @TORENO2_12228 end_thread Bewerkt: 28 maart 2008 door Marioleo69 Reageren
Tjerk Geplaatst: 18 maart 2008 Rapport Geplaatst: 18 maart 2008 Na snel kijken heb ik in ieder geval een klein foutje gezien. Je hebt bij Jump @tanker_load, er direct achter staan: :TANKER_SPAWN4@ = 0.0, ik denk dat dat niet klopt. Reageren
PatrickW Geplaatst: 28 maart 2008 Rapport Geplaatst: 28 maart 2008 Het gaat op verschillende plekken mis vrees ik. Meest in het oog springende fout is: TORENO2_12931 return 'return' gebruik je alleen in combinatie met 'gosub'. En aangezien je die niet gebruikt, zal deze return een crash veroorzaken. Waarschijnlijk zul je hem moeten vervangen door een jump naar @TORENO2_12228 Een andere fout is het gebruik van de opcode: 053E: 20@ = get_random_car_with_model -1 in_rectangle_cornerA 4@ 5@ cornerB 6@ 9@ Deze opcode zoekt in de aangegeven area naar een random car ( dus geen die je zelf gespawned hebt), en als hij die vind, geeft hij de handle ervan terug in 20@. Als hij er echter geen vindt, zal hij de waarde van 20@ niet aanpassen. En aangezien hij in het begin nog geen waarde heeft gekregen, zal er rotzooi in staan, en dus wss voor een crash zorgen. Oplossing die ik meestal gebruik, is om voor die opcode de waarde van 20@ op -1 te zetten, en erna kijken of de waarde nog steeds -1 is. In dat geval heb je geen uto gevonden , en kun je terugspringen naar @TORENO2_12228 Succes. Reageren
Marioleo69 Geplaatst: 28 maart 2008 Auteur Rapport Geplaatst: 28 maart 2008 (bewerkt) Hij loopt jammer genoeg nog steeds vast. Ik in plaats van: :TORENO2_12931 return end_thread dit gemaakt: :TORENO2_12931 wait 0 ms jump @TORENO2_12228 Heb onder dit: 19@ = 0.0 Dit gezet: 20@ = -1 En ik heb onder dit: 053E: 20@ = get_random_car_with_model -1 in_rectangle_cornerA 4@ 5@ cornerB 6@ 9@ Dit gezet: if 8039: not 20@ == -1 else_jump @TORENO2_12228 Heb ook even mijn hoofdpost thread aangepast. Bewerkt: 28 maart 2008 door Marioleo69 Reageren
Dutchy3010 Geplaatst: 28 maart 2008 Rapport Geplaatst: 28 maart 2008 :TORENO2_12228 if not Car.Wrecked(1@) else_jump @TORENO2_12931 0407: store_coords_to 4@ 5@ $TEMPVAR_FLOAT_3 from_car 1@ with_offset -3.0 2.0 0.0 0407: store_coords_to 6@ 9@ $TEMPVAR_FLOAT_3 from_car 1@ with_offset 3.0 11.0 0.0 053E: 20@ = get_random_car_with_model -1 in_rectangle_cornerA 4@ 5@ cornerB 6@ 9@ if 8039: not 20@ == -1 else_jump @TORENO2_12228 Hier ben je sowieso een wait vergeten... Reageren
Marioleo69 Geplaatst: 28 maart 2008 Auteur Rapport Geplaatst: 28 maart 2008 Waar als is vragen mag? Hij kan overal wel staan. Maar ik twijfel nog aan deze: 8044: not $2755 == $AMMU_X_SELLER // (float) 8043: not 10@ == 0.0 8042: not $3500 == 2.0 803C: not $TEMPVAR_ACTOR_CAR == 17@ // (int) 803B: not 22@ == 25@ // (int) 803A: not $1021 == $1020 // (int) 803A: not $1021 == $1020 // (int) 8038: not $ACTIVE_INTERIOR == 0 Reageren
Black Force Geplaatst: 28 maart 2008 Rapport Geplaatst: 28 maart 2008 Als je een if gebruikt in combinatie met een jf dan moet een wait gebruiken van 10 ms. Dit omdat de code anders te snel hetzelfde stukje code leest, en dat kan het script schijnbaar niet aan. Een foutcode van een if in combinatie met een jf: :check if 2@.Dead 3@.Dead jf @check een goede code van een if in combinatie met een jf, (verbeterde versie van die hierboven: :check if wait 10 2@.Dead 3@.Dead jf @check Je ziet waarschijnlijk gemakelijk het verschil, ik hoop dat je het nu snapt! Reageren
Marioleo69 Geplaatst: 28 maart 2008 Auteur Rapport Geplaatst: 28 maart 2008 Heb onder elke if wait 10 ms gedaan. Alleen hij doet het nog steeds niet. Reageren
Dutchy3010 Geplaatst: 28 maart 2008 Rapport Geplaatst: 28 maart 2008 Heb onder elke if wait 10 ms gedaan. Alleen hij doet het nog steeds niet. Hoe bedoel je; hij doet het niet? Slaat hij af? Foutmelding? Loopt PC vast? Of werkt het script gewoon niet? Reageren
PatrickW Geplaatst: 29 maart 2008 Rapport Geplaatst: 29 maart 2008 Als je een if gebruikt in combinatie met een jf dan moet een wait gebruiken van 10 ms. Dit omdat de code anders te snel hetzelfde stukje code leest, en dat kan het script schijnbaar niet aan.Een foutcode van een if in combinatie met een jf: :check if 2@.Dead 3@.Dead jf @check een goede code van een if in combinatie met een jf, (verbeterde versie van die hierboven: :check if wait 10 2@.Dead 3@.Dead jf @check Je ziet waarschijnlijk gemakelijk het verschil, ik hoop dat je het nu snapt! Sorry, maar dit is echt bull-shit. Je hoeft echt niet bij elke if een wait te zetten, je moet er alleen voor zorgen dat je in elke loop een wait hebt zitten. En je code werkt ook gewoon met een wait van 0 ms hoor, maar het is altijd verstandiger om een groter getal te nemen, omdat je de processor dat minder belast. In dit geval zou je prima voor 200 ms kunnen gaan. En die wait hoort sowieso niet tussen de if en de jf. Daartussen horen alleen condities. De wait kun je het beste ervoor zetten: :check wait 200 ms if 2@.Dead 3@.Dead jf @check Reageren
Marioleo69 Geplaatst: 29 maart 2008 Auteur Rapport Geplaatst: 29 maart 2008 (bewerkt) @Dutchy3010 Sa laat wel, maar dan zie ik voor een seconde cj, en dan word het beeld zwart en krijg ik het bekende bericht: Er is een fout opgetreden in gta.exe. @PatrickW Hij doet het nog steeds niet, maar ik zou het wel raar vinden dat het zou liggen aan die waits. Want ik heb die code letterlijk gekopieerd uit de orginele main, en daar zaten ook geen waits tussen. Of is het zo dat de code het een missie het wel doet of in een thread het niet? Mischien ligt het ook aan dat ik de code verkeerd heb omgezet naar variabelen onder de 33@. Ik probeer hem weer om te zetten, meschien dat ik deze keer een deze fout niet maak. EDIT: Ik mijn code nu helemaal gestript. Ik heb alle getalletjes in het begin twee // voorgezet dat ze niet gebruikt worden en ik heb dat vliegende auto stuk weg gehaald. Maar ik zie dat het spel vast loopt bij 03C0: 21@ = actor $PLAYER_ACTOR car Als ik daar twee // voorzet loopt het spel wel, maar dan rijd alleen de Tankwagen. Moet ik eerst nog iets doen met de opcode 03C0? :TANKER thread 'TANKER' Model.Load(#PETRO) Model.Load(#PETROTR) 03CF: load_wav 19400 as 3 038B: load_requested_models :TANKER_LOAD if not Model.Available(#PETRO) not Model.Available(#PETROTR) 83D0: not wav 3 loaded else_jump @TANKER_SPAWN wait 0 jump @TANKER_LOAD :TANKER_SPAWN //4@ = 0.0 //5@ = 0.0 //6@ = 0.0 //9@ = 0.0 //7@ = 0 //8@ = 0.0 //10@ = 0.0 //11@ = 0.0 //12@ = 0.0 //13@ = 0.0 //14@ = 0.0 //15@ = 0.0 //16@ = 0.0 //17@ = 0.0 //18@ = 0.0 //19@ = 0.0 //20@ = -1 1@ = Car.Create(#PETRO, -1687.8, 537.7, 36. Car.Angle(1@) = 137.0 2@ = Car.Create(#PETROTR, -1679.5, 545.9, 36.9) Car.Angle(2@) = 137.0 0893: put_trailer 2@ on_cab 1@ 053F: toggle_car 1@ tires_vulnerability 0 Car.DoorStatus(1@) = 3 0560: create_random_actor_in_car 1@ handle_as 3@ Car.ImmuneToNonPlayer(1@) = True 054A: toggle_actor 3@ immune_to_car_headshots 0 Car.SetMaxSpeed(1@, 0.0) 00AE: set_car 1@ traffic_behavior_to 2 0714: unknown_car 1@ flag 1 //03C0: 21@ = actor $PLAYER_ACTOR car 0615: define_AS_pack_begin 0@ 05D1: AS_actor -1 drive_car 1@ to -1914.6 -1187.7 30.0 speed 15.0 0 model #NULL 3 0616: define_AS_pack_end 0@ 0618: assign_actor 3@ to_AS_pack 0@ 061B: remove_references_to_AS_pack 0@ end_thread Bewerkt: 29 maart 2008 door Marioleo69 Reageren
Dutchy3010 Geplaatst: 29 maart 2008 Rapport Geplaatst: 29 maart 2008 Ik heb het gister nog even getest, en bij mij werkte het gewoon hoor... Althans, hij crashte niet, want ik kon vrij rondrijden. Heb een marker boven de auto die jij spawnde gezet, omdat ik wou kijken hoe ver het was. Iets te ver om verder te testen, aangezien ik weg moest... Mijn tip is: spawn die auto gewoon in grove street en laat hem weg rijden, want dan kan je makkelijker testen (en sneller!). Gewoon aanpassen van de coordinaten, dus. Dit is de versie die ik gebruikt heb: { use macro (Ctrl+J) "headsa" to insert a file header } {$VERSION 3.0.0000} var $PLAYER_CHAR: Player end // var 03A4: name_thread 'MAIN' 01F0: set_max_wanted_level_to 6 0111: toggle_wasted_busted_check 0 00C0: set_current_time_hours_to 8 minutes_to 0 04E4: unknown_refresh_game_renderer_at 2488.56 -1666.84 03CB: set_rendering_origin_at 2488.56 -1666.84 13.38 0053: $PLAYER_CHAR = create_player #NULL at 2488.56 -1666.84 13.38 01F5: $PLAYER_ACTOR = create_player_actor $PLAYER_CHAR 07AF: $PLAYER_GROUP = player $PLAYER_CHAR group 0373: set_camera_directly_behind_player 01B6: set_weather 0 0001: wait 0 ms 087B: set_player $PLAYER_CHAR clothes_texture "PLAYER_FACE" model "HEAD" body_part 1 087B: set_player $PLAYER_CHAR clothes_texture "JEANSDENIM" model "JEANS" body_part 2 087B: set_player $PLAYER_CHAR clothes_texture "SNEAKERBINCBLK" model "SNEAKER" body_part 3 087B: set_player $PLAYER_CHAR clothes_texture "VEST" model "VEST" body_part 0 070D: rebuild_player $PLAYER_CHAR 01B4: toggle_player $PLAYER_CHAR can_move 1 016A: fade 1 time 0 04BB: select_interior 0 0629: change_integer_stat 181 to 4 016C: restart_if_wasted_at 2027.77 -1420.52 15.99 angle 137.0 town_number 0 016D: restart_if_busted_at 1550.68 -1675.49 14.51 angle 90.0 town_number 0 0180: set_on_mission_flag_to $ONMISSION // Note: your missions have to use the variable defined here 0004: $DEFAULT_WAIT_TIME = 250 03E6: remove_text_box create_thread @TANKER :MAIN_LOOP 0001: wait $DEFAULT_WAIT_TIME ms 00BF: $TIME_HOURS = current_time_hours, $TIME_MINS = current_time_minutes 0002: jump @MAIN_LOOP :TANKER thread 'TANKER' Model.Load(#PETRO) Model.Load(#PETROTR) 03CF: load_wav 19400 as 3 038B: load_requested_models :TANKER_LOAD if not Model.Available(#PETRO) not Model.Available(#PETROTR) 83D0: not wav 3 loaded else_jump @TANKER_SPAWN wait 0 jump @TANKER_LOAD :TANKER_SPAWN 4@ = 0.0 5@ = 0.0 6@ = 0.0 9@ = 0.0 7@ = 0 8@ = 0.0 10@ = 0.0 11@ = 0.0 12@ = 0.0 13@ = 0.0 14@ = 0.0 15@ = 0.0 16@ = 0.0 17@ = 0.0 18@ = 0.0 19@ = 0.0 20@ = -1 1@ = Car.Create(#PETRO, -1687.8, 537.7, 36. Car.Angle(1@) = 137.0 0186: $m1 = create_marker_above_car 1@ 2@ = Car.Create(#PETROTR, -1679.5, 545.9, 36.9) Car.Angle(2@) = 137.0 0893: put_trailer 2@ on_cab 1@ 053F: toggle_car 1@ tires_vulnerability 0 Car.DoorStatus(1@) = 3 0560: create_random_actor_in_car 1@ handle_as 3@ Car.ImmuneToNonPlayer(1@) = True 054A: toggle_actor 3@ immune_to_car_headshots 0 Car.SetMaxSpeed(1@, 0.0) 00AE: set_car 1@ traffic_behavior_to 2 0714: unknown_car 1@ flag 1 03C0: 21@ = actor $PLAYER_ACTOR car 0615: define_AS_pack_begin 0@ 05D1: AS_actor -1 drive_car 1@ to -1914.6 -1187.7 30.0 speed 15.0 0 model #NULL 3 0616: define_AS_pack_end 0@ 0618: assign_actor 3@ to_AS_pack 0@ 061B: remove_references_to_AS_pack 0@ jump @TORENO2_12228 :TORENO2_12228 wait 0 ms if not Car.Wrecked(1@) else_jump @TORENO2_12931 0407: store_coords_to 4@ 5@ $TEMPVAR_FLOAT_3 from_car 1@ with_offset -3.0 2.0 0.0 0407: store_coords_to 6@ 9@ $TEMPVAR_FLOAT_3 from_car 1@ with_offset 3.0 11.0 0.0 053E: 20@ = get_random_car_with_model -1 in_rectangle_cornerA 4@ 5@ cornerB 6@ 9@ if 8039: not 20@ == -1 else_jump @TORENO2_12228 if not Car.Wrecked(20@) else_jump @TORENO2_12931 if 803B: not 20@ == 21@ // (int) else_jump @TORENO2_12931 7@ = Car.Health(20@) if 7@ > 500 else_jump @TORENO2_12931 02E3: 16@ = car 1@ speed 16@ *= 0.02 02F8: get_car 1@ Z_angle_cosine_to 4@ 02F9: get_car 1@ Z_angle_sine_to 5@ 0087: 6@ = 5@ // (float) 9@ = -1.0 006B: 9@ *= 4@ // (float) Car.StorePos(20@, 12@, 13@, 14@) Car.StorePos(1@, 8@, 10@, 11@) 0063: 12@ -= 8@ // (float) 0063: 13@ -= 10@ // (float) 0087: 17@ = 6@ // (float) 006B: 17@ *= 12@ // (float) 0087: 18@ = 9@ // (float) 006B: 18@ *= 13@ // (float) 0087: 15@ = 17@ // (float) 005B: 15@ += 18@ // (float) if 2.5 > 15@ else_jump @TORENO2_12921 if 15@ > -2.5 else_jump @TORENO2_12921 if 15@ > 0.0 else_jump @TORENO2_12615 15@ = 1.0 jump @TORENO2_12625 :TORENO2_12615 15@ = -1.0 :TORENO2_12625 0087: 17@ = 4@ // (float) 006B: 17@ *= 16@ // (float) 0087: 18@ = 15@ // (float) 006B: 18@ *= 6@ // (float) 18@ *= 0.5 0087: 19@ = 16@ // (float) 006B: 19@ *= 18@ // (float) 0087: 8@ = 17@ // (float) 005B: 8@ += 19@ // (float) 0087: 17@ = 5@ // (float) 006B: 17@ *= 16@ // (float) 0087: 18@ = 15@ // (float) 006B: 18@ *= 9@ // (float) 18@ *= 0.5 0087: 19@ = 16@ // (float) 006B: 19@ *= 18@ // (float) 0087: 10@ = 17@ // (float) 005B: 10@ += 19@ // (float) 0087: 11@ = 16@ // (float) 11@ += 0.008 11@ *= 0.5 12@ = -1.0 006B: 12@ *= 15@ // (float) 006B: 12@ *= 6@ // (float) 006B: 12@ *= 16@ // (float) 13@ = -1.0 006B: 13@ *= 15@ // (float) 006B: 13@ *= 9@ // (float) 006B: 13@ *= 16@ // (float) 14@ = 0.0 03D1: play_wav 3 03A2: set_car 20@ action 3 07D5: set_car 20@ velocity_in_direction_XYZ 8@ 10@ 11@ rotation_velocitiesXY 12@ 13@ unk 14@ Car.Health(20@) = 499 :TORENO2_12921 054F: clear_car 20@ damage Car.RemoveReferences(20@) :TORENO2_12931 wait 0 ms jump @TORENO2_12228 end_thread Reageren
Marioleo69 Geplaatst: 29 maart 2008 Auteur Rapport Geplaatst: 29 maart 2008 Ik heb het gister nog even getest, en bij mij werkte het gewoon hoor... Althans, hij crashte niet, want ik kon vrij rondrijden. Heb een marker boven de auto die jij spawnde gezet, omdat ik wou kijken hoe ver het was. Iets te ver om verder te testen, aangezien ik weg moest... Mijn tip is: spawn die auto gewoon in grove street en laat hem weg rijden, want dan kan je makkelijker testen (en sneller!). Gewoon aanpassen van de coordinaten, dus. Ik denk dat hij bij jouw wel werkt omdat je niet dichtgenoeg bent. Want de auto word pas gespwant en gaat rijden als je dichter bij komt. (Ik verplaats CJ altijd in plaats van mijn auto ) Maar dan is die thread van mij nog steeds fout. Ik heb mijn code drastisch veranderd. NU heb ik het zo gemaakt dat de auto waar je in rijd die mogelijkheden krijgt. Maar helaas loopt deze ook vast als ik in een auto stap. :TANKER thread 'TANKER' 03CF: load_wav 19400 as 3 038B: load_requested_models :TANKER_LOAD if 83D0: not wav 3 loaded else_jump @TANKER_SPAWN wait 0 jump @TANKER_LOAD :TANKER_SPAWN wait 250 if 0256: player $PLAYER_CHAR defined 004D: jump_if_false @TANKER_SPAWN 00D6: if and 00DF: actor $PLAYER_ACTOR driving 847A: not actor $PLAYER_ACTOR driving_bike 84A7: not actor $PLAYER_ACTOR driving_boat 84C8: not actor $PLAYER_ACTOR driving_flying_vehicle 004D: jump_if_false @TANKER_SPAWN 03C0: 0@ = actor $PLAYER_ACTOR car 00D6: if 82BF: not car 0@ sunk 004D: jump_if_false @TANKER_SPAWN wait 0 jump @TANKER_NUM :TANKER_NUM 1@ = 0.0 //120 2@ = 0.0 //121 3@ = 0.0 //122 4@ = 0.0 //123 5@ = 0 //57 6@ = 0.0 //62 7@ = 0.0 //63 8@ = 0.0 //64 9@ = 0.0 //65 10@ = 0.0 //66 11@ = 0.0 //67 12@ = 0.0 //68 13@ = 0.0 //69 14@ = 0.0 //70 15@ = 0.0 //71 16@ = 0.0 //72 17@ = -1 wait 250 jump @TORENO2_12228 :TORENO2_12228 if not Car.Wrecked(0@) else_jump @TORENO2_12931 0407: store_coords_to 1@ 2@ $TEMPVAR_FLOAT_3 from_car 0@ with_offset -3.0 2.0 0.0 0407: store_coords_to 3@ 4@ $TEMPVAR_FLOAT_3 from_car 0@ with_offset 3.0 11.0 0.0 053E: 17@ = get_random_car_with_model -1 in_rectangle_cornerA 1@ 2@ cornerB 3@ 4@ if not Car.Wrecked(17@) else_jump @TORENO2_12931 if 84A4: not 17@ == -1 // @ == any //803B: not 17@ == 36@ // (int) else_jump @TORENO2_12931 5@ = Car.Health(17@) if 5@ > 500 else_jump @TORENO2_12931 02E3: 13@ = car 0@ speed 13@ *= 0.02 02F8: get_car 0@ Z_angle_cosine_to 1@ 02F9: get_car 0@ Z_angle_sine_to 2@ 0087: 3@ = 2@ // (float) 4@ = -1.0 006B: 4@ *= 1@ // (float) Car.StorePos(17@, 9@, 10@, 11@) Car.StorePos(0@, 6@, 7@, 8@) 0063: 9@ -= 6@ // (float) 0063: 10@ -= 7@ // (float) 0087: 14@ = 3@ // (float) 006B: 14@ *= 9@ // (float) 0087: 15@ = 4@ // (float) 006B: 15@ *= 10@ // (float) 0087: 12@ = 14@ // (float) 005B: 12@ += 15@ // (float) if 2.5 > 12@ else_jump @TORENO2_12921 if 12@ > -2.5 else_jump @TORENO2_12921 if 12@ > 0.0 else_jump @TORENO2_12615 12@ = 1.0 jump @TORENO2_12625 :TORENO2_12615 12@ = -1.0 :TORENO2_12625 0087: 14@ = 1@ // (float) 006B: 14@ *= 13@ // (float) 0087: 15@ = 12@ // (float) 006B: 15@ *= 3@ // (float) 15@ *= 0.5 0087: 16@ = 13@ // (float) 006B: 16@ *= 15@ // (float) 0087: 6@ = 14@ // (float) 005B: 6@ += 16@ // (float) 0087: 14@ = 2@ // (float) 006B: 14@ *= 13@ // (float) 0087: 15@ = 12@ // (float) 006B: 15@ *= 4@ // (float) 15@ *= 0.5 0087: 16@ = 13@ // (float) 006B: 16@ *= 15@ // (float) 0087: 7@ = 14@ // (float) 005B: 7@ += 16@ // (float) 0087: 8@ = 13@ // (float) 8@ += 0.008 8@ *= 0.5 9@ = -1.0 006B: 9@ *= 12@ // (float) 006B: 9@ *= 3@ // (float) 006B: 9@ *= 13@ // (float) 10@ = -1.0 006B: 10@ *= 12@ // (float) 006B: 10@ *= 4@ // (float) 006B: 10@ *= 13@ // (float) 11@ = 0.0 03D1: play_wav 3 03A2: set_car 17@ action 3 07D5: set_car 17@ velocity_in_direction_XYZ 6@ 7@ 8@ rotation_velocitiesXY 9@ 10@ unk 11@ Car.Health(17@) = 499 :TORENO2_12921 054F: clear_car 17@ damage Car.RemoveReferences(17@) :TORENO2_12931 wait 250 jump @TANKER_NUM end_thread Reageren
PatrickW Geplaatst: 30 maart 2008 Rapport Geplaatst: 30 maart 2008 Ik heb mijn code drastisch veranderd.NU heb ik het zo gemaakt dat de auto waar je in rijd die mogelijkheden krijgt. Maar helaas loopt deze ook vast als ik in een auto stap. Ik denk niet dat het verstandig is, om code die nog niet werkt, drastisch te gaan uitbreiden met allerlei nieuwe functies. Dan kun je niet echt verbaast zijn dat het weer niet werkt. En je zit nu met een stuk code die groter en complexer is dan de voorgaande waar je de fout in op moet sporen. Mijn advies: Begin opnieuw, begin simpel. En als het werkt, voeg je iets nieuws toe. En dan ga je ermee aan het testen tot ook dat werkt, en dan voeg je weer iets nieuws toe. En zo bouw je langzaam je mod op. SCM modden is 10% inspiratie en idee, 20% coderen en 70% testen en debuggen. Jij laat in dit geval de moeilijkste 70% dus over aan de anderen op het forum, en maakt hun taak steeds moeilijker door de niet werkende code ook nog steeds uit te breiden met nieuwe dingen. IK hoop dat er mensen zijn die hun tijd erin willen steken, maar ik pas. Reageren
Recommended Posts
Een reactie plaatsen
Je kan nu een reactie plaatsen en pas achteraf registreren. Als je al lid bent, log eerst in om met je eigen account een reactie te plaatsen.