Seite 3 von 4

Re: Boot wie im Trailer

Verfasst: 06.04.2009 18:57
von Superstylin
hab noch ma ne frage zu dem "SCN MQ01BootScript" was ihr hier oben geschrieben habt da muss man ja bestimmt noch paar sachen ins spiel einbauen ,oder ?

wenn ich mir das script so anschau seh ich

MQ01BootPlayerStuhl
MQ01BootPorimStuhlRef
MQ01BootMarker01
MQ01BootMarker05
MQ01BootMarkerPorim02

mmmmh also der stuhl wir woll das teil sein wo man sich dan drausetzen muss das es los geht ^^,aber was is das stuhlRef ? die marker sind bestimmt start und ziel ,oder ?
könnt ihr bitte noch ma erklären was ich wo einbauen muss und ob ich das script auf den stuhl oder das boot machen muss ?

danke schon mal :D

Re: Boot wie im Trailer

Verfasst: 06.04.2009 19:34
von Hoxyd
Hi, ich weiß nicht, wieviel Hintergrundwissen du hast und an welcher Achse dein Boot entlangfahren soll. Daher schwer.
Das ist eigentlich alles was du wissen musst:
Code: Alles auswählen
SCN BewegungScript

Float YAchsePosition
Float YAchse
Float XAchsePosition
Float XAchse
Float ZAchsePosition
Float ZAchse

Short State

Begin GameMode

	if ( State == 1 ) ; Wenn Variable State gleich 1 ist. An der Y Achse verschieben.
		Set YAchsePosition to GetPos Y
		Set YAchse to YachsePosition +10
		SetPos Y Yachse
	endif

	if ( State == 2 )  ; Wenn Variable State gleich 2 ist. An der X Achse verschieben.
		Set XAchsePosition to GetPos X
		Set XAchse to XachsePosition +10
		SetPos X Xachse
	endif

	if ( State == 3 )  ; Wenn Variable State gleich 3 ist. An der Z Achse verschieben.
		Set ZAchsePosition to GetPos Z
		Set ZAchse to ZachsePosition +10
		SetPos Z Zachse
	endif

End
Dieses Script muss auf jedem Objekt liegen das du bewegen willst. Den Spieler und alle Objekte.
Wenn jetzt die Variable State 0, 4 oder größer ist passiert nix, steht das Boot also still.

Re: Boot wie im Trailer

Verfasst: 07.04.2009 10:44
von Superstylin
ja schon das es fährt schaf ich schon aber nicht das es stehn bleibt das ist eher mein prob ... :(

Re: Boot wie im Trailer

Verfasst: 07.04.2009 10:57
von Hoxyd
Du brauchst nen Marker. Einen xMarker am besten. Den findest du unter Static xMarker. Gib dem xMarker eine RefID: "BootStopMarkerRef" oder so. Dem Boot gibst du die RefID: "BootRef"
Dann füge deinem Script hinzu:
Code: Alles auswählen
if ( State == 1 )
if ( "BootRef".GetDistance, "BootStopMarkerRef" <= 500 )
Set State to 4
endif
endif

Re: Boot wie im Trailer

Verfasst: 07.04.2009 11:45
von Superstylin
ich verstehs nich kannst du mir plz das script machen ...bitte

also das es losgeht kurz nachdem ich aufgestiegen bin und beim marker stehn bleibt ... und viellecht das ich erst am ziel absteigen kann ...
damit dus ma siehst hab ich nen screen angehängt ... (der stuhl und is nur zum test das bau ich nachher in nen andren mod ein ^^)

Re: Boot wie im Trailer

Verfasst: 07.04.2009 11:57
von Hoxyd
Hier:
Code: Alles auswählen
SCN BootBewegung

Float XAchsePosition
Float XAchse
Short State

Begin OnActivate
   if ( Player.IsCurrentFurnitureRef "001BootRef" == 1)
      Set State to 1
   endif
End

Begin GamMode
if ( State == 1 )
      Set XAchsePosition to GetPos X
      Set XAchse to XachsePosition +5
      SetPos X Xachse
endif

if ( State == 1 )
if ( "001BootRef".GetDistance, "001BootStopMarkerRef" <= 200 )
Set State to -1
endif
endif

End

Re: Boot wie im Trailer

Verfasst: 07.04.2009 12:08
von Superstylin
mmmmh da kommt ein fehler

Non-persistent reference "001BootRef" cannot be used in a script

was muss ich machen ?

Re: Boot wie im Trailer

Verfasst: 07.04.2009 12:39
von Hoxyd
In dem Fenster von deinem Stuhl das Häkchen bei Persistend Reference rein setzen.

Re: Boot wie im Trailer

Verfasst: 07.04.2009 12:53
von Superstylin
jo ok, das script geht :D

aber ingame kann ich mich nich hinstezen :|

Re: Boot wie im Trailer

Verfasst: 07.04.2009 13:34
von Hoxyd
Jo, du musst normalerweise auch noch ein Script auf den Spieler legen, damit der sich mit bewegt. Probier mal das selbe Script auf den Spieler zu legen.
Code: Alles auswählen
SCN BootBewegung

Float XAchsePosition
Float XAchse
Float Timer

Short State

Begin OnActivate
   if ( Player.IsCurrentFurnitureRef "001BootRef" == 1)
      Set State to 1
   endif
End

Begin GamMode
if ( State == 1 )
DisablePlayerControls
Set Timer to Timer + GetSecondsPassed
if Timer >= 2 )
Set State to 2
Set Timer to -1
endif
endif

if ( State == 2 )
      Set XAchsePosition to GetPos X
      Set XAchse to XachsePosition +5
      SetPos X Xachse
endif

if ( State == 2 )
if ( "001BootRef".GetDistance, "001BootStopMarkerRef" <= 200 )
EnablePlayerControls
Set State to -1
endif
endif

End