C4Script-Tutorial/6. Beispiele
Aus Clonk Wiki
Die besten Beispiele findet man natürlich in den Originalobjekten und guten Objekten und Szenarien von Spielern. Die übliche Vorgehensweise beim Erstellen eines neuen Spielelements ist das Kopieren eines vorhandenen, ähnlichen, gefolgt von einer Änderung der ID und schrittweiser Änderung des Elements, bis es das gewünschte Verhalten zeigt. Die Doku hat auch einige Beispiele, um die Benutzung der verschiedenen Funktionen zu verdeutlichen. Manchmal kann es auch hilfreich sein, eine Kopie der Objects.c4d zu zerlegen und im Volltext nach einer bestimmten Funktion zu durchsuchen. Wegen dieser Möglichkeiten hat sich bisher noch niemand die Mühe gemacht, hier nette Beispiele anzuführen.
Szenarioscripte
func
Initialize()
{
ScriptGo(1);
}
func
Script40()
{
CreateObject(GOLD,107,70);
CreateObject(GOLD,9,13);
}
func
Script250()
{
CreateObject(GOLD,107,70);
CreateObject(GOLD,9,13);
goto(50);
}
Was passiert: Nach 400 Frames (10 Frames = 1 Script; 35 Frames ~ 1 Sekunde) wird jeweils ein Goldklumpen an den Stellen 107/70 und 9/13 erstellt. Nach 2500 Frames passiert das Gleiche und der Scriptzähler wird mit dem Befehl "goto" auf 50 zurück gesetzt.
Teilscripte
- protected
func
Death() - {
CastParticles("MSpark",
200,
50,
0,
0,
100,
200,
RGBa(24,99,236,0),
RGBa(24,99,236,0));
LaunchLightning(Random(LandscapeWidth()),
0,
-20,
41,
+5,
15);
LaunchLightning(Random(LandscapeWidth()),
0,
-20,
41,
+5,
15);
LaunchLightning(Random(LandscapeWidth()),
0,
-20,
41,
+5,
15);
LaunchLightning(Random(LandscapeWidth()),
0,
-20,
41,
+5,
15);
Sound("Electric");
return
true;- }
Was passiert: Stirbt das Objekt, so werden 200 Partikel in der Form "MSpark" mit der Geschwindigkeit 50 verschleudert, und zwar mit den Farben "24, 99, 236, 0" bis "24, 99, 236, 0" (Rotanteil, Grünanteil, Blauanteil, Alpha (= Durchsichtigkeit)). Danach schießen 4 Blitze vom Himmel und der Sound "Electric" wird abgespielt.