Jump to content
Geplaatst:
comment_751319

Hier kunnen jullie je reactie geven, en vragen stellen over. Zeg er goed bij over welke tutorial het gaat. Daarnaast kunnen jullie hier ook nieuwe tutorials aanvragen, als je ergens vastloopt met SCM.

Inhoudsopgave

Tutorial 1: Actors

Tutorial 2: Wapens (en eigenschappen) aan een Actor

Tutorial 3: Cars spawnen

Tutorial 4: Spheres, icons en markers

Tutorial 5: Een eenvoudige missie

Tutorial 6: Een echte missie (Rockstar style)

Tutorial 7: Status Balken

Tutorial 8: Basis SCM-scripten

  • Reacties 150
  • Bezichtigingen 23.5k
  • Created
  • Laatste reactie

Top Posters In This Topic

Featured Replies

Geplaatst:
comment_889158

Hij sluit nogsteeds af :7

Maar als jij de code kopieert en plakt en dan compiled werkt hij dan wel? =S Ik denk nogsteeds dat ik iets fout heb gedaan qua loaden ofzo aangezien hij al meteen aan het begin afsluit maar dat weet ik niet zeker. =[

Geplaatst:
comment_889187

Probleem fixed. Het probleem was dat er boven verkeerd gedefinieerd was. Toen ik de :Kenmerken en de :Eerste_Missie verwisselde kreeg ik ook die error, en toen zag ik bovenin dat er nét een stukje verkeerd gehandeld was. De Sniffer Thread was weer als missie gedefinieerd, wat dus niet de bedoeling was.

// This file was decompiled using sascm.ini published by Seemann (http://sannybuilder.com/files/SASCM.rar) on 13.10.2007
DEFINE MISSIONS 2
DEFINE MISSION 0 AT @Kenmerken
DEFINE MISSION 1 AT @Eerste_Missie_1
DEFINE EXTERNAL_SCRIPTS 0 // Use -1 in order not to compile AAA script
//DEFINE SCRIPT {NAME} AT {LABEL} @
DEFINE UNKNOWN_EMPTY_SEGMENT 0
DEFINE UNKNOWN_THREADS_MEMORY 0

{$VERSION 3.1.0027}

//-------------MAIN---------------
thread 'MAIN'
01F0: set_max_wanted_level_to 6
set_wb_check_to 0
00C0: set_current_time_hours_to 8 minutes_to 0
04E4: unknown_refresh_game_renderer_at 2488.56 -1666.84
Camera.SetAtPos(2488.56, -1666.84, 13.38)
$PLAYER_CHAR = Player.Create(#NULL, 2488.56, -1666.84, 13.38)
$PLAYER_ACTOR = Actor.EmulateFromPlayer($PLAYER_CHAR)
07AF: $PLAYER_GROUP = player $PLAYER_CHAR group
Camera.SetBehindPlayer
set_weather 0
wait 0
Player.SetClothes($PLAYER_CHAR, "PLAYER_FACE", "HEAD", Head)
Player.SetClothes($PLAYER_CHAR, "JEANSDENIM", "JEANS", Legs)
Player.SetClothes($PLAYER_CHAR, "SNEAKERBINCBLK", "SNEAKER", Shoes)
Player.SetClothes($PLAYER_CHAR, "VEST", "VEST", Torso)
Player.Build($PLAYER_CHAR)
Player.CanMove($PLAYER_CHAR) = True
fade 1 0
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
$DEFAULT_WAIT_TIME = 250
03E6: remove_text_box
start_mission 0
wait 0 ms

create_thread @Eerste_Missie

:MAIN_297
wait $DEFAULT_WAIT_TIME
00BF: $TIME_HOURS = current_time_hours, $TIME_MINS = current_time_minutes
jump @MAIN_297

//-----------------------
:Eerste_Missie
thread 'Eerste_Missie'
$MARKER_BEGIN = Marker.CreateIconAndSphere(15, 2495.781, -1747.289, 12.46979 )
repeat
wait $DEFAULT_WAIT_TIME
   if and
     Player.Defined($PLAYER_CHAR)
     $ONMISSION == 0
   then
       if and
         00FF: actor $PLAYER_ACTOR sphere 0 in_sphere 2495.781 -1747.289 12.46979 radius 1.0 1.0 2.0 on_foot
         Player.Controllable($PLAYER_CHAR)
         $Eerste_Missie_Passed == 0
       then
         $ONMISSION = 1
         00BA: show_text_styled GXT 'AWI' time 1000 style 2
        start_mission 1
   end

end
until $Eerste_Missie_Passed == 1
marker.Disable($MARKER_BEGIN)
end_thread

//--------------------------
:Kenmerken
$Eerste_Missie_Passed = 0
$ONMISSION = 0

0629: change_integer_stat 225 to 999
end_thread

:Eerste_Missie_1
gosub @Eerste_Missie_Main
if wasted_or_busted
then
gosub @Eerste_Missie_Failed
end
gosub @Eerste_Missie_Opruimen
end_thread

//---------------------------
:Eerste_Missie_Main

//Models laden
model.Load(#ak47)// Nr. 30
model.Load(#TEC9) // Nr. 32
023C: load_special_actor 'RYDER1' as 1
023C: load_special_actor 'SWEET' as 2
023C: load_special_actor 'OGLOC' as 3
model.Load(#FAM3)
model.Load(#FAM1)
038B: Load_requested_models

:Eerste_Missie_Load
wait 0 ms
if and
model.Available(#AK47)
model.Available(#TEC9)
823D: not special_actor 1 loaded
823D: not special_actor 2 loaded
823D: not special_actor 3 loaded
model.Available(#FAM3)
model.Available(#FAM1)
004D: jump_if_false @Eerste_Missie_Load

01B2: give_actor $PLAYER_ACTOR weapon 30 ammo 5000
$Grove1 = actor.Create(Gang2, #FAM1, 2510.003, -1653.876, 13.69054)
$Grove2 = actor.Create(Gang2, #FAM1, 2469.842, -1648.269, 13.47245)
$Grove3 = actor.Create(Gang2, #FAM3, 2498.723, -1644.413, 13.78261)
$Grove4 = actor.Create(Gang2, #FAM3,2486.901, -1648.242, 14.07031)
$Ryder = actor.Create(38, #SPECIAL01, 2459.735, -1687.654, 13.53583)
$Sweet = actor.Create(45, #SPECIAL02, 2512.306, -1675.983, 13.54529)
$OGLoc = actor.Create(34, #SPECIAL03, 2493.735, -1687.074, 13.5138)
0187: $OG_Marker = Create_marker_above_actor $OGLoc
01B2: give_actor $Grove1 weapon 32 ammo 500
01B2: give_actor $Grove2 weapon 32 ammo 500
01B2: give_actor $Grove3 weapon 32 ammo 500
01B2: give_actor $Grove4 weapon 32 ammo 500
01B2: give_actor $Ryder weapon 32 ammo 500
01B2: give_actor $Sweet weapon 32 ammo 500
05E2: AS_Actor $Grove1 kill_actor $PLAYER_ACTOR
05E2: AS_Actor $Grove2 kill_actor $PLAYER_ACTOR
05E2: AS_Actor $Grove3 kill_actor $Ryder
05E2: AS_Actor $Grove4 kill_actor $PLAYER_ACTOR
05E2: AS_Actor $Sweet kill_actor $PLAYER_ACTOR
Actor.Health($Ryder) = 25
Actor.Health($Sweet) = 300

repeat
wait 0 ms
if Actor.Dead($Ryder)
then
jump @Eerste_Missie_Failed
end
until Actor.Dead($Sweet)

:Eerste_Missie_Passed
0394: play_music 1
$Eerste_Missie_Passed += 1
Player.Money($PLAYER_CHAR) += 13337
01E3: show_text_1number_styled GXT 'M_PASS' number 13337 time 5000 style 1
return

:Eerste_Missie_Failed
00BA: show_text_styled GXT 'M_FAIL' time 5000 style 1
0555: remove_weapon 30 from_actor $PLAYER_ACTOR
return

:Eerste_Missie_Opruimen
$ONMISSION = 0
Marker.Disable($OG_Marker)
010D: set_player $PLAYER_CHAR Wanted_level_to 0
model.Destroy(#FAM1)
model.Destroy(#FAM3)
Model.Destroy(#AK47)
Model.Destroy(#TEC9)
Model.Destroy(#SPECIAL01)
Model.Destroy(#SPECIAL02)
Model.Destroy(#SPECIAL03)
mission_cleanup
return

Succes verder. :)

Geplaatst:
comment_889214
Probleem fixed. Het probleem was dat er boven verkeerd gedefinieerd was. Toen ik de :Kenmerken en de :Eerste_Missie verwisselde kreeg ik ook die error, en toen zag ik bovenin dat er nét een stukje verkeerd gehandeld was. De Sniffer Thread was weer als missie gedefinieerd, wat dus niet de bedoeling was.

// This file was decompiled using sascm.ini published by Seemann (http://sannybuilder.com/files/SASCM.rar) on 13.10.2007
DEFINE MISSIONS 2
DEFINE MISSION 0 AT @Kenmerken
DEFINE MISSION 1 AT @Eerste_Missie_1
DEFINE EXTERNAL_SCRIPTS 0 // Use -1 in order not to compile AAA script
//DEFINE SCRIPT {NAME} AT {LABEL} @
DEFINE UNKNOWN_EMPTY_SEGMENT 0
DEFINE UNKNOWN_THREADS_MEMORY 0

{$VERSION 3.1.0027}

//-------------MAIN---------------
thread 'MAIN'
01F0: set_max_wanted_level_to 6
set_wb_check_to 0
00C0: set_current_time_hours_to 8 minutes_to 0
04E4: unknown_refresh_game_renderer_at 2488.56 -1666.84
Camera.SetAtPos(2488.56, -1666.84, 13.38)
$PLAYER_CHAR = Player.Create(#NULL, 2488.56, -1666.84, 13.38)
$PLAYER_ACTOR = Actor.EmulateFromPlayer($PLAYER_CHAR)
07AF: $PLAYER_GROUP = player $PLAYER_CHAR group
Camera.SetBehindPlayer
set_weather 0
wait 0
Player.SetClothes($PLAYER_CHAR, "PLAYER_FACE", "HEAD", Head)
Player.SetClothes($PLAYER_CHAR, "JEANSDENIM", "JEANS", Legs)
Player.SetClothes($PLAYER_CHAR, "SNEAKERBINCBLK", "SNEAKER", Shoes)
Player.SetClothes($PLAYER_CHAR, "VEST", "VEST", Torso)
Player.Build($PLAYER_CHAR)
Player.CanMove($PLAYER_CHAR) = True
fade 1 0
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
$DEFAULT_WAIT_TIME = 250
03E6: remove_text_box
start_mission 0
wait 0 ms

create_thread @Eerste_Missie

:MAIN_297
wait $DEFAULT_WAIT_TIME
00BF: $TIME_HOURS = current_time_hours, $TIME_MINS = current_time_minutes
jump @MAIN_297

//-----------------------
:Eerste_Missie
thread 'Eerste_Missie'
$MARKER_BEGIN = Marker.CreateIconAndSphere(15, 2495.781, -1747.289, 12.46979 )
repeat
wait $DEFAULT_WAIT_TIME
   if and
     Player.Defined($PLAYER_CHAR)
     $ONMISSION == 0
   then
       if and
         00FF: actor $PLAYER_ACTOR sphere 0 in_sphere 2495.781 -1747.289 12.46979 radius 1.0 1.0 2.0 on_foot
         Player.Controllable($PLAYER_CHAR)
         $Eerste_Missie_Passed == 0
       then
         $ONMISSION = 1
         00BA: show_text_styled GXT 'AWI' time 1000 style 2
        start_mission 1
   end

end
until $Eerste_Missie_Passed == 1
marker.Disable($MARKER_BEGIN)
end_thread

//--------------------------
:Kenmerken
$Eerste_Missie_Passed = 0
$ONMISSION = 0

0629: change_integer_stat 225 to 999
end_thread

:Eerste_Missie_1
gosub @Eerste_Missie_Main
if wasted_or_busted
then
gosub @Eerste_Missie_Failed
end
gosub @Eerste_Missie_Opruimen
end_thread

//---------------------------
:Eerste_Missie_Main

//Models laden
model.Load(#ak47)// Nr. 30
model.Load(#TEC9) // Nr. 32
023C: load_special_actor 'RYDER1' as 1
023C: load_special_actor 'SWEET' as 2
023C: load_special_actor 'OGLOC' as 3
model.Load(#FAM3)
model.Load(#FAM1)
038B: Load_requested_models

:Eerste_Missie_Load
wait 0 ms
if and
model.Available(#AK47)
model.Available(#TEC9)
823D: not special_actor 1 loaded
823D: not special_actor 2 loaded
823D: not special_actor 3 loaded
model.Available(#FAM3)
model.Available(#FAM1)
004D: jump_if_false @Eerste_Missie_Load

01B2: give_actor $PLAYER_ACTOR weapon 30 ammo 5000
$Grove1 = actor.Create(Gang2, #FAM1, 2510.003, -1653.876, 13.69054)
$Grove2 = actor.Create(Gang2, #FAM1, 2469.842, -1648.269, 13.47245)
$Grove3 = actor.Create(Gang2, #FAM3, 2498.723, -1644.413, 13.78261)
$Grove4 = actor.Create(Gang2, #FAM3,2486.901, -1648.242, 14.07031)
$Ryder = actor.Create(38, #SPECIAL01, 2459.735, -1687.654, 13.53583)
$Sweet = actor.Create(45, #SPECIAL02, 2512.306, -1675.983, 13.54529)
$OGLoc = actor.Create(34, #SPECIAL03, 2493.735, -1687.074, 13.5138)
0187: $OG_Marker = Create_marker_above_actor $OGLoc
01B2: give_actor $Grove1 weapon 32 ammo 500
01B2: give_actor $Grove2 weapon 32 ammo 500
01B2: give_actor $Grove3 weapon 32 ammo 500
01B2: give_actor $Grove4 weapon 32 ammo 500
01B2: give_actor $Ryder weapon 32 ammo 500
01B2: give_actor $Sweet weapon 32 ammo 500
05E2: AS_Actor $Grove1 kill_actor $PLAYER_ACTOR
05E2: AS_Actor $Grove2 kill_actor $PLAYER_ACTOR
05E2: AS_Actor $Grove3 kill_actor $Ryder
05E2: AS_Actor $Grove4 kill_actor $PLAYER_ACTOR
05E2: AS_Actor $Sweet kill_actor $PLAYER_ACTOR
Actor.Health($Ryder) = 25
Actor.Health($Sweet) = 300

repeat
wait 0 ms
if Actor.Dead($Ryder)
then
jump @Eerste_Missie_Failed
end
until Actor.Dead($Sweet)

:Eerste_Missie_Passed
0394: play_music 1
$Eerste_Missie_Passed += 1
Player.Money($PLAYER_CHAR) += 13337
01E3: show_text_1number_styled GXT 'M_PASS' number 13337 time 5000 style 1
return

:Eerste_Missie_Failed
00BA: show_text_styled GXT 'M_FAIL' time 5000 style 1
0555: remove_weapon 30 from_actor $PLAYER_ACTOR
return

:Eerste_Missie_Opruimen
$ONMISSION = 0
Marker.Disable($OG_Marker)
010D: set_player $PLAYER_CHAR Wanted_level_to 0
model.Destroy(#FAM1)
model.Destroy(#FAM3)
Model.Destroy(#AK47)
Model.Destroy(#TEC9)
Model.Destroy(#SPECIAL01)
Model.Destroy(#SPECIAL02)
Model.Destroy(#SPECIAL03)
mission_cleanup
return

Succes verder. :)

Hm, San Andreas start nu tenminste normaal op, dat is al een begin, maar nu loopt het spel hopeloos vast als ik de missie marker instap, ik zag bij tjerk dat hij hetzelfde probleem had en dacht dat hij teveel modellen laadde, hoe splits ik het laden daarvan op als dat inderdaad het probleem is?

Geplaatst:
comment_889227

je moet dit veranderen:

:Eerste_Missie_Load
wait 0 ms
if and
model.Available(#AK47)
model.Available(#TEC9)
823D: not special_actor 1 loaded
823D: not special_actor 2 loaded
823D: not special_actor 3 loaded
model.Available(#FAM3)
model.Available(#FAM1)
004D: jump_if_false @Eerste_Missie_Load

dat moet dit worden:

:Eerste_Missie_Load
wait 0 ms
if and
not model.Available(#AK47)
not model.Available(#TEC9)
823D: not special_actor 1 loaded
823D: not special_actor 2 loaded
823D: not special_actor 3 loaded
not model.Available(#FAM3)
not model.Available(#FAM1)
004D: jump_if_false @Eerste_Missie_Load

dit moet omdat je anders met de jump_if_false naar het eerste label terugspringt en zo in een oneindigende loop terecht komt.

Greetz,

Black Force

Geplaatst:
comment_889243
je moet dit veranderen:

:Eerste_Missie_Load
wait 0 ms
if and
model.Available(#AK47)
model.Available(#TEC9)
823D: not special_actor 1 loaded
823D: not special_actor 2 loaded
823D: not special_actor 3 loaded
model.Available(#FAM3)
model.Available(#FAM1)
004D: jump_if_false @Eerste_Missie_Load

dat moet dit worden:

:Eerste_Missie_Load
wait 0 ms
if and
not model.Available(#AK47)
not model.Available(#TEC9)
823D: not special_actor 1 loaded
823D: not special_actor 2 loaded
823D: not special_actor 3 loaded
not model.Available(#FAM3)
not model.Available(#FAM1)
004D: jump_if_false @Eerste_Missie_Load

dit moet omdat je anders met de jump_if_false naar het eerste label terugspringt en zo in een oneindigende loop terecht komt.

Greetz,

Black Force

Hm, ik heb het veranderd maar hij loopt nogsteeds vast, komt hij nu niet in een eeuwige laadloop? dus dat ik zeg

Niet model <bla> beschikbaar

spring als model wel beschikbaar is naar :Eerste_Missie_Load

Hij loopt iig nogsteeds vast xD

Geplaatst:
comment_889335

Je moet volgens mij gewoon alle not's weg halen, want het script heeft nu zoiets van: Als... het model wel aanwezig is, dan moet je terug springen naar :eerste_missie_load. dus eigenlijk kan het script in deze situatie alleen verder als alle objecten niet geladen zijn, wat natuurlijk ook weer fouten opleverd.

Edit:

Poeh, dat scheelde weinig ^_^

Bewerkt: door tjerk

Geplaatst:
comment_889336

Edit: @ tjerk: inderdaad.

je moet dit veranderen:

:Eerste_Missie_Load
wait 0 ms
if and
 model.Available(#AK47)
 model.Available(#TEC9)
 823D: not special_actor 1 loaded
 823D: not special_actor 2 loaded
 823D: not special_actor 3 loaded
 model.Available(#FAM3)
 model.Available(#FAM1)
004D: jump_if_false @Eerste_Missie_Load

dat moet dit worden:

:Eerste_Missie_Load
wait 0 ms
if and
not model.Available(#AK47)
not model.Available(#TEC9)
823D: not special_actor 1 loaded
823D: not special_actor 2 loaded
823D: not special_actor 3 loaded
not model.Available(#FAM3)
not model.Available(#FAM1)
004D: jump_if_false @Eerste_Missie_Load

dit moet omdat je anders met de jump_if_false naar het eerste label terugspringt en zo in een oneindigende loop terecht komt.

Greetz,

Black Force

Zucht, nee dus..

Het moet zo:

:Eerste_Missie_Load
wait 0 ms
if and
model.Available(#AK47)
model.Available(#TEC9)
023D: special_actor 1 loaded
023D: special_actor 2 loaded
023D: special_actor 3 loaded
model.Available(#FAM3)
model.Available(#FAM1)
004D: jump_if_false @Eerste_Missie_Load

Geplaatst:
comment_889391

Ja, zoiets dacht ik al maar dat werkte niet omdat ik de verkeerde opcode gebruikte, nu heb ik het dus wel goed gedaan maar hij loopt nogsteeds vast :N Ik begin zo langzamerhand te denken dat er geen hoop meer is voor deze missie maar ik ben bang dezelfde fouten te maken als ik opnieuw begin, ik heb nu dus dit:

// This file was decompiled using sascm.ini published by Seemann (http://sannybuilder.com/files/SASCM.rar) on 13.10.2007
DEFINE MISSIONS 2
DEFINE MISSION 0 AT @Kenmerken
DEFINE MISSION 1 AT @Eerste_Missie_1
DEFINE EXTERNAL_SCRIPTS 0 // Use -1 in order not to compile AAA script
//DEFINE SCRIPT {NAME} AT {LABEL} @
DEFINE UNKNOWN_EMPTY_SEGMENT 0
DEFINE UNKNOWN_THREADS_MEMORY 0

{$VERSION 3.1.0027}

//-------------MAIN---------------
thread 'MAIN'
01F0: set_max_wanted_level_to 6
set_wb_check_to 0
00C0: set_current_time_hours_to 8 minutes_to 0
04E4: unknown_refresh_game_renderer_at 2488.56 -1666.84
Camera.SetAtPos(2488.56, -1666.84, 13.38)
$PLAYER_CHAR = Player.Create(#NULL, 2488.56, -1666.84, 13.38)
$PLAYER_ACTOR = Actor.EmulateFromPlayer($PLAYER_CHAR)
07AF: $PLAYER_GROUP = player $PLAYER_CHAR group
Camera.SetBehindPlayer
set_weather 0
wait 0
Player.SetClothes($PLAYER_CHAR, "PLAYER_FACE", "HEAD", Head)
Player.SetClothes($PLAYER_CHAR, "JEANSDENIM", "JEANS", Legs)
Player.SetClothes($PLAYER_CHAR, "SNEAKERBINCBLK", "SNEAKER", Shoes)
Player.SetClothes($PLAYER_CHAR, "VEST", "VEST", Torso)
Player.Build($PLAYER_CHAR)
Player.CanMove($PLAYER_CHAR) = True
fade 1 0
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
$DEFAULT_WAIT_TIME = 250
03E6: remove_text_box
start_mission 0
wait 0 ms

create_thread @Eerste_Missie

:MAIN_297
wait $DEFAULT_WAIT_TIME
00BF: $TIME_HOURS = current_time_hours, $TIME_MINS = current_time_minutes
jump @MAIN_297

//-----------------------
:Eerste_Missie
thread 'Eerste_Missie'
$MARKER_BEGIN = Marker.CreateIconAndSphere(15, 2495.781, -1747.289, 12.46979 )
repeat
wait $DEFAULT_WAIT_TIME
if and
Player.Defined($PLAYER_CHAR)
$ONMISSION == 0
then
if and
00FF: actor $PLAYER_ACTOR sphere 0 in_sphere 2495.781 -1747.289 12.46979 radius 1.0 1.0 2.0 on_foot
Player.Controllable($PLAYER_CHAR)
$Eerste_Missie_Passed == 0
then
$ONMISSION = 1
00BA: show_text_styled GXT 'AWI' time 1000 style 2
start_mission 1
end

end
until $Eerste_Missie_Passed == 1
marker.Disable($MARKER_BEGIN)
end_thread

//--------------------------
:Kenmerken
$Eerste_Missie_Passed = 0
$ONMISSION = 0

0629: change_integer_stat 225 to 999
end_thread

:Eerste_Missie_1
gosub @Eerste_Missie_Main
if wasted_or_busted
then
gosub @Eerste_Missie_Failed
end
gosub @Eerste_Missie_Opruimen
end_thread

//---------------------------
:Eerste_Missie_Main

//Models laden
model.Load(#ak47)// Nr. 30
model.Load(#TEC9) // Nr. 32
023C: load_special_actor 'RYDER1' as 1
023C: load_special_actor 'SWEET' as 2
023C: load_special_actor 'OGLOC' as 3
model.Load(#FAM3)
model.Load(#FAM1)
038B: Load_requested_models

:Eerste_Missie_Load
wait 0 ms
if and
model.Available(#AK47)
model.Available(#TEC9)
023D: special_actor 1 loaded
023D: special_actor 2 loaded
023D: special_actor 3 loaded
model.Available(#FAM3)
model.Available(#FAM1)
004D: jump_if_false @Eerste_Missie_Load

01B2: give_actor $PLAYER_ACTOR weapon 30 ammo 5000
$Grove1 = actor.Create(Gang2, #FAM1, 2510.003, -1653.876, 13.69054)
$Grove2 = actor.Create(Gang2, #FAM1, 2469.842, -1648.269, 13.47245)
$Grove3 = actor.Create(Gang2, #FAM3, 2498.723, -1644.413, 13.78261)
$Grove4 = actor.Create(Gang2, #FAM3,2486.901, -1648.242, 14.07031)
$Ryder = actor.Create(38, #SPECIAL01, 2459.735, -1687.654, 13.53583)
$Sweet = actor.Create(45, #SPECIAL02, 2512.306, -1675.983, 13.54529)
$OGLoc = actor.Create(34, #SPECIAL03, 2493.735, -1687.074, 13.5138)
0187: $OG_Marker = Create_marker_above_actor $OGLoc
01B2: give_actor $Grove1 weapon 32 ammo 500
01B2: give_actor $Grove2 weapon 32 ammo 500
01B2: give_actor $Grove3 weapon 32 ammo 500
01B2: give_actor $Grove4 weapon 32 ammo 500
01B2: give_actor $Ryder weapon 32 ammo 500
01B2: give_actor $Sweet weapon 32 ammo 500
05E2: AS_Actor $Grove1 kill_actor $PLAYER_ACTOR
05E2: AS_Actor $Grove2 kill_actor $PLAYER_ACTOR
05E2: AS_Actor $Grove3 kill_actor $Ryder
05E2: AS_Actor $Grove4 kill_actor $PLAYER_ACTOR
05E2: AS_Actor $Sweet kill_actor $PLAYER_ACTOR
Actor.Health($Ryder) = 25
Actor.Health($Sweet) = 300

repeat
wait 0 ms
if Actor.Dead($Ryder)
then
jump @Eerste_Missie_Failed
end
until Actor.Dead($Sweet)

:Eerste_Missie_Passed
0394: play_music 1
$Eerste_Missie_Passed += 1
Player.Money($PLAYER_CHAR) += 13337
01E3: show_text_1number_styled GXT 'M_PASS' number 13337 time 5000 style 1
return

:Eerste_Missie_Failed
00BA: show_text_styled GXT 'M_FAIL' time 5000 style 1
0555: remove_weapon 30 from_actor $PLAYER_ACTOR
return

:Eerste_Missie_Opruimen
$ONMISSION = 0
Marker.Disable($OG_Marker)
010D: set_player $PLAYER_CHAR Wanted_level_to 0
model.Destroy(#FAM1)
model.Destroy(#FAM3)
Model.Destroy(#AK47)
Model.Destroy(#TEC9)
Model.Destroy(#SPECIAL01)
Model.Destroy(#SPECIAL02)
Model.Destroy(#SPECIAL03)
mission_cleanup
return

Wat doe ik nog fout? =[

Geplaatst:
comment_889392

Als je wilt dat er mensen naar kijken zul je toch echt met een wat betere probleem omschrijving moeten komen:

  • Wat gebeurt er?
  • Wanneer gebeurt het?
  • Wat heb je zelf al gedaan om het probleem op te sporen ?

Geplaatst:
comment_889402
Als je wilt dat er mensen naar kijken zul je toch echt met een wat betere probleem omschrijving moeten komen:

  • Wat gebeurt er?
  • Wanneer gebeurt het?
  • Wat heb je zelf al gedaan om het probleem op te sporen ?

  • Het spel loopt vast
  • Als ik in de sphere/marker $MARKER_BEGIN loop.
  • Ik heb de hele code een paar keer doorgelezen en vergeleken met de code in de tutorial, ik heb de tips die me hier zijn gegeven overgenomen in het stukje code.

Ik zie de fout niet staan, heeft het er iets mee te maken dat ik de actors op een verkeerde manier/ plek zeg wie wie wil doodmaken of kan je geen special actors laden zoals ik het doe als je op deze wijze werkt? Of ben ik simpelweg een wait vergeten?

Geplaatst:
comment_889605

Ik denk dat ik het weet, je hebt ryder, og loc, en sweet staan als ped types 38, 45, 34. Maar dat kan volgens mij helemaal niet, omdat er maar 31 ped types bestaan.

PS:

In sanny builder staat wat alle ped types zijn. Bij: Help --> Scm documentatie --> Gta Sa --> Pedtypes

Geplaatst:
comment_889611
Ik denk dat ik het weet, je hebt ryder, og loc, en sweet staan als ped types 38, 45, 34. Maar dat kan volgens mij helemaal niet, omdat er maar 31 ped types bestaan.

PS:

In sanny builder staat wat alle ped types zijn. Bij: Help --> Scm documentatie --> Gta Sa --> Pedtypes

Je moet dan gewoon de special actors loaden als 1, 2 en 3. Het maakt hierbij niet uit welke actor 1, 2 of 3 is. Als je nu een actor wilt laden, bijvoorbeeld degene die je als nummer 1 hebt gezet, dan laad je een actor met #SPECIAL1. Als je nummer 2 wilt hebben creeér je een actor met #SPECIAL2 enzovoort. Het nummer waarmee je hem geladen hebt bepaald dus welk nummer er achter de #SPECIAL(><) komt, op de plek van (><).

Ik hoop dat je m'n uitleg begrijpt, en mijn excuses dat ik de vorige keer foute informatie gaf, dit was niet echt een slimme actie van mij.

Greetz,

Black Force

Geplaatst:
comment_889699

Ik ben al blij dat je helpt joh, maar tjerk ik snapte inderdaad niet helemaal welk nummer ik bij het dikgedrukte in moest vullen: $Ryder = actor.Create(38, #SPECIAL01, 2459.735, -1687.654, 13.53583) Dutchy3010 had bij haar tutorial Catalina gebruikt met een bepaald nummer en ik heb gewoon maar doorgeteld naar beneden, ik snapte niet helemaal hoe het werkte. In de SCM documentatie zie ik niks over special actors Ped_Nummers :N

Geplaatst:
comment_889705

Voor het maken van een Special Actor die spawnt, moet je de volgende code gebruiken:

009A: $ACTOR_SWEET = create_actor_pedtype 4 model #SPECIAL01 at 2511.7563 -1668.6959 14.3778

Dit is een stukje uit mijn code. De eerste is de opcode, daarna moet je hem even verder invullen en de variabeles zelf invullen, #SPECIAL01 is het slot van de actor (dus als je ééntje wilt createn op slot 2 moet je de 1 in 2 veranderen) en daarna, vanzelfsprekend, de coördinaten van de actor.

Geplaatst:
comment_889707

Ik heb hier het lijstje voor je gekopieerd:

0 PLAYER1

1 PLAYER2

2 PLAYER_NETWORK

3 PLAYER_UNUSED

4 CIVMALE

5 CIVFEMALE

6 COP

7 GANG1 (Ballas)

8 GANG2 (Grove Street Families)

9 GANG3 (Los Santos Vagos)

10 GANG4 (San Fierro Rifa)

11 GANG5 (Da Nang Boys)

12 GANG6 (Mafia)

13 GANG7 (Mountain Cloud Triad)

14 GANG8 (Varrio Los Aztecas)

15 GANG9 (unused)

16 GANG10 (unused)

17 DEALER

18 MEDIC

19 FIREMAN

20 CRIMINAL

21 BUM*

22 PROSTITUTE

23 SPECIAL

24 MISSION1

25 MISSION2

26 MISSION3

27 MISSION4

28 MISSION5

29 MISSION6

30 MISSION7

31 MISSION8

PS:

En Black Force... dat snap ik natuurlijk ook wel. Maar ped types is iets heel anders.

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.

Gast
Op dit onderwerp reageren...

Recent actief 0

  • Er zijn hier geen geregistreerde gebruikers aanwezig.