Counterclockwise
Counterclockwise
Hallo erst mal und Danke an Zimondis für das sehr schöne Programm.
Im Befehl
transformobj (Objekt ; Typ; -Werte ; Zeit in Millsekunden ; smooth; counterclockwise )
ist noch das Minus Zeichen vor der Gradzahl zu beachten.
Wir hatten erst Problem damit, der Freund hat es dann aber entdeckt.
Wir, das sind ein guter Freund und ich, schreiben jetzt ein Spiel.
Wir haben Ahnung von Programmieren; also schon mal ein funktionierendes
Kurzprogramm geschrieben.
Wir haben Ahnung von Grafik, mit Photoshop.
Filme machen wir mit Windows Movie Maker und Open Toonz.
Ton mit Audacity.
Die Dokumentation mit Libre Office 6.2.
Das Spiel mit dem Point & Click DK.
Die bitten das Programm zu erweitern kommen später.
Im Befehl
transformobj (Objekt ; Typ; -Werte ; Zeit in Millsekunden ; smooth; counterclockwise )
ist noch das Minus Zeichen vor der Gradzahl zu beachten.
Wir hatten erst Problem damit, der Freund hat es dann aber entdeckt.
Wir, das sind ein guter Freund und ich, schreiben jetzt ein Spiel.
Wir haben Ahnung von Programmieren; also schon mal ein funktionierendes
Kurzprogramm geschrieben.
Wir haben Ahnung von Grafik, mit Photoshop.
Filme machen wir mit Windows Movie Maker und Open Toonz.
Ton mit Audacity.
Die Dokumentation mit Libre Office 6.2.
Das Spiel mit dem Point & Click DK.
Die bitten das Programm zu erweitern kommen später.
Re: Counterclockwise
Zimond heisst Er Tschuldigung.
Re: Counterclockwise
kannst du mal einen Auszug aus deinem Skript zeigen? Das Minus sollte nicht unbedingt nötig sein damit sich das Objekt gegen den Uhrzeigersinn dreht. Der Winkelwert sollte (ich sage deshalb sollte weil ich mir bei den Sachen nicht mehr ganz sicher bin) ein absoluter Wert sein, also immer von 0-360. Daher gibt man auch an ob es sich im oder gegen den Uhrzeigersinn drehen soll. Ein negativer Wert würde dann hoch oder runtergerechnet werden. -2 zB wäre dann einfach 358. Also wieder einmal rum.
Re: Counterclockwise
Klar doch.-)
{transformobj (Galaxie ;rotate ;-360 ;4500 ;100 ;counterclockwise )}
Ich hatte die Anweisung so in ein Script gesteckt um mit "Function" eine Endlosschleife zu erzeugen.
Es ist mir noch nicht gelungen.
Ich gucke gleichzeitig bei Textscene und verstehe nicht wie das Script richtig funktioniert.
Wie sind Level und Row zu bedienen? Und kann ich dort Text z.B. im Telegrammstil ausgeben?
Die Geschwindigkeit bestimmen, mit der er ausgegeben wird?
{transformobj (Galaxie ;rotate ;-360 ;4500 ;100 ;counterclockwise )}
Ich hatte die Anweisung so in ein Script gesteckt um mit "Function" eine Endlosschleife zu erzeugen.
Es ist mir noch nicht gelungen.
Ich gucke gleichzeitig bei Textscene und verstehe nicht wie das Script richtig funktioniert.
Wie sind Level und Row zu bedienen? Und kann ich dort Text z.B. im Telegrammstil ausgeben?
Die Geschwindigkeit bestimmen, mit der er ausgegeben wird?
Re: Counterclockwise
Wegen dem rotate muss ich zu Hause noch mal in die Demo gucken (kannst du natürlich auch, die findest du unter examples auf der Homepage Transform Demo)
Bei einer Textszene gibt es maximal neun Level mit jeweils 9 Zeilen (row) die aktiv oder inaktiv sein. Level 1 ist das Hauptmenü während die weiteren Untermenüs darstellen. Was genau meinst du mit Telegrammstil? Die Textgeschwindigkeit regelt der Befehl Textspeed () oder die Länge der Sounddatei bei Sprachausgabe.
Bei einer Textszene gibt es maximal neun Level mit jeweils 9 Zeilen (row) die aktiv oder inaktiv sein. Level 1 ist das Hauptmenü während die weiteren Untermenüs darstellen. Was genau meinst du mit Telegrammstil? Die Textgeschwindigkeit regelt der Befehl Textspeed () oder die Länge der Sounddatei bei Sprachausgabe.
Re: Counterclockwise
Textspeed in den Zusammenhang, werde ich ausprobieren.
Wie setze ich ein Row aktiv bzw. inaktiv.
Ich beginne zu verstehen, wie das mit der Textscene funktioniert.
Ich habe ein weiteres Problem
Script IDS
setnum (bn ;[bn]+[an])
if_num (ID ;[bn] )
{
textout ([bn] ;Raum [bn] ;7 ;[ty] ;1 ;0 ;0 ;0 )
setnum (ty ;[ty]+[v])
}
bn=0 am Anfang,an=1, v=33
Ich habe 12 Räume deren ID Nummer ich abfragen möchte
Raum Script Index
on (enter)
{
setnum (v ;33 )
setnum (an ;1 )
setnum (bn ;0 )
setnum (ty ;10 )
function (IDS ;12)
}
Wo denke ich falsch?
Wie setze ich ein Row aktiv bzw. inaktiv.
Ich beginne zu verstehen, wie das mit der Textscene funktioniert.
Ich habe ein weiteres Problem
Script IDS
setnum (bn ;[bn]+[an])
if_num (ID ;[bn] )
{
textout ([bn] ;Raum [bn] ;7 ;[ty] ;1 ;0 ;0 ;0 )
setnum (ty ;[ty]+[v])
}
bn=0 am Anfang,an=1, v=33
Ich habe 12 Räume deren ID Nummer ich abfragen möchte
Raum Script Index
on (enter)
{
setnum (v ;33 )
setnum (an ;1 )
setnum (bn ;0 )
setnum (ty ;10 )
function (IDS ;12)
}
Wo denke ich falsch?
Re: Counterclockwise
Ich habe das jetzt ohne Variablen geregelt.
Wenn ich ganz fertig bin, werde ich das hier vorstellen.
Ich danke noch einmal für das Programm und für Deine Mühe.-)
Ich habe jetzt erst kapiert, wofür die Textscene gut ist.
Wenn ich ganz fertig bin, werde ich das hier vorstellen.
Ich danke noch einmal für das Programm und für Deine Mühe.-)
Ich habe jetzt erst kapiert, wofür die Textscene gut ist.
Re: Counterclockwise
Ich verstehe denn Sinn der Funktion nicht ganz. Technisch müsste die funktionieren. Sie gibt entweder eine Textoutzeile (Wenn ID zwischen 1 und 12 ist) oder eben gar keine. Aber, was ist der Sinn dahinter? Der Wert der in ID ist ändert sich doch nicht beim 12x durchlaufen der Funktion. Da kann doch gar nicht mehr als eine Zeile bei rauskommen.
textout (1 ;Raum [ID] ;7 ;10 ;1 ;0 ;0 ;0 )
hätte also exakt den gleichen Effekt.
textout (1 ;Raum [ID] ;7 ;10 ;1 ;0 ;0 ;0 )
hätte also exakt den gleichen Effekt.
Re: Counterclockwise
Vielleicht war da mein Denkfehler, bei der textout funktion.
Wie geschrieben habe ich mein Problem so gelöst;
if_bool (RIDa ;true )
{
textout (A ;A ;7 ;10 ;1 ;0 ;0 ;0 )
setnum (IDn ;1 )
setobj (Knopf1; 1 )
}
if_bool (RIDa ;false )
{
setobj (Knopf1; 0 )
}
Raum1 enthält
on_enter
setbool (RIDa ;true )
Bei allen betretenen Räumen; wird RID auf true gesetzt.
Der Knopf erscheint nur wenn der dazugehörige Raum schon betreten war.--
--
Mein grosses Problem ist immer noch
transformobj (Galaxie ;rotate ;-360 ;4500 ;100 ;counterclockwise )
egal wie rum ich drehe, nach einer Drehung ist Schluss. Wir haben auch
versucht die Gradzahl mit -720 anzugeben um 2 Drehungen zu schaffen,
leider ohne Erfolg.
Wie geschrieben habe ich mein Problem so gelöst;
if_bool (RIDa ;true )
{
textout (A ;A ;7 ;10 ;1 ;0 ;0 ;0 )
setnum (IDn ;1 )
setobj (Knopf1; 1 )
}
if_bool (RIDa ;false )
{
setobj (Knopf1; 0 )
}
Raum1 enthält
on_enter
setbool (RIDa ;true )
Bei allen betretenen Räumen; wird RID auf true gesetzt.
Der Knopf erscheint nur wenn der dazugehörige Raum schon betreten war.--
--
Mein grosses Problem ist immer noch
transformobj (Galaxie ;rotate ;-360 ;4500 ;100 ;counterclockwise )
egal wie rum ich drehe, nach einer Drehung ist Schluss. Wir haben auch
versucht die Gradzahl mit -720 anzugeben um 2 Drehungen zu schaffen,
leider ohne Erfolg.
Re: Counterclockwise
Der Indexraum in dem die RID abgefragt wird muss noch
am Ende, bei
on_exit
hidealltext ()
setobj (Knopf1; 1 )
bekommen, damit es beim nächsten betreten noch funktioniert.
am Ende, bei
on_exit
hidealltext ()
setobj (Knopf1; 1 )
bekommen, damit es beim nächsten betreten noch funktioniert.
Re: Counterclockwise
Ach du möchtest eine dauerhafte Drehung haben? Das musst du über ein loopendes Skript machen und die Position immer anpassen.
setnum (galaxy_angle ; 0)
function (rotate_galaxy ; *)
So wird das Objekt gegen den Uhrzeigersinn gedreht mit einer Geschwindigkeit von ca. 7 Sekunden pro Umdrehung.
setnum (galaxy_angle ; 0)
function (rotate_galaxy ; *)
Code: Select all
setnum (galaxy_angle ; -1)
if_num (galaxy_angle ; <0)
setnum (galaxy_angle ; 360)
transformobj (Galaxie ;rotate ;[galaxy_angle] ; 0)
Re: Counterclockwise
Danke für den Code. Jetzt versteh ich aber nicht mehr, wie drehen im Uhrzeigersinn
funktioniert. Ohne Counterclockwise und wo kommen die 7 Sekunden her?
funktioniert. Ohne Counterclockwise und wo kommen die 7 Sekunden her?
Re: Counterclockwise
Der Code ist sone art Easter Egg
den Du; Zimond mir da mitteilst.
Steht nicht in der Referenz.-)
den Du; Zimond mir da mitteilst.
Steht nicht in der Referenz.-)
Re: Counterclockwise
Die Referenz enthält ja nur alle Befehle, nicht alle möglichen Ideen wie man sie benutzen kann. Deswegen empfehle ich noch mal die Transform Demo für einige Beispiele und natürlich das Demo Adventure als Projekt datei.
Um im Uhrzeigersinn zu drehen musst du halt +1 statt -1 verwenden.
Die ca 7 Sekunden kommen daher das ein loopendes Skript 50 mal pro Sekunde ausgeführt wird. Bei einer Drehung von 1 Grad pro Durchgang ergibt das 360 / 50 also ca 7 Sekunden für eine Drehung von 360 Grad.
Um im Uhrzeigersinn zu drehen musst du halt +1 statt -1 verwenden.
Code: Select all
setnum (galaxy_angle ; +1)
if_num (galaxy_angle ; >360)
setnum (galaxy_angle ; 0)
Re: Counterclockwise
Vielen Dank.-)
Meine Fragen, rund um Counterclockwise sind damit beendet.
Meine Fragen, rund um Counterclockwise sind damit beendet.