Jump to content

Simpele actor spawn = sa crash.


Recommended Posts

Geplaatst:

Ik probeer nu een keuzemenuutje te maken, als iemand in een marker stapt opent dit zich automatisch en dan krijgt hij de keuze 'JA' of 'NEE'. En als het 'NEE' is sluit het venster en als het 'JA' is vervolgt de missie zich. Maar ik heb geen idee hoe ik doet moet aanpakken.

Wel had ik al door dat ik gebruik moest maken van de volgende codes, maar verder kwam ik ook niet.

08D4: $10424 = create_panel_with_title 'UPGRADE' position 29.0 145.0 width 93.0 columns 2 interactive 0 background 1 alignment 1  // Upgrades

:CARMOD_24115
08D6: set_panel $10424 column 0 alignment 1 
08DB: set_panel $10424 column 0 header 'UPGRADE' data $2450($10412,12s) 'DUMMY' 'DUMMY' 'DUMMY' 'DUMMY' 'DUMMY' 'DUMMY' 'DUMMY' 'DUMMY' 'DUMMY' 'DUMMY' 'DUMMY'  // Upgrades

  • Reacties 89
  • Created
  • Laatste reactie

Top Posters In This Topic

  • Bierbuikje

    40

  • Dutchy3010

    32

  • Beagle

    8

  • Crypteq

    3

Top Posters In This Topic

Posted Images

Geplaatst:

Ik snap er niets van. :(

Eerst komt dit:

0512:  show_permanent_text_box 'CLOTHA'

Dat valt nog te begrijpen.

Dan plaatst hij dit erachteraan:

08D4: $MENU = create_panel_with_title 'DUMMY' position 29.0 145.0 width 220.0 columns 1 interactive 1 background 1 alignment 1

Dit snap ik niet want hier wordt een heel nieuw tekstblokje geladen. Wat niets te maken heeft met de vorige.

Dan komt dit erachteraan:

08DB:  set_panel $MENU column 0 header 'DUMMY' data 'DUMMY' 'DUMMY' 'DUMMY'  'DUMMY' 'DUMMY' 'DUMMY' 'DUMMY' 'DUMMY' 'DUMMY' 'DUMMY' 'DUMMY' 'DUMMY'

Dat valt nog te begrijpen.

Maar nu komen we hier:

gosub @MENU_30

Er wordt ineens in het wilde weg naar MENU_30 gesprongen die nergens te bekennen is.

Dan komt dit:

0871: init_jump_table $ROW total_jumps 16  default_jump 0 @MENU_8 jumps 0 @MENU_436 1 @MENU_443 2 @MENU_450 3  @MENU_457 4 @MENU_464 5 @MENU_471 6 @MENU_478
	 0872:  jump_table_jumps 7 @MENU_485 8 @MENU_492 9 @MENU_499 10 @MENU_506 11  @MENU_513 12 @MENU_513 13 @MENU_513 14 @MENU_513 15 @MENU_513

Maar deze snap ik nog wel met wat erachter aan komt.

Geplaatst:

Ik heb een plaatje gemaakt om het te verduidelijken in de rest van mijn verhaal. Het is het "Main Panel" van Design Your Own Mission:

post-33831-1236984747_thumb.jpg

08D4: $MENU = create_panel_with_title 'DUMMY' position 29.0 145.0 width 220.0 columns 1 
interactive 1 background 1 alignment 1

08DB:  set_panel $MENU column 0 header 'DUMMY' data 'DUMMY' 'DUMMY' 'DUMMY'  'DUMMY' 
'DUMMY' 'DUMMY' 'DUMMY' 'DUMMY' 'DUMMY' 'DUMMY' 'DUMMY' 'DUMMY'

repeat
wait  0 ms
if 00E1:   player 0 pressed_key 15 
then
               08DA: remove_panel $MENU
	03E6: remove text box
	jump @END
end
until 00E1:   player 0 pressed_key 16 

08D7: $choice = panel $MENU active_row
08DA: remove_panel $MENU
03E6: remove text box

if $choice == 0
then
...
end

if $choice == 1
then
... 
end


:END
wait 1000
jump @END

Je moet wel even wat dingen weer aan elkaar plakken, anders werd de pagina uitgerekt. :puh:

Geplaatst: (bewerkt)

Het begint al wat te werken met de missie, maar nu probeer ik de persoon zijn geld op 0 te zetten en dat lukt mij niet. Ik heb het volgende geprobeerd.

$Cash = Player.Money($PLAYER_CHAR)
Player.Money($PLAYER_CHAR) -= $Cash

$Cash = Player.Money($PLAYER_CHAR)
Player.Money($PLAYER_CHAR) += -$Cash

Player.Money($PLAYER_CHAR) = 0

03FE: set_actor $PLAYER_CHAR money 0

En ik snap het verschil niet tussen $PLAYER_ACTOR en $PLAYER_CHAR. :N

Alvast bedankt. :tu:

Bewerkt: door Bierbuikje
Geplaatst:

Als je niet weet wat precies met CHAR moet, en wat met ACTOR, dan moet je gewoon even in de main kijken. Snelste en eenvoudigste oplossing.

Dat eerste werkt niet omdat er geen "-=" bestaat. Dat tweede bestaat niet omdat je niet -$ kan doen. Je moet zorgen dat het getal, de variabele, al een - getal is. Dat derde klopt niet omdat de opcode += is, niet =. Dat is gewoon niet de goede opcode. Volgens mij wordt de vierde alleen gebruikt voor andere actors, met andere woorden, hoeveel ze laten vallen als ze gedood worden. Weet ik niet zeker... Maar in ieder geval, zo zou je het kunnen doen:

$Cash = Player.Money($PLAYER_CHAR)
0010: $Cash *= -1
Player.Money($PLAYER_CHAR) += $Cash

Geplaatst:

Ik maak nu een 1 tegen allen gevecht, maar het plaatsen, intro maken, skills geven lukt allemaal wel, maar ik loop vast op het moment dat het systeem moet wachten totdat iemand dood is. En als diegene dood is dan wil ik dat de stip die op radar staat van hem verdwijnt.

Bijvoorbeeld.

:dood0
wait 0
if
Actor.Dead($PLAYER_ACTOR)
else_jump @dood1
jump @eind_player

:dood1
wait 0
if
Actor.Dead($BALLAS_1)
else_jump @dood2
Marker.Disable($BALLAS_MARKER_1)

:dood2
wait 0
if
Actor.Dead($BALLAS_2)
else_jump @dood2
Marker.Disable($BALLAS_MARKER_2)

enz. enz. enz. tot @dood8

wait 0
if and
Actor.Dead($BALLAS_1)
Actor.Dead($BALLAS_2)
Actor.Dead($BALLAS_3)
Actor.Dead($BALLAS_4)
Actor.Dead($BALLAS_5)
Actor.Dead($BALLAS_6)
Actor.Dead($BALLAS_7)
Actor.Dead($BALLAS_8)
else_jump @dood0
Model.Destroy($BALLAS_1)
Model.Destroy($BALLAS_2)
Model.Destroy($BALLAS_3)
Model.Destroy($BALLAS_4)
Model.Destroy($BALLAS_5)
Model.Destroy($BALLAS_6)
Model.Destroy($BALLAS_7)
Model.Destroy($BALLAS_8)
jump @missie_vervolg

Maar deze code klopt denk ik niet, ik weet ook niet hoe ik dit simpeler moet maken, maar mijn script loopt vast en ik weet gewoon zeker dat het aan deze code ligt, weet iemand wat er fout aan is?

Alvast bedankt. :tu:

Geplaatst:

Dat hierboven is inmiddels gelukt, maar nu heb ik een tweede probleem.

Ik keek even naar de missie 'Puncture Wounds' (@STEAL_5) en ik wou ook wat stingers spawnen in mijn missie. Toen zag ik dat een stinger het volgende object is: #TEMP_STINGER2.

Ik probeerde hem te laden:

Model.Load(#TEMP_STINGER2)

Maar dan krijg ik een fout. De volgende:

Compiled file has no header, so the model name #TEMP_STINGER2 can not be used. Use number ID instead.

Ik weet niet wat hiermee te doen. :N Want het ID nummer kan ik niet vinden, omdat #TEMP_STINGER2 niet in het automatische rijtje staat als je # intikt.

Hoe moet ik dit object laden of is er een ander object voor een stinger?

Alvast bedankt. :tu:

Bierbuikje

Geplaatst: (bewerkt)

Ik zit me suf CTRL+ALT+H te drukken, maar het werkt niet. Is er een bepaalde plaats waar ik dit moet doen of een bepaald moment? Ook heb ik het ID opgezocht in de defined list bovenin de main.scm en daar stond een nummer '237', maar die werkte ook niet. :N

Waar moet je CTRL+ALT+H indrukken? :?

Ik heb het ID nummer gevonden na lang proberen: 2899.

Maar nu had ik wat code's, maar ik denk dat geen van allen werkt en ik snap niet hoe beter te doen. :N

Model.Load(2899)
not Model.Available(2899)
Model.Destroy(2899)
$STINGER = Object.Create(2899, $X, $Y, $Z)

Bewerkt: door Bierbuikje
Geplaatst:
Probeer het eens met de opcode 029B...

Hoe werkt die code en wat doet het? Ik kan hem niet terugvinden in de main.scm en help dus ik weet niet wat ik ermee moet doen. :N

Geplaatst:

Als je wilt weten wat een opcode is, kan je dat op drie manieren doen:

1. In de main.scm kijken.

2. In de opcode search tool kijken.

3. Op F1 drukken terwijl je een deel van de opcode tikt.

Geplaatst: (bewerkt)

Ik heb wat vraagjes over het object #RCBOMB (ID 1636).

1. Hoe laad je #RCBOMB?

Model.Load(#RCBOMB) // = Foutmelding
Model.Load(1636) // = Er gebeurt niets

2. Hoe plaats je #RCBOMB?

03C0: 10@ = actor $PLAYER_ACTOR car // Auto
0400: store_coords_to 1@ 2@ 3@ from_car 10@ with_offset 0.0 0.0 0.0 // Coordinaten auto
029B: $RCBOMB = init_object #RCBOMB at 1@ 2@ 3@ // = Foutmelding
029B: $RCBOMB = init_object 1636 at 1@ 2@ 3@ // = Ik weet niet of deze goed is

en 3. Waar kan ik vinden welke toets de CTRL toets is?

Alvast bedankt. :tu:

Bierbuikje

Bewerkt: door Bierbuikje
Geplaatst: (bewerkt)

Het is ook meestal zo dat als je een object laad maar er niks mee doet je het niet echt merkt :D Dus je het volgende gebruiken:

model.load(1636)

Het model natuurlijk laden, ik ga ervan uit dat het de goede ID is. Ik keek altijd in de Main.SCM helemaal boven aan. Je zoekt met CTRL+F naar het object, en kijk je bij het commentaar // welk ID erachter geschreven stond. De manier van Dutchy werkt natuurlijk beter + sneller.

038B: load_requested_models

Ken je ook al van eerdere scriptjes, het is dus een gewone modellaadscriptje. Zoals je het ook met actors, auto's enzovoort doet.

model.Available(1636)

Is het model beschikbaar? Dit in een normale IF zetten zoals je gewend bent :)

0107: $2706 = create_object 1636 at 1833.36 -1995.45 12.5

Dit is dan de code om je object te plaatsen. $2706 is dan het object, 1636 is het geladen object, en de coördinaten :)

model.Destroy(1636)

Model unloaden.

Je hebt nog heel veel dingen die je met objecten kan doen, schrijf bijvoorbeeld maar eens in SB: "object." en je krijgt een hele lijst. Zoek ook eens met de opcode search tool naar object, veel leuke dingen erbij :)

Hier is nog een voorbeeld. Niet zelf getest of het werkt.

:LADEN
wait 0
model.load(1636)
038B: load_requested_models 

:CHECK
wait 0
if
model.Available(1636)
jf @CHECK
object.Create($object, 1636, 0.0, 0.0, 0.0) // Object creëren
034E: move_object $object to 20.0 20.0 20.0 speed 1.0 1.0 1.0 flag 1 //Voorbeeld: Beweeg het object naar coördinaten X, X en X met snelheid X, X en X
model.Destroy(1636) //En unloaden

Wel zelf nog de end_thread en $CLEO .cs enzo erbij zetten :puh:

De controls kan je vinden door naar Help -> Inhoud -> Cleo3 Code Library -> Virtual Key Codes. Gebruiken met opcode 0AB0.

Bewerkt: door Beagle

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