serthy
Codemeister
Dabei seit: 29.07.2010
Beiträge: 628
|
|
wenn syntax Fehler kommen, bitte melden
Code angehängt. Klicke hier zum Ein-/Ausblenden
code: |
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
51:
52:
53:
54:
55:
56:
57:
58:
59:
60:
61:
62:
63:
64:
65:
66:
|
/*========================================
Rotierende Dinge
ersetze rotateRoll durch:
rotateYaw oder rotatePitch
dadurch ändern sich die Drehachsen
speed:
zeit in der sich die Scheibe einmal um sich selbst dreht
-die erste Funktion ist für eine einzelne Scheibe
-key:targetname value:rotor
-die zweite für viele scheiben mit gleichem targetname
-key:targetname value:rotor
-alle Scheiben drehen sich gleich schnell und in gleicher Richtung
-die Wartezeit von speed - 0.1 nicht ändern oder in waittill( "rotatedone" ) ändern, sonst ruckelt es
du kannst auch eine neue Funktion nehmen: rotateTo( angle , time )
(angle ist dabei ein Vektor der so aussieht: (x,y,z) (Bsp: "rotor rotateTo( ( 360 , 0 , 180 ), 3 );"))
=======================================*/
/*** Funktion 1 ***/
_rotor()
{
speed = 1;
rotor = getent( "rotor" , "targetname" );
while( isdefined( rotor ) )
{
rotor rotateRoll( 360 , speed );
wait speed - 0.1;
}
}
/*** Funktion 2 ***/
_rotor_array()
{
speed = 1;
rotor = getentarray( "rotor" , "targetname" )
for( i = 0 ; i < rotor.size ; i++ )
{
if( isDefined( rotor[i] ) )
rotor[i] thread _rotate( speed );
}
}
_rotate( speed )
{
if( !isDefined( speed ) )
speed = 1;
while( isdefined( self ) )
{
self rotateRoll( 360 , speed );
wait speed - 0.1;
}
}
|
|
|
|
|
|
|
serthy
Codemeister
Dabei seit: 29.07.2010
Beiträge: 628
|
|
http://www.fileuploadx.de/354759
die funhouse_1 hab ich nur berichtigt
die funhouse_2 hab ich so gemacht, dass es gut aussieht
also dein fehler war du hast die pendel alle nacheinander aufgerufen und davor noch die tür gehabt
es war so bei dir:
door_rotate();
pendel();
pendel2();
pendel3();
.
.
.
das bedeutet das du erst die tür aufrufst und die dann abgearbeitet wird, wenn die fertig ist dann erst pendel(), wenn das fertig ist pendel2() usw.
da aber in der tür und in jedem pendel eine while-schleife drin ist, die unendlich lange geht, kannst du auch genausolange drauf warten bis sich die dinger bewegen =)
also vor solchen dingen die GLEICHZEITIG ablaufen sollen immer ein >thread< davor, dann wird nicht darauf gewartet bis eine funktion fertig ist
thread door_rotate();
thread pendel();
thread pendel2();
thread pendel3();
.
.
.
dann habe ich in der funhouse_2 die winkel geändert (auslenkung) sonst rutscht man runter und ich habe jedem pendel eine unterschiedliche zeit zugewiesen, sonst schwingen die im takt und du kommst nie auf das nächste pendel
dann muss man bei pened 3 und 4 nch von Pitch in Roll umwandeln, sonst schwingen die nicht parallel zur wand, sondern in den raum rein und in die wand
zu den grauen blöcken:
was meinst du? ich hab nur den fahrstuhl gesehen, der wunderbar funktioniert
Dieser Beitrag wurde 1 mal editiert, zum letzten Mal von serthy: 30.07.2011 17:49.
|
|
|
|
|
|
|
Impressum ||Datenschutzerklärung
|