Jump to content

Recommended Posts

Geplaatst: (bewerkt)

Sinds kort ben ik ook aan het SCM-scripten, en ik ben nu ook begonnen met de 'Sniffer Thread' opties. Alles goed, ik loop in de marker. Het scherm vervaagd, de tekst komt in beeld, en vaagt niet meer uit. Die vervaging heb ik toegepast om te achterhalen waar de error zich precies bevindt, en het stukje tussen de fades in geeft dus een error. Echter, ik zie de error niet, wat ik ook probeer.

Misschien dat iemand anders het stukje code vindt? :)

fade 0 1000
wait 1000
//Load Models
Model.Load(#GREENWOO)
Model.Load(#M4)
Model.Load(#BALLAS1)
Model.Load(#BALLAS2)
Model.Load(#BALLAS3)
023C: load_special_actor 'SWEET' as 1 // models 290-299

038B: load_requested_models
//-------------------------------------
:MtBal_LOAD
wait 0 ms
if 
823D:   special_actor 1 loaded
       Model.Available(#GREENWOO)
       Model.Available(#M4)
       Model.Available(#BALLAS1) 
       Model.Available(#BALLAS2)
       Model.Available(#BALLAS3)
jf @MtBal_LOAD
wait 0 ms
jump @MtBal_1

//-------------------------------------
:MtBal_1 
wait 1000
009A: $ACTOR_SWEET = create_actor_pedtype 4 model #SPECIAL01 at 2515.9766 -1672.4954 13.8231
0173: set_actor #SPECIAL01 Z_angle_to 61.2456
$GREENWOOD = Car.Create(#GREENWOO, 2507.7563, -1671.6959, 13.3778 )
036A: put_actor $ACTOR_SWEET in_car $GREENWOOD 
$MARKER_GREENWOOD = Marker.CreateAboveCar($GREENWOOD)
fade 1 1000
wait 1000

Edit@hieronder:

Nope, deze manier werkt wel.. :Y

Bewerkt: door Donwell
Geplaatst:

Ik heb hier niet zo veel verstand van, maar ik denk wel dat er in ieder geval iets moet staan als dit:

if not model #GREENWOO available
jump @ :Model_Load

Geplaatst: (bewerkt)

Probeer eens van:

0173: set_actor #SPECIAL01 Z_angle_to 61.2456

dit te maken:

0173: set_actor $ACTOR_SWEET Z_angle_to 61.2456

Dat lijkt me logischer.

Bewerkt: door tjerk
Geplaatst: (bewerkt)

Nope, helpt ook niet. Overigens heb ik er nog even naar gekeken, maar nu crasht hij niet meer maar blijft hij op een zwarte achtergrond en that's it. Verder niets aangepast, als ik de codes nu nog eens vergelijk. Nu heb ik net, toen ik deze post typte, eventjes de fades weggehaald en ik krijg inderdaad geen error meer. Het probleem nu is, dat er totaal niets laadt, er staat dus niets.

Edit:

Voor de zekerheid ook even de Sniffer Thread erbij gezet, misschien dat ik ergens een foutje heb?

:SNIFFER
thread "SNIFF"
$MARKER_SWEET_HOUSE = Marker.CreateIconAndSphere(38, $X_SWEET_HOUSE, $Y_SWEET_HOUSE, $Z_SWEET_HOUSE)
repeat
 wait $DEFAULT_WAIT_TIME 
 if and
   player.Defined($PLAYER_CHAR)
   $ONMISSION == 0 
 then
   if and
     00FF:   actor $PLAYER_ACTOR sphere 0 in_sphere $X_SWEET_HOUSE $Y_SWEET_HOUSE $Z_SWEET_HOUSE radius 1.0 1.0 2.0 on_foot 
     Player.Controllable($PLAYER_CHAR)
     $MISSIONS_PASSED == 0
   then
     $ONMISSION = 1
     00BA: show_text_styled GXT 'INTRO_1' time 1000 style 2  // Big Smoke
    start_mission 1  
   end

 end 
until $MISSIONS_PASSED == 1
marker.Disable($MARKER_SWEET_HOUSE)
end_thread

Bewerkt: door Donwell
Geplaatst:
Ik heb hier niet zo veel verstand van, maar ik denk wel dat er in ieder geval iets moet staan als dit:

if not model #GREENWOO available
jump @ :Model_Load

Dit is je reinste onzin... Sowieso kan je nooit een if-jump structuur hebben, want dat bestaat niet. Je kunt een if-then-end structuur hebben, of een if-jf (jump if false) structuur. Daarnaast kan de samenstelling @: ook nooit. Dus ik snap niet waarom je erop reageert, als je er geen kaas van gegeten hebt, zo worden mensen alleen maar in de war gemaakt.

Dan over tot het onderwerp van dit topic. Donwell heeft mij op MSN de hele code gestuurd, en daar ga ik dan ook vanuit. Ik weet niet in hoeverre die code hierboven ook staat... In ieder geval, vier fouten/foutjes:

  • Allereerst, wat Tjerk ook al gezegd heeft, als je eenmaal een actor gecreeerd hebt moet je nagenoeg altijd de "naam" (variabele) daarvan gebruiken. In de code die je stuurde naar mij moet het dus worden:
    Actor.Angle($ACTOR_SWEET) = 61.0


  • Ten tweede, het gaat over dezelfde regel als hierboven. Dit is een opcode die werkt met floating-point values. Zie deze tutorial voor meer informatie over wat voor soort value het is. In ieder geval, ik weet niet óf hij hierop zou afslaan, maar zorg dat je 61.0 hebt en geen 61.
  • Dan nu tot het "grootste" probleem, waardoor het niet werkte. Jij hebt in je code staan:
    823D:   special_actor 1 loaded


    Maar dit klopt helemaal niet! 823D is namelijk special_actor 1 NOT loaded. Dat laden gaat heel snel, en dat terwijl je in feiten zegt: je mag alleen door als de special actor NIET is geladen. met andere woorden, je mag dus nooit door. Gebruik dus de opcode:

    023D:   special_actor 1 loaded


  • En als vierde opmerking, je bent ergens een wait vergeten, namelijk:
    :MtBal_1a
    if
    0448: actor $PLAYER_ACTOR in_car $GREENWOOD
    jf @MtBal_1a


Hopelijk werkt hij dan wel goed, wie weet zijn er nog wel meer foutjes, maar toen ik merkte dat je een wait was vergeten heb ik SA snel maar even afgesloten (dus kon ik niet verder testen) :puh:...

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...

×   Je hebt text geplaatst met opmaak.   Opmaak verwijderen

  Only 75 emoji are allowed.

×   Je link is automatisch ingevoegd.   In plaats daarvan weergeven als link

×   Je vorige bewerkingen zijn hersteld.   Alles verwijderen

×   You cannot paste images directly. Upload or insert images from URL.

  • Recent actief   0 leden

    • Er zijn hier geen geregistreerde gebruikers aanwezig.
×
×
  • Create New...