Jump to content
  • Sign Up
GTAGames.nl
Sign in to follow this  
JGuntherS

[SA|SCM] Een missie "Shooting the Balla"

Recommended Posts

JGuntherS

In deze tutorial ga ik een je leren een missie te maken, aan de hand van een voorbeeld dat ik zelf geschreven heb, de missie "Shooting the Balla". Het plot van de missie is als volgt: Je krijgt een auto, daarmee moet je naar het station in LS rijden. Vlakbij het station krijg je een filmpje, waarin je ziet hoe je naar het station rijd. Eenmaal daar aangekomen, moet je een Balla neerschieten. Ik heb het geschreven in Sanny Builder. Een downloadlink vind je op die site. Je moet al een beetje overweg kunnen met Sanny Builder en het script, volg anders mijn andere 2 tutorials. Ook moet je om kunnen gaan met de GXT-editor, en als je dat niet kunt, dan kun je mijn voorgebakken GXT gebruiken (check de bijlage van deze post).

In deze tutorial zal ik gebruik maken van een licht gemodificeerde gestripte main.scm. Ik zal de code hier neerzetten:

 DEFINE OBJECTS 0
DEFINE MISSIONS 0
DEFINE EXTERNAL_SCRIPTS -1 // Use -1 to not write AAA script
DEFINE UNKNOWN_EMPTY_SEGMENT 0
DEFINE UNKNOWN_THREADS_MEMORY 0

// --------------------
// THE STRIPPED MAIN THREAD
// contains initial info
// --------------------
thread 'MAIN'
var
 $PLAYER_CHAR: Player
 $PLAYER_ACTOR: Actor 
 $ON_MISSION: Integer
end // var
01F0: set_max_wanted_level_to 6
042C: set_total_missions_to 1 
030D: set_total_mission_points_to 1 
set_wb_check_to 0 
00C0: set_current_time 8 0 
04E4: unknown_refresh_game_renderer_at 2488.5601 -1666.84 
Camera.SetAtPos(2488.5601, -1666.84, 13.38)
$PLAYER_CHAR = Player.Create(#NULL, 2488.5601, -1666.84, 13.38)
$PLAYER_ACTOR = Actor.EmulateFromPlayer($PLAYER_CHAR)
Camera.SetBehindPlayer
set_weather 0          
wait 0 
0180: set_on_mission_flag_to $ON_MISSION
$PLAYER_CHAR.SetClothes("PLAYER_FACE", "HEAD", Head)
$PLAYER_CHAR.SetClothes("JEANSDENIM", "JEANS", Legs)
$PLAYER_CHAR.SetClothes("SNEAKERBINCBLK", "SNEAKER", Shoes)
$PLAYER_CHAR.SetClothes("VEST", "VEST", Torso)
$PLAYER_CHAR.Build
$PLAYER_CHAR.CanMove = True
fade 1 (out) 0                    
select_interior 0
0629: change_stat 181 (islands unlocked) to  4
016C: restart_if_wasted at 2027.77 -1420.52 15.99 angle 137.0 unknown 0
016D: restart_if_busted at 1550.68 -1675.49 14.51 angle 90.0 unknown 0

end_thread

Kopieer deze code in Sanny. We beginnen met de startthread van de missie, deze thread zal ik niet verder uitleggen, dat laat ik aan jezelf over. Het eerste wat we moeten doen is aangeven waar de missie staat, bij het DEFINE MISSION-blok. Maak van

// --------------------------
// Tutorialmissie startthread
// Shooting the Balla 
// Gemaakt door JGuntherS 
// ---------------------------

:StrtTh1
var
   $MarkerX: Float
   $MarkerY: Float
   $MarkerZ: Float
   $MarkerH: Marker
   $MarkerOn: Float
   $MissionRunning: Integer
   $MTried: Integer
   $MPassed: Integer
end    
thread 'StrtTh'
$MarkerX = 2492.378
$MarkerY = -1667.843
$MarkerZ = 13.34375

:StrtTh1_0
$MarkerH.CreateIconAndSphere(34, $MarkerX, $MarkerY, $MarkerZ)
$MarkerOn = 1

:StrtTh1_2
wait 100
if
  $ON_MISSION == 0
jf @StrtTh1_5
if and
  $ON_MISSION == 0
  $MarkerOn == 0
jf @StrtTh1_3
$MarkerH.CreateIconAndSphere(34, $MarkerX, $MarkerY, $MarkerZ)
$MarkerOn = 1

:StrtTh1_3
wait 0
if
  $PLAYER_CHAR.Defined
jf @StrtTh1_3
if
  00FF: actor $PLAYER_ACTOR 0 ()near_point_on_foot $MarkerX $MarkerY $MarkerZ radius 3.0 3.0 2.0
jf @StrtTh1_2
if
  $PLAYER_CHAR.Controllable
jf @StrtTh1_2
$MarkerH.Disable
$MarkerOn = 0
$PLAYER_CHAR.CanMove = false
00BA: text_styled 'MsName' 1500 ms 2 // Dit is een GXT-entry, die "Shooting the Balla" bevat. Deze GXT-entry moet in de table MAIN
fade 0 1500
wait 1500
start_mission 0

:StrtTh1_4
wait 10
if
  $MTried == 1
jf @StrtTh1_4
$MTried = 0
if
  $MPassed == 1
jf @StrtTh1_2
00BE: text_clear_all
03E6: remove_text_box
01E3: text_1number_styled 'M_PASS' 1000 5000 ms 1
0318: set_latest_mission_passed 'MsName' // Dit is een GXT-entry, die "Shooting the Balla" bevat. Deze GXT-entry moet in de table MAIN
030C: set_mission_points += 1
0394: play_music 1
$PLAYER_CHAR.Money += 1000
$PLAYER_CHAR.ClearWantedLevel
end_thread

:StrtTh1_5
if
  $MarkerOn == 1
jf @StrtTh1_2
$MarkerH.Disable
$MarkerOn = 0
jump @StrtTh1_2

Zet de startthread gewoon onderaan de main.scm. Nu komt de missie zelf, ik zal eerst het frame geven.

Ik adviseer je om een paar dingen over te typen, zodat je vertrouwd raakt met de code-helpers van Sanny. Later kun je gaan knippen en plakken wat je wilt

DEFINE OBJECTS 0
DEFINE MISSIONS 1
DEFINE MISSION 0 AT @ShTBal
DEFINE EXTERNAL_SCRIPTS -1 // Use -1 to not write AAA script
DEFINE UNKNOWN_EMPTY_SEGMENT 0
DEFINE UNKNOWN_THREADS_MEMORY 0

// --------------------
// THE STRIPPED MAIN THREAD
// contains initial info
// --------------------
thread 'MAIN'
var
 $PLAYER_CHAR: Player
 $PLAYER_ACTOR: Actor 
 $ON_MISSION: Integer
end // var
01F0: set_max_wanted_level_to 6
042C: set_total_missions_to 1 
030D: set_total_mission_points_to 1 
set_wb_check_to 0 
00C0: set_current_time 8 0 
04E4: unknown_refresh_game_renderer_at 2488.5601 -1666.84 
Camera.SetAtPos(2488.5601, -1666.84, 13.38)
$PLAYER_CHAR = Player.Create(#NULL, 2488.5601, -1666.84, 13.38)
$PLAYER_ACTOR = Actor.EmulateFromPlayer($PLAYER_CHAR)
Camera.SetBehindPlayer
set_weather 0          
wait 0 
0180: set_on_mission_flag_to $ON_MISSION
$PLAYER_CHAR.SetClothes("PLAYER_FACE", "HEAD", Head)
$PLAYER_CHAR.SetClothes("JEANSDENIM", "JEANS", Legs)
$PLAYER_CHAR.SetClothes("SNEAKERBINCBLK", "SNEAKER", Shoes)
$PLAYER_CHAR.SetClothes("VEST", "VEST", Torso)
$PLAYER_CHAR.Build
$PLAYER_CHAR.CanMove = True
fade 1 (out) 0                    
select_interior 0
0629: change_stat 181 (islands unlocked) to  4
016C: restart_if_wasted at 2027.77 -1420.52 15.99 angle 137.0 unknown 0
016D: restart_if_busted at 1550.68 -1675.49 14.51 angle 90.0 unknown 0
create_thread @StrtTh1

end_thread

// --------------------------
// Tutorialmissie startthread
// Shooting the Balla 
// Gemaakt door JGuntherS 
// ---------------------------

:StrtTh1
var
   $MarkerX: Float
   $MarkerY: Float
   $MarkerZ: Float
   $MarkerH: Marker
   $MarkerOn: Float
   $MissionRunning: Integer
   $MTried: Integer
   $MPassed: Integer
end    
thread 'StrtTh'
$MarkerX = 2492.378
$MarkerY = -1667.843
$MarkerZ = 13.34375

:StrtTh1_0
$MarkerH.CreateIconAndSphere(34, $MarkerX, $MarkerY, $MarkerZ)
$MarkerOn = 1

:StrtTh1_2
wait 100
if
  $ON_MISSION == 0
jf @StrtTh1_5
if and
  $ON_MISSION == 0
  $MarkerOn == 0
jf @StrtTh1_3
$MarkerH.CreateIconAndSphere(34, $MarkerX, $MarkerY, $MarkerZ)
$MarkerOn = 1

:StrtTh1_3
wait 0
if
  $PLAYER_CHAR.Defined
jf @StrtTh1_3
if
  00FF: actor $PLAYER_ACTOR 0 ()near_point_on_foot $MarkerX $MarkerY $MarkerZ radius 3.0 3.0 2.0
jf @StrtTh1_2
if
  $PLAYER_CHAR.Controllable
jf @StrtTh1_2
$MarkerH.Disable
$MarkerOn = 0
$PLAYER_CHAR.CanMove = false
00BA: text_styled 'MsName' 1500 ms 2
fade 0 1500
wait 1500
start_mission 0

:StrtTh1_4
wait 10
if
  $MTried == 1
jf @StrtTh1_4
$MTried = 0
if
  $MPassed == 1
jf @StrtTh1_2
00BE: text_clear_all
03E6: remove_text_box
01E3: text_1number_styled 'M_PASS' 1000 5000 ms 1
0318: set_latest_mission_passed 'MsName'
030C: set_mission_points += 1
0394: play_music 1
$PLAYER_CHAR.Money += 1000
$PLAYER_CHAR.ClearWantedLevel
end_thread

:StrtTh1_5
if
  $MarkerOn == 1
jf @StrtTh1_2
$MarkerH.Disable
$MarkerOn = 0
jump @StrtTh1_2 

// --------------------------
// Tutorialmissie
// Shooting the Balla
// Gemaakt door JGuntherS
// ---------------------------

:ShTBal
var
   1@: Car // Greenwood
   2@: Marker // Marker
   3@: Actor // De Balla
   4@: Marker // Marker
   5@: Car // Cameradummy
   6@: Float // X-positie van de speler
   7@: Float // Y-positie van de speler
   8@: Float // Z-positie van de speler
end
gosub @ShTBalC
if 0
  wasted_or_busted
jf @ShTBalD
gosub @ShTBalF

:ShTBalD
gosub @ShTBalCleanup
end_thread

:ShTBalC
thread 'ShTBal'
$ON_MISSION = 1
increment_mission_attempts
054C: use_GXT_table 'TutMiss'
#GREENWOO.Load
#BALLAS1.Load
#TEC9.Load
#COLT45.Load

:ShTBalC_1
if or
  not #GREENWOO.Available
  not #BALLAS1.Available
  not #TEC9.Available
  not #COLT45.Available
jf @ShTBalC_2
wait  0 
jump @ShTBalC_1

:ShTBalC_2
0395: clear_area 1 at  2432.172 -1673.413  13.63506 range 2.0 
1@.Create(#GREENWOO, 2432.172, -1673.413, 13.63506)
1@.Angle = 0.0
2@.CreateAboveCar(1@)
07E0: set_marker 2@ type_to 1   
wait 3000
03E6: remove_text_box
fade 1 1500
wait 1500
$PLAYER_CHAR.CanMove = true

:ShTBalC_3
00BC: text_highpriority 'INCAR' 1000 ms 1
wait 10
if
 $PLAYER_CHAR.Defined
jf @ShTBalC_3
if
 not 1@.Wrecked
jf @ShTBalCarW
if
 $PLAYER_ACTOR.InCar(1@)
jf @ShTBalC_3
2@.Disable
0395: clear_area 1 at  1791.6609 -1914.6604 13.3952 range 2.0
3@.Create(Mission1, #BALLAS1, 1791.6609, -1914.6604, 13.3952)
0350: unknown_actor 3@ not_scared_flag 1
01B2: give_actor 3@ weapon 32 ammo 99999
01B9: set_actor 3@ armed_weapon_to  32
3@.WeaponAccuracy = 50
3@.SetImmunities(1, 1, 1, 1, 1)
3@.LockInCurrentPosition = true
0638: AS_actor 3@ stay_put 1

:ShTBalC_3a
4@.CreateAboveActor(3@)
2@.Disable

:ShTBalC_4
00BE: text_clear_all
03E6: remove_text_box
wait 10
if
 $PLAYER_CHAR.Defined
jf @ShTBalC_4
if
 not 1@.Wrecked
jf @ShTBalCarW
if
 $PLAYER_ACTOR.InCar(1@)
jf @ShTBalC_4_Car
if
 00EE: actor $PLAYER_ACTOR 0 near_point 1791.6609 -1914.6604 radius 150.0 150.0
jf @ShTBalC_4
jump @ShTBalC_5

:ShTBalC_4_Car
4@.Disable
2@.CreateAboveCar(1@)
07E0: set_marker 2@ type_to 1 

:ShTBalC_4_CarA
wait 10
00BC: text_highpriority 'INCAR' 1000 ms 1 
if
 not 1@.Wrecked
jf @ShTBalCarW   
if
 not $PLAYER_ACTOR.InCar(1@)
jf @ShTBalC_3a
jump @ShTBalC_4_CarA

:ShTBalC_5
$PLAYER_CHAR.CanMove = false
fade 0 1000
wait 1000
01B2: give_actor $PLAYER_ACTOR weapon 22 ammo 100
01B9: set_actor $PLAYER_ACTOR armed_weapon_to  22
02A3: toggle_widescreen 1
5@.Create(#GREENWOO, 1819.8458, -1900.9407, 54.4286)
5@.LockInCurrentPosition = true
067A: put_camera_on_car 5@ offset 0.0 0.0 -10.0 point_to_car 1@ tilt 0.0 2  
01EB: set_car_density_to 0.0
03DE: set_pedestrians_density_multiplier_to 0.0 
$PLAYER_ACTOR.StorePos(6@, 7@, 8@)
0395: clear_area 1 at  6@ 7@ 8@ range 200.0
1@.DriveTo(1814.5135, -1890.4872, 13.4141)
1@.SetMaxSpeed(10.0)
fade 1 750
wait 750

:ShTBalC_5a
wait 10
if  
 $PLAYER_CHAR.Defined
jf @ShTBalC_5a
if
 not 1@.Wrecked
jf @ShTBalCarW
if
 00EE: actor $PLAYER_ACTOR 0 near_point 1814.5135 -1890.4872 radius 2.0 2.0
jf @ShTBalC_5a
1@.DriveTo(1801.6609, -1914.6604, 13.3952)

:ShTBalC_6
wait 10
if  
 $PLAYER_CHAR.Defined
jf @ShTBalC_6
if
 not 1@.Wrecked
jf @ShTBalCarW
if
 00EE: actor $PLAYER_ACTOR 0 near_point 1801.6609 -1914.6604 radius 4.0 4.0
jf @ShTBalC_6
wait 1000
05CD: AS_actor $PLAYER_ACTOR exit_car 1@
wait 1000
fade 0 1000
wait 1000
02A3: toggle_widescreen 0
Camera.Restore_WithJumpCut
Camera.SetBehindPlayer
5@.Destroy
3@.LockInCurrentPosition = false
3@.SetImmunities(0, 0, 0, 0, 0)
01EB: set_car_density_to 1.0
03DE: set_pedestrians_density_multiplier_to 1.0 
fade 1 1000
wait 1000
$PLAYER_CHAR.CanMove = true
05E2: AS_actor 3@ kill_actor $PLAYER_ACTOR
00BC: text_highpriority 'KILLB' 1000 ms 1

:ShTBalC_7
wait 10
if
 3@.Dead
jf @ShTBalC_7
jump @ShTBalP

:ShTBalCarW
00BC: text_highpriority 'CARW' 1000 ms 1 
jump @ShTBalF

:ShTBalP
$MPassed = 1
$MTried = 1
jump @ShTBalCleanup

:ShTBalF
00BA: text_styled 'M_FAIL'  5000 ms  1 // MISSION FAILED!
$MPassed = 0

:ShTBalCleanup
1@.RemoveReferences
2@.Disable
3@.RemoveReferences
4@.Disable
$MTried = 1
$ON_MISSION = 0
#GREENWOO.Destroy
#BALLAS1.Destroy
#TEC9.Destroy
#COLT45.Destroy
mission_cleanup
return

Dat was alles! Hopelijk ben je nu weer wat verder in SCM-scripten. Als er iets niet klopt of als je een suggestie hebt, post het hier!

american.zip

Edited by JGuntherS

Share this post


Link to post
Share on other sites
Jorge_F

Geweldige tutorial JGuntherS, ik zal hem gelijk toevoegen aan de Master Tutorial List ;)

Share this post


Link to post
Share on other sites
Flame^

_O_ . Es sind supah toll hehe :puh: .

Nee goed werk jesse, dit ga ik zeker gebruiken :) .

Share this post


Link to post
Share on other sites
PizzaTonno

Als ik tijd heb ga ik deze tut cker uit proberen,

Goed werk man je hebt er veel werk van gemaakt zie ik :Y

_O_ JGunthers _O_

Share this post


Link to post
Share on other sites
Blastov

Dit vind ik nou een geweldige tutorial _O_

Goed werk _O_

Share this post


Link to post
Share on other sites
eizoalecto

Vraagje:

ik ben ook een scripje aan het maken en hij blijft hangen bij:

5@.Create(#GREENWOO, 465.1854, -1948.31, 5.604343)	 
5@.LockInCurrentPosition = true

hij kent die 5@ niet

jij zegt dit moet toevoegen aan variabeleblok:

	5@: Car // Cameradummy
6@: Float // X-positie van de speler
7@: Float // Y-positie van de speler
8@: Float // Z-positie van de speler

wat is een variabeleblok?

[EIDT] ah ik snap hem al maar als ik die var~end toe voeg dan zegt hij

VOORBEELD:

var

$PLAYER_ACTOR: Actor

$PLAYER_CAR: Car

end

ERROR:

VAR

i'm not sure what to do with this line

it has no valid opcode and clever guesswork

system failed.

Edited by eizoalecto

Share this post


Link to post
Share on other sites
robojan

de download doet het niet

ik kan het niet openen in winrar hij zegt onverwacht einde aan archief

Edited by robojan

Share this post


Link to post
Share on other sites
dakkiono

waar moet ik dat ding voor die missie plaatsen moet ik alleen die american in text plaatsen

Share this post


Link to post
Share on other sites
Dutchy3010

Gewoon in SannyBuilder zetten en compileren. Dan new game starten, en je hebt hem. Je ziet dan echter geen tekst, dan moet je de American.gxt ook plaatsen... Dus je moet de missie kopiëren, in SannyBuilder plaatsen, compileren, en de American.gxt plaatsen. Klaar :sigaar:

Share this post


Link to post
Share on other sites
gaman

Misschien staat het er al, maar hoe zet je je missie in san andreas?

Edited by gaman

Share this post


Link to post
Share on other sites
Dutchy3010

Opslaan onder de naam "main.txt" in de map Program Files > Rockstar Games > GTA San Andreas > Data. Vervolgens op compileren drukken (of F6). Vervolgens GTA SA opstarten.

Maak wel een backup van je main.scm!

Misschien handig om deze tutorial door te lezen. ;)

Share this post


Link to post
Share on other sites
Smeets

Ik heb de tutorial gevolgd en de missie aangepast , maar ik zit met een paar probleempjes.

Ik krijg je M4 niet, en ik hoef niet alle biker dood te schieten om de missie te halen.

DEFINE OBJECTS 0
DEFINE MISSIONS 1
DEFINE MISSION 0 AT @ShTBal
DEFINE EXTERNAL_SCRIPTS -1 // Use -1 to not write AAA script
DEFINE UNKNOWN_EMPTY_SEGMENT 0
DEFINE UNKNOWN_THREADS_MEMORY 0

// --------------------
// THE STRIPPED MAIN THREAD
// contains initial info
// --------------------
thread 'MAIN'
var
$PLAYER_CHAR: Player
$PLAYER_ACTOR: Actor
$ON_MISSION: Integer
end // var
01F0: set_max_wanted_level_to 6
042C: set_total_missions_to 1
030D: set_total_mission_points_to 1
set_wb_check_to 0
00C0: set_current_time 8 0
04E4: unknown_refresh_game_renderer_at 1679.724 1448.33
Camera.SetAtPos(1679.724, 1448.33, 10.80)
$PLAYER_CHAR = Player.Create(#NULL, 1679.724, 1448.33, 10.80)
$PLAYER_ACTOR = Actor.EmulateFromPlayer($PLAYER_CHAR)
Camera.SetBehindPlayer
set_weather 0
wait 0
0180: set_on_mission_flag_to $ON_MISSION
$PLAYER_CHAR.SetClothes("PLAYER_FACE", "HEAD", Head)
$PLAYER_CHAR.SetClothes("JEANSDENIM", "JEANS", Legs)
$PLAYER_CHAR.SetClothes("SNEAKERBINCBLK", "SNEAKER", Shoes)
$PLAYER_CHAR.SetClothes("VEST", "VEST", Torso)
$PLAYER_CHAR.Build
$PLAYER_CHAR.CanMove = True
fade 1 (out) 0
select_interior 0
0629: change_stat 181 (islands unlocked) to 4
016C: restart_if_wasted at 2289.886 2427.861 10.82031 angle 137.0 unknown 0
016D: restart_if_busted at 1579.818 1770.329 10.82031 angle 90.0 unknown 0
create_thread @StrtTh1

end_thread

// --------------------------
// Tutorialmissie startthread
// Shooting the Balla
// Gemaakt door JGuntherS
// ---------------------------

:StrtTh1
var
$MarkerX: Float
$MarkerY: Float
$MarkerZ: Float
$MarkerH: Marker
$MarkerOn: Float
$MissionRunning: Integer
$MTried: Integer
$MPassed: Integer
end
thread 'StrtTh'
$MarkerX = 1670.913
$MarkerY = 1308.45 
$MarkerZ = 10.82031

:StrtTh1_0
$MarkerH.CreateIconAndSphere(34, $MarkerX, $MarkerY, $MarkerZ)
$MarkerOn = 1

:StrtTh1_2
wait 100
if
$ON_MISSION == 0
jf @StrtTh1_5
if and
$ON_MISSION == 0
$MarkerOn == 0
jf @StrtTh1_3
$MarkerH.CreateIconAndSphere(34, $MarkerX, $MarkerY, $MarkerZ)
$MarkerOn = 1

:StrtTh1_3
wait 0
if
$PLAYER_CHAR.Defined
jf @StrtTh1_3
if
00FF: actor $PLAYER_ACTOR 0 ()near_point_on_foot $MarkerX $MarkerY $MarkerZ radius 3.0 3.0 2.0
jf @StrtTh1_2
if
$PLAYER_CHAR.Controllable
jf @StrtTh1_2
$MarkerH.Disable
$MarkerOn = 0
$PLAYER_CHAR.CanMove = false
00BA: text_styled 'MsName' 1500 ms 2
fade 0 1500
wait 1500
start_mission 0

:StrtTh1_4
wait 10
if
$MTried == 1
jf @StrtTh1_4
$MTried = 0
if
$MPassed == 1
jf @StrtTh1_2
00BE: text_clear_all
03E6: remove_text_box
01E3: text_1number_styled 'M_PASS' 1000 5000 ms 1
0318: set_latest_mission_passed 'MsName'
030C: set_mission_points += 1
0394: play_music 1
$PLAYER_CHAR.Money += 2500
$PLAYER_CHAR.ClearWantedLevel
end_thread

:StrtTh1_5
if
$MarkerOn == 1
jf @StrtTh1_2
$MarkerH.Disable
$MarkerOn = 0
jump @StrtTh1_2

// --------------------------
// Tutorialmissie
// Shooting the Balla
// Gemaakt door JGuntherS
// ---------------------------

:ShTBal
var
001@: Car // Cheetah
002@: Marker // Marker
003@: Actor // De Biker
004@: Actor
005@: Actor
006@: Actor
007@: Actor
008@: Actor
009@: Actor
010@: Actor
011@: Actor
012@: Actor
013@: Actor
014@: Actor
015@: Actor
016@: Actor
017@: Actor
018@: Marker // Marker
019@: Marker
020@: Marker
021@: Marker
022@: Marker
023@: Marker
024@: Marker
025@: Marker
026@: Marker
027@: Marker
028@: Marker
029@: Marker
030@: Marker
031@: Marker
032@: Marker
033@: Car // Cameradummy
034@: Float // X-positie van de speler
035@: Float // Y-positie van de speler
036@: Float // Z-positie van de speler
end
gosub @ShTBalC
if 0
wasted_or_busted
jf @ShTBalD
gosub @ShTBalF

:ShTBalD
gosub @ShTBalCleanup
end_thread

:ShTBalC
thread 'ShTBal'
$ON_MISSION = 1
increment_mission_attempts
054C: use_GXT_table 'TutMiss'
#CHEETAH.Load
#BIKERA.Load	
#BIKERB.Load	
#BIKDRUG.Load   
#WMYCR.Load  
#WMYPLT.Load   
#M4.Load	   
#TEC9.Load	  

:ShTBalC_1
if or
not #CHEETAH.Available 
not #BIKERA.Available  
not #BIKERB.Available  
not #BIKDRUG.Available 
not #WMYCR.Available  
not #WMYPLT.Available 
not #M4.Available	  
not #TEC9.Available					 
jf @ShTBalC_2
wait 0
jump @ShTBalC_1

:ShTBalC_2
0395: clear_area 1 at 1666.587 1306.215 10.54906 range 2.0
001@.Create(#CHEETAH, 1666.587 1306.215 10.54906)
001@.Angle = 0.0
002@.CreateAboveCar(001@)
07E0: set_marker 002@ type_to 1
wait 3000
03E6: remove_text_box
fade 1 1500
wait 1500
$PLAYER_CHAR.CanMove = true

:ShTBalC_3
00BC: text_highpriority 'INCAR' 1000 ms 1
wait 10
if
$PLAYER_CHAR.Defined
jf @ShTBalC_3
if
not 001@.Wrecked
jf @ShTBalCarW
if
$PLAYER_ACTOR.InCar(001@)
jf @ShTBalC_3
002@.Disable

0395: clear_area 1 at 2595.51 2314.77 10.82031 radius 2.0
0395: clear_area 1 at 2596.08 2329.783 10.82031 radius 2.0
0395: clear_area 1 at 2603.017 2328.25 10.82031 radius 2.0
0395: clear_area 1 at 2612.762 2336.706 10.82031 radius 2.0
0395: clear_area 1 at 2612.664 2330.631 10.81277 radius 2.0
0395: clear_area 1 at 2619.635 2340.406 10.81277 radius 2.0
0395: clear_area 1 at 2641.606 2334.049 10.92188 radius 2.0
0395: clear_area 1 at 2634.05 2334.101 10.92188 radius 2.0
0395: clear_area 1 at 2655.576 2345.241 10.82031 radius 2.0
0395: clear_area 1 at 2651.901 2353.167 10.82031 radius 2.0
0395: clear_area 1 at 2639.999 2351.221 10.82031 radius 2.0
0395: clear_area 1 at 2636.698 2351.16 10.82031 radius 2.0
0395: clear_area 1 at 2587.966 2299.973 17.82031 radius 2.0
0395: clear_area 1 at 2622.522 2337.747 17.82031 radius 2.0
0395: clear_area 1 at 2627.203 2335.046 17.81448 radius 2.0  
003@.Create(Mission1, #BIKERA, 2595.51 2314.77 10.82031)
004@.Create(Mission1, #BIKERB, 2596.08 2329.783 10.82031)
005@.Create(Mission1, #BIKDRUG, 2603.017 2328.25 10.82031)
006@.Create(Mission1, #WMYCR, 2612.762 2336.706 10.82031)
007@.Create(Mission1, #BIKERA, 2612.664 2330.631 10.81277)
008@.Create(Mission1, #BIKERB, 2619.635 2340.406 10.81277)
009@.Create(Mission1, #BIKDRUG, 2641.606 2334.049 10.92188)
010@.Create(Mission1, #WMYCR, 2634.05 2334.101 10.92188)
011@.Create(Mission1, #BIKERA, 2655.576 2345.241 10.82031)
012@.Create(Mission1, #BIKERB, 2651.901 2353.167 10.82031)
013@.Create(Mission1, #BIKDRUG, 2639.999 2351.221 10.82031)
014@.Create(Mission1, #WMYCR, 2636.698 2351.16 10.82031)
015@.Create(Mission1, #BIKERA, 2587.966 2299.973 17.82031)
016@.Create(Mission1, #BIKERB, 2622.522 2337.747 17.82031)
017@.Create(Mission1, #BIKDRUG, 2627.203 2335.046 17.81448)
0350: unknown_actor 003@ not_scared_flag 1
0350: unknown_actor 004@ not_scared_flag 1
0350: unknown_actor 005@ not_scared_flag 1
0350: unknown_actor 006@ not_scared_flag 1
0350: unknown_actor 007@ not_scared_flag 1
0350: unknown_actor 008@ not_scared_flag 1
0350: unknown_actor 009@ not_scared_flag 1
0350: unknown_actor 010@ not_scared_flag 1
0350: unknown_actor 011@ not_scared_flag 1
0350: unknown_actor 012@ not_scared_flag 1
0350: unknown_actor 013@ not_scared_flag 1
0350: unknown_actor 014@ not_scared_flag 1
0350: unknown_actor 015@ not_scared_flag 1
0350: unknown_actor 016@ not_scared_flag 1
0350: unknown_actor 017@ not_scared_flag 1
01B2: give_actor 003@ weapon 32 ammo 99999
01B2: give_actor 004@ weapon 32 ammo 99999
01B2: give_actor 005@ weapon 32 ammo 99999
01B2: give_actor 006@ weapon 32 ammo 99999
01B2: give_actor 007@ weapon 32 ammo 99999
01B2: give_actor 008@ weapon 32 ammo 99999
01B2: give_actor 009@ weapon 32 ammo 99999
01B2: give_actor 010@ weapon 32 ammo 99999
01B2: give_actor 011@ weapon 32 ammo 99999
01B2: give_actor 012@ weapon 32 ammo 99999
01B2: give_actor 013@ weapon 32 ammo 99999
01B2: give_actor 014@ weapon 32 ammo 99999
01B2: give_actor 015@ weapon 32 ammo 99999
01B2: give_actor 016@ weapon 32 ammo 99999
01B2: give_actor 017@ weapon 32 ammo 99999
01B9: set_actor 003@ armed_weapon_to 32
01B9: set_actor 004@ armed_weapon_to 32
01B9: set_actor 005@ armed_weapon_to 32
01B9: set_actor 006@ armed_weapon_to 32
01B9: set_actor 007@ armed_weapon_to 32
01B9: set_actor 008@ armed_weapon_to 32
01B9: set_actor 009@ armed_weapon_to 32
01B9: set_actor 010@ armed_weapon_to 32
01B9: set_actor 011@ armed_weapon_to 32
01B9: set_actor 012@ armed_weapon_to 32
01B9: set_actor 013@ armed_weapon_to 32
01B9: set_actor 014@ armed_weapon_to 32
01B9: set_actor 015@ armed_weapon_to 32
01B9: set_actor 016@ armed_weapon_to 32
01B9: set_actor 017@ armed_weapon_to 32
003@.WeaponAccuracy = 30
004@.WeaponAccuracy = 30
005@.WeaponAccuracy = 30
006@.WeaponAccuracy = 30
007@.WeaponAccuracy = 30
008@.WeaponAccuracy = 30
009@.WeaponAccuracy = 50
010@.WeaponAccuracy = 50
011@.WeaponAccuracy = 50
012@.WeaponAccuracy = 40
013@.WeaponAccuracy = 40
014@.WeaponAccuracy = 40
015@.WeaponAccuracy = 20
016@.WeaponAccuracy = 20
017@.WeaponAccuracy = 20
003@.SetImmunities(1, 1, 1, 1, 1)
004@.SetImmunities(1, 1, 1, 1, 1)
005@.SetImmunities(1, 1, 1, 1, 1)
006@.SetImmunities(1, 1, 1, 1, 1)
007@.SetImmunities(1, 1, 1, 1, 1)
008@.SetImmunities(1, 1, 1, 1, 1)
009@.SetImmunities(1, 1, 1, 1, 1)
010@.SetImmunities(1, 1, 1, 1, 1)
011@.SetImmunities(1, 1, 1, 1, 1)
012@.SetImmunities(1, 1, 1, 1, 1)
013@.SetImmunities(1, 1, 1, 1, 1)
014@.SetImmunities(1, 1, 1, 1, 1)
015@.SetImmunities(1, 1, 1, 1, 1)
016@.SetImmunities(1, 1, 1, 1, 1)
017@.SetImmunities(1, 1, 1, 1, 1)
003@.LockInCurrentPosition = true
004@.LockInCurrentPosition = true
005@.LockInCurrentPosition = true
006@.LockInCurrentPosition = true
007@.LockInCurrentPosition = true
008@.LockInCurrentPosition = true
009@.LockInCurrentPosition = true
010@.LockInCurrentPosition = true
011@.LockInCurrentPosition = true
012@.LockInCurrentPosition = true
013@.LockInCurrentPosition = true
014@.LockInCurrentPosition = true
015@.LockInCurrentPosition = true
016@.LockInCurrentPosition = true
017@.LockInCurrentPosition = true
0638: AS_actor 003@ stay_put 1
0638: AS_actor 004@ stay_put 1
0638: AS_actor 005@ stay_put 1
0638: AS_actor 006@ stay_put 1
0638: AS_actor 007@ stay_put 1
0638: AS_actor 008@ stay_put 1
0638: AS_actor 009@ stay_put 1
0638: AS_actor 010@ stay_put 1
0638: AS_actor 011@ stay_put 1
0638: AS_actor 012@ stay_put 1
0638: AS_actor 013@ stay_put 1
0638: AS_actor 014@ stay_put 1
0638: AS_actor 015@ stay_put 1
0638: AS_actor 016@ stay_put 1
0638: AS_actor 017@ stay_put 1

:ShTBalC_3a
018@.CreateAboveActor(003@)
019@.CreateAboveActor(004@)
020@.CreateAboveActor(005@)
021@.CreateAboveActor(006@)
022@.CreateAboveActor(007@)
023@.CreateAboveActor(008@)
024@.CreateAboveActor(009@)
025@.CreateAboveActor(010@)
026@.CreateAboveActor(011@)
027@.CreateAboveActor(012@)
028@.CreateAboveActor(013@)
029@.CreateAboveActor(014@)
030@.CreateAboveActor(015@)
031@.CreateAboveActor(016@)
032@.CreateAboveActor(017@)
002@.Disable

:ShTBalC_4
00BE: text_clear_all
03E6: remove_text_box
wait 10
if
$PLAYER_CHAR.Defined
jf @ShTBalC_4
if
not 001@.Wrecked
jf @ShTBalCarW
if
$PLAYER_ACTOR.InCar(001@)
jf @ShTBalC_4_Car
if
00EE: actor $PLAYER_ACTOR 0 near_point 2631.524 2270.029 radius 150.0 150.0
jf @ShTBalC_4
jump @ShTBalC_5

:ShTBalC_4_Car
018@.Disable
019@.Disable
020@.Disable
021@.Disable
022@.Disable
023@.Disable
024@.Disable
025@.Disable
026@.Disable
027@.Disable
028@.Disable
029@.Disable
030@.Disable
031@.Disable
032@.Disable
002@.CreateAboveCar(001@)
07E0: set_marker 002@ type_to 1

:ShTBalC_4_CarA
wait 10
00BC: text_highpriority 'INCAR' 1000 ms 1
if
not 001@.Wrecked
jf @ShTBalCarW
if
not $PLAYER_ACTOR.InCar(001@)
jf @ShTBalC_3a
jump @ShTBalC_4_CarA

:ShTBalC_5
$PLAYER_CHAR.CanMove = false
fade 0 1000
wait 1000
01B2: give_actor $PLAYER_ACTOR weapon 356 ammo 100
01B9: set_actor $PLAYER_ACTOR armed_weapon_to 22
02A3: toggle_widescreen 1
033@.Create(#CHEETAH, 2647.074, 2293.506, 41.83713)
033@.LockInCurrentPosition = true
067A: put_camera_on_car 033@ offset 0.0 0.0 -10.0 point_to_car 001@ tilt 0.0 2
01EB: set_car_density_to 0.0
03DE: set_pedestrians_density_multiplier_to 0.0
$PLAYER_ACTOR.StorePos(034@, 035@, 036@)
0395: clear_area 1 at 034@ 035@ 036@ range 200.0
001@.DriveTo(2620.118, 2323.519, 10.67188)
001@.SetMaxSpeed(10.0)
fade 1 750
wait 750

:ShTBalC_5a
wait 10
if
$PLAYER_CHAR.Defined
jf @ShTBalC_5a
if
not 001@.Wrecked
jf @ShTBalCarW
if
00EE: actor $PLAYER_ACTOR 0 near_point 2620.118 2323.519 radius 2.0 2.0
jf @ShTBalC_5a
001@.DriveTo(2592.979, 2275.226, 10.54739)

:ShTBalC_6
wait 10
if
$PLAYER_CHAR.Defined
jf @ShTBalC_6
if
not 001@.Wrecked
jf @ShTBalCarW
if
00EE: actor $PLAYER_ACTOR 0 near_point 2592.979 2275.226 radius 4.0 4.0
jf @ShTBalC_6
wait 1000
05CD: AS_actor $PLAYER_ACTOR exit_car 001@
wait 1000
fade 0 1000
wait 1000
02A3: toggle_widescreen 0
Camera.Restore_WithJumpCut
Camera.SetBehindPlayer
033@.Destroy
003@.LockInCurrentPosition = false
004@.LockInCurrentPosition = false
005@.LockInCurrentPosition = false
006@.LockInCurrentPosition = false
007@.LockInCurrentPosition = false
008@.LockInCurrentPosition = false
009@.LockInCurrentPosition = false
010@.LockInCurrentPosition = false
011@.LockInCurrentPosition = false
012@.LockInCurrentPosition = false
013@.LockInCurrentPosition = false
014@.LockInCurrentPosition = false
015@.LockInCurrentPosition = false
016@.LockInCurrentPosition = false
017@.LockInCurrentPosition = false
003@.SetImmunities(0, 0, 0, 0, 0)
004@.SetImmunities(0, 0, 0, 0, 0)
005@.SetImmunities(0, 0, 0, 0, 0)
006@.SetImmunities(0, 0, 0, 0, 0)
007@.SetImmunities(0, 0, 0, 0, 0)
008@.SetImmunities(0, 0, 0, 0, 0)
009@.SetImmunities(0, 0, 0, 0, 0)
010@.SetImmunities(0, 0, 0, 0, 0)
011@.SetImmunities(0, 0, 0, 0, 0)
012@.SetImmunities(0, 0, 0, 0, 0)
013@.SetImmunities(0, 0, 0, 0, 0)
014@.SetImmunities(0, 0, 0, 0, 0)
015@.SetImmunities(0, 0, 0, 0, 0)
016@.SetImmunities(0, 0, 0, 0, 0)
017@.SetImmunities(0, 0, 0, 0, 0)
01EB: set_car_density_to 1.0
03DE: set_pedestrians_density_multiplier_to 1.0
fade 1 1000
wait 1000
$PLAYER_CHAR.CanMove = true
05E2: AS_actor 003@ kill_actor $PLAYER_ACTOR
05E2: AS_actor 004@ kill_actor $PLAYER_ACTOR
05E2: AS_actor 005@ kill_actor $PLAYER_ACTOR
05E2: AS_actor 006@ kill_actor $PLAYER_ACTOR
05E2: AS_actor 007@ kill_actor $PLAYER_ACTOR
05E2: AS_actor 008@ kill_actor $PLAYER_ACTOR
05E2: AS_actor 009@ kill_actor $PLAYER_ACTOR
05E2: AS_actor 010@ kill_actor $PLAYER_ACTOR
05E2: AS_actor 011@ kill_actor $PLAYER_ACTOR
05E2: AS_actor 012@ kill_actor $PLAYER_ACTOR
05E2: AS_actor 013@ kill_actor $PLAYER_ACTOR
05E2: AS_actor 014@ kill_actor $PLAYER_ACTOR
05E2: AS_actor 015@ kill_actor $PLAYER_ACTOR
05E2: AS_actor 016@ kill_actor $PLAYER_ACTOR
05E2: AS_actor 017@ kill_actor $PLAYER_ACTOR
00BC: text_highpriority 'KILLB' 1000 ms 1

:ShTBalC_7
wait 10
if
003@.Dead
004@.Dead
005@.Dead
006@.Dead
007@.Dead
008@.Dead
009@.Dead
010@.Dead
011@.Dead
012@.Dead
013@.Dead
014@.Dead
015@.Dead
016@.Dead
017@.Dead
jf @ShTBalC_7
jump @ShTBalP

:ShTBalCarW
00BC: text_highpriority 'CARW' 1000 ms 1
jump @ShTBalF

:ShTBalP
$MPassed = 1
$MTried = 1
jump @ShTBalCleanup

:ShTBalF
00BA: text_styled 'M_FAIL' 5000 ms 1 // MISSION FAILED!
$MPassed = 0

:ShTBalCleanup
001@.RemoveReferences
002@.Disable
003@.RemoveReferences
004@.RemoveReferences
005@.RemoveReferences
006@.RemoveReferences
007@.RemoveReferences
008@.RemoveReferences
009@.RemoveReferences
010@.RemoveReferences
011@.RemoveReferences
012@.RemoveReferences
013@.RemoveReferences
014@.RemoveReferences
015@.RemoveReferences
016@.RemoveReferences
017@.RemoveReferences
018@.Disable
019@.Disable
020@.Disable
021@.Disable
022@.Disable
023@.Disable
024@.Disable
025@.Disable
026@.Disable
027@.Disable
028@.Disable
029@.Disable
030@.Disable
031@.Disable
032@.Disable
$MTried = 1
$ON_MISSION = 0

#BIKERA.Destroy
#BIKERB.Destroy
#BIKDRUG.Destroy
#WMYCR.Destroy
#WMYPLT.Destroy
mission_cleanup
return

Iemand mischien enig idee?

Share this post


Link to post
Share on other sites
GTA_K

Ik heb een vraag:

Wat of wie is de $PLAYER_CHAR.Defined

En wanneer moet je dat gebruiken :?

Share this post


Link to post
Share on other sites

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 account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...