Jump to content

Teleports maken


Recommended Posts

Geplaatst:

Hoe maak ik teleports via de scm?

En dan bedoel ik van die kleine rode spheres (die je ook ziet bij die hotdog-kraampjes) en geen enexen (van die gele omgedraaide piramides).

Dus als je in een sphere staat dat je dan ergens anders naar toe wordt geteleporteerd.

Geplaatst:

Zo moeilijk is dat helemaal niet... ;) Gewoon een sphere maken, ik neem aan dat je wel weet hoe dat moet, en vervolgens de actor ergens anders spawnen. Dat kan met behulp van de volgende opcode:

Actor.PutAt($PLAYER_ACTOR, 213.9563, 1879.7477, 13.1406)

De laatste drie getallen zijn, vanzelfsprekend, de coördinaten.

Geplaatst:

Bedankt, maar ik word direct naar de plek geteleporteerd.

:TELE
thread 'TELE'
03BC: 1@ = create_sphere_at 2463.84 -1658.92 12.3 radius 1.0
00EC: actor $PLAYER_ACTOR 0 near_point 2463.84 -1658.92 12.3 radius 1.0 1.0
Actor.PutAt($PLAYER_ACTOR, 213.9563, 1879.7477, 13.1406)
end_thread

Geplaatst:

Dat is vrij logisch, aangezien je nergens aangeeft dat het een voorwaarde is. Hier staat: Creeer een sphere, vervolgens een regeltje die niet eens afzonderlijk kan, omdat het nergens op slaat zo, en dan verplaats je de actor. Wat je dus moet doen, is een lus maken, die wacht tot de actor werkelijk op die plaats komt. Anders gaat hij snel over die ene "nutteloze" opcode heen, dus heb je niet de tijd om daar naartoe te gaan (onthoudt dat het vliegensvlug afgelezen wordt).

Dus, wat je moet doen, is een repeat-wait-until structuur, of een voorwaardelijke jump structuur maken (in de vorm van een lusje). Dus je kunt kiezen, óf:

:TELE
thread 'TELE'
03BC: 1@ = create_sphere_at 2463.84 -1658.92 12.3 radius 1.0

:TELE2
wait 0 ms
if
00EC: actor $PLAYER_ACTOR 0 near_point 2463.84 -1658.92 12.3 radius 1.0 1.0
jf @TELE2
Actor.PutAt($PLAYER_ACTOR, 213.9563, 1879.7477, 13.1406)
end_thread

Hier wacht hij tot aan de voorwaarde, namelijk dat de actor op dat punt is, is voldaan. Is dat niet het geval, dan springt hij terug naar het begin van het label. Vergeet de wait niet. Je kunt niet terugspringen naar "TELE", omdat hij dan ook het eerste gedeelte van het stukje code herhaald, waardoor er bijvoorbeeld heel vaak een sphere op die plaats wordt aangemaakt.

:TELE
thread 'TELE'
03BC: 1@ = create_sphere_at 2463.84 -1658.92 12.3 radius 1.0
repeat
wait 0 ms
until 00EC: actor $PLAYER_ACTOR 0 near_point 2463.84 -1658.92 12.3 radius 1.0 1.0
Actor.PutAt($PLAYER_ACTOR, 213.9563, 1879.7477, 13.1406)
end_thread

Dit is de andere manier.

Geplaatst: (bewerkt)

Het doet het, alleen de marker verdwijnt niet als ik er in ben geweest. :-(

03BC: 0@ = create_sphere_at 144.83 1965.0 17.87 radius 1.0
repeat
wait 0 ms
until 00EC: actor $PLAYER_ACTOR 0 near_point 144.83 1965.0 17.87 radius 1.0 1.0
Marker.Disable(0@)

wat is er fout? Ik denk zelf aan Marker.Disable.

Want ik kon er geen vinden voor de sphere.

EDIT: De Codebox deed het niet goed

Bewerkt: door Marioleo69
Geplaatst:
Je moet deze gebruiken:

03BD: destroy_sphere 149@

Bedankt hij doet het, maar heb jij soms een ander opcode.txt?

Bij mij staat dit in de opcode search tool van SB:

03BD: delete_POI_cylinder 149@ //aka mission marker

Geplaatst:

nou, die search tool laat eigelijk de opcode.txt zien.

Als je alles uit die txt wist.

Zie je ook niks meer in de search tool.

Geplaatst:

Dat snap ik. Maar ik wist niet of je die TXT gebruikte, of een andere. Gebruik de opcode search tool maar, ik geloof niet dat die bij jou anders is dan bij mij.

Geplaatst:

Ok, maar het blijft raar.

Zou je hem mischien kunnen uploaden?

hij staat in \Sanny Builder 3\data\sa

dan zie je een bestand opcodes.

Bij mij is hij 102 kb groot.

Geplaatst:

Bedankt voor het uploaden. Ik heb gekeken.

Hij is hetzelfde.

Maar hoe kom jij dan aan die andere zin achter die opcode?

Waar haal je die vandaan?

Geplaatst:
Bedankt voor het uploaden. Ik heb gekeken.

Hij is hetzelfde.

Maar hoe kom jij dan aan die andere zin achter die opcode?

Waar haal je die vandaan?

Die staat in de opcodes.txt die ik net heb geupload..

Als je mijn opcodes.txt opent en dan CTRL + F en dan 03BD zoekt vind je dan niet dit zinnetje?:

03BD: destroy_sphere 149@

(In mijn opcodes.txt he, die is ook maar iets van 94 kb dus jij hebt een hele andere lijkt me :S)

Geplaatst:

IK heb nog gekeken en ja ze zijn anders. Die van jouw is het zelfde als die dan van Dutchy1030.

Hier is die van mij.

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