summaryrefslogtreecommitdiffstats
path: root/TemplePushing.c4s/Misc.c4d
diff options
context:
space:
mode:
Diffstat (limited to 'TemplePushing.c4s/Misc.c4d')
-rw-r--r--TemplePushing.c4s/Misc.c4d/BigRock.c4dbin84215 -> 0 bytes
-rw-r--r--TemplePushing.c4s/Misc.c4d/BigRock.c4d/ActMap.txt36
-rw-r--r--TemplePushing.c4s/Misc.c4d/BigRock.c4d/DefCore.txt20
-rw-r--r--TemplePushing.c4s/Misc.c4d/BigRock.c4d/DescDE.txt1
-rw-r--r--TemplePushing.c4s/Misc.c4d/BigRock.c4d/DescUS.txt1
-rw-r--r--TemplePushing.c4s/Misc.c4d/BigRock.c4d/Graphics.pngbin0 -> 36509 bytes
-rw-r--r--TemplePushing.c4s/Misc.c4d/BigRock.c4d/Names.txt2
-rw-r--r--TemplePushing.c4s/Misc.c4d/BigRock.c4d/Overlay.pngbin0 -> 37708 bytes
-rw-r--r--TemplePushing.c4s/Misc.c4d/BigRock.c4d/RockBreak1.wavbin0 -> 4466 bytes
-rw-r--r--TemplePushing.c4s/Misc.c4d/BigRock.c4d/RockBreak2.wavbin0 -> 5946 bytes
-rw-r--r--TemplePushing.c4s/Misc.c4d/BigRock.c4d/RockBreak3.wavbin0 -> 4465 bytes
-rw-r--r--TemplePushing.c4s/Misc.c4d/BigRock.c4d/Script.c120
12 files changed, 180 insertions, 0 deletions
diff --git a/TemplePushing.c4s/Misc.c4d/BigRock.c4d b/TemplePushing.c4s/Misc.c4d/BigRock.c4d
deleted file mode 100644
index ad3f12a..0000000
--- a/TemplePushing.c4s/Misc.c4d/BigRock.c4d
+++ /dev/null
Binary files differ
diff --git a/TemplePushing.c4s/Misc.c4d/BigRock.c4d/ActMap.txt b/TemplePushing.c4s/Misc.c4d/BigRock.c4d/ActMap.txt
new file mode 100644
index 0000000..7338fec
--- /dev/null
+++ b/TemplePushing.c4s/Misc.c4d/BigRock.c4d/ActMap.txt
@@ -0,0 +1,36 @@
+[Action]
+Name=Rolling1
+Procedure=NONE
+Length=20
+Delay=1
+Facet=0,0,48,48
+NextAction=Rolling1
+InLiquidAction=Sink
+
+[Action]
+Name=Rolling2
+Procedure=NONE
+Length=20
+Delay=2
+Facet=0,0,48,48
+NextAction=Rolling2
+Reverse=1
+InLiquidAction=Sink
+
+[Action]
+Name=Rolling3
+Procedure=NONE
+Length=20
+Delay=2
+Facet=0,0,48,48
+NextAction=Rolling3
+InLiquidAction=Sink
+
+[Action]
+Name=Sink
+Procedure=NONE
+Length=20
+Delay=1
+Facet=0,0,48,48
+NextAction=Sink
+StartCall=DoSink \ No newline at end of file
diff --git a/TemplePushing.c4s/Misc.c4d/BigRock.c4d/DefCore.txt b/TemplePushing.c4s/Misc.c4d/BigRock.c4d/DefCore.txt
new file mode 100644
index 0000000..504d147
--- /dev/null
+++ b/TemplePushing.c4s/Misc.c4d/BigRock.c4d/DefCore.txt
@@ -0,0 +1,20 @@
+[DefCore]
+id=BIRK
+Version=4,9,8
+Name=BigRock
+Category=C4D_Object
+ContactCalls=1
+Width=48
+Height=48
+Offset=-24,-24
+Vertices=4
+VertexX=0,0,22,-22
+VertexY=22,-22
+VertexCNAT=8,4,2,1
+VertexFriction=100,100,100,100
+Mass=10
+Components=RCK2=5
+Picture=0,0,48,48
+StretchGrowth=1
+IncompleteActivity=1
+ColorByOwner=1
diff --git a/TemplePushing.c4s/Misc.c4d/BigRock.c4d/DescDE.txt b/TemplePushing.c4s/Misc.c4d/BigRock.c4d/DescDE.txt
new file mode 100644
index 0000000..ec057c3
--- /dev/null
+++ b/TemplePushing.c4s/Misc.c4d/BigRock.c4d/DescDE.txt
@@ -0,0 +1 @@
+Autsch hoch zwei. \ No newline at end of file
diff --git a/TemplePushing.c4s/Misc.c4d/BigRock.c4d/DescUS.txt b/TemplePushing.c4s/Misc.c4d/BigRock.c4d/DescUS.txt
new file mode 100644
index 0000000..76913f5
--- /dev/null
+++ b/TemplePushing.c4s/Misc.c4d/BigRock.c4d/DescUS.txt
@@ -0,0 +1 @@
+Hurts. A bit. \ No newline at end of file
diff --git a/TemplePushing.c4s/Misc.c4d/BigRock.c4d/Graphics.png b/TemplePushing.c4s/Misc.c4d/BigRock.c4d/Graphics.png
new file mode 100644
index 0000000..8bfa0ac
--- /dev/null
+++ b/TemplePushing.c4s/Misc.c4d/BigRock.c4d/Graphics.png
Binary files differ
diff --git a/TemplePushing.c4s/Misc.c4d/BigRock.c4d/Names.txt b/TemplePushing.c4s/Misc.c4d/BigRock.c4d/Names.txt
new file mode 100644
index 0000000..b71eb18
--- /dev/null
+++ b/TemplePushing.c4s/Misc.c4d/BigRock.c4d/Names.txt
@@ -0,0 +1,2 @@
+US:Big rock
+DE:Großer Stein
diff --git a/TemplePushing.c4s/Misc.c4d/BigRock.c4d/Overlay.png b/TemplePushing.c4s/Misc.c4d/BigRock.c4d/Overlay.png
new file mode 100644
index 0000000..f58a274
--- /dev/null
+++ b/TemplePushing.c4s/Misc.c4d/BigRock.c4d/Overlay.png
Binary files differ
diff --git a/TemplePushing.c4s/Misc.c4d/BigRock.c4d/RockBreak1.wav b/TemplePushing.c4s/Misc.c4d/BigRock.c4d/RockBreak1.wav
new file mode 100644
index 0000000..052ec22
--- /dev/null
+++ b/TemplePushing.c4s/Misc.c4d/BigRock.c4d/RockBreak1.wav
Binary files differ
diff --git a/TemplePushing.c4s/Misc.c4d/BigRock.c4d/RockBreak2.wav b/TemplePushing.c4s/Misc.c4d/BigRock.c4d/RockBreak2.wav
new file mode 100644
index 0000000..0eb4633
--- /dev/null
+++ b/TemplePushing.c4s/Misc.c4d/BigRock.c4d/RockBreak2.wav
Binary files differ
diff --git a/TemplePushing.c4s/Misc.c4d/BigRock.c4d/RockBreak3.wav b/TemplePushing.c4s/Misc.c4d/BigRock.c4d/RockBreak3.wav
new file mode 100644
index 0000000..16a70a9
--- /dev/null
+++ b/TemplePushing.c4s/Misc.c4d/BigRock.c4d/RockBreak3.wav
Binary files differ
diff --git a/TemplePushing.c4s/Misc.c4d/BigRock.c4d/Script.c b/TemplePushing.c4s/Misc.c4d/BigRock.c4d/Script.c
new file mode 100644
index 0000000..fc1ceea
--- /dev/null
+++ b/TemplePushing.c4s/Misc.c4d/BigRock.c4d/Script.c
@@ -0,0 +1,120 @@
+/*-- Großer Stein --*/
+
+#strict
+
+protected func Initialize()
+{
+ Roll();
+ //if (!Random(3))
+ if(GetCon()==100) DoCon(-80);
+ return(1);
+}
+
+protected func Roll()
+{
+ var rnd = Random(3);
+ if (rnd == 0) SetAction("Rolling1");
+ if (rnd == 1) SetAction("Rolling2");
+ if (rnd == 2) SetAction("Rolling3");
+ return(1);
+}
+
+protected func ContactTop()
+{
+ SetXDir(5 - Random(11));
+ if (!Random(3)) Destruct();
+ Crash(-4,-14);
+ Crash(0,-16);
+ Crash(4,-14);
+ ShakeViewPort(GetCon() / 5, this());
+ Roll();
+ return(1);
+}
+
+protected func ContactBottom()
+{
+ SetXDir(50 - Random(101));
+ SetYDir(-45 - Random(10));
+ Crash(-4,14);
+ Crash(0,16);
+ Crash(4,14);
+ Roll();
+ ShakeViewPort(GetCon() / 5, this());
+ if (!Random(10)) CrashFree();
+ if (!Random(8)) Destruct();
+ return(1);
+}
+
+protected func ContactLeft()
+{
+ SetXDir(10 + Random(10));
+ SetYDir(-40 - Random(10));
+ Crash(-14,-4);
+ Crash(-16,0);
+ Crash(-14,4);
+ Roll();
+ ShakeViewPort(GetCon() / 5, this());
+ if (!Random(5)) Destruct();
+ return(1);
+}
+
+protected func ContactRight()
+{
+ SetXDir(-10 - Random(10));
+ SetYDir(-40 - Random(10));
+ Crash(14,-4);
+ Crash(16,0);
+ Crash(14,4);
+ Roll();
+ ShakeViewPort(GetCon() / 5, this());
+ if (!Random(5)) Destruct();
+ return(1);
+}
+
+protected func Crash(x, y)
+{
+ Sound("RockHit*");
+ if (GetCon() < 25) return(0);
+ if (!Random(4)) BlastObjects(GetX() + x, GetY() + y, 3, Contained());
+ if (!Random(4)) BlastObjects(GetX() + x, GetY() + y, 2, Contained());
+ if (!Random(75)) Explode(Random(2) + 3, CreateObject(ROCK, x, y, -1));
+ return(1);
+}
+
+protected func Destruct()
+{
+ var i;
+ if(GetCon()>25) while (++i < 4) CastSplitRock();
+ Sound("RockBreak*");
+ Smoke(Random(11) - 5, Random(11) - 5, Random(25));
+ Smoke(Random(11) - 5, Random(11) - 5, Random(25));
+ Smoke(Random(11) - 5, Random(11) - 5, Random(25));
+ Smoke(Random(11) - 5, Random(11) - 5, Random(25));
+ RemoveObject();
+ return(1);
+}
+
+protected func DoSink()
+{
+ if(GetYDir()<0) SetYDir(0);
+}
+
+protected func CastSplitRock()
+{
+ return(1);
+ var pRock = CreateObject(BIRK, 0, 0, -1);
+ SetXDir(-50 + Random(101), pRock);
+ SetYDir(-60 + Random(80), pRock);
+ SetCon(GetCon() - 5, pRock);
+// AddEffect("IntArrowVanish",pRock,1,3,0,MGBW);
+ return(1);
+}
+
+protected func CrashFree()
+{
+ ShakeFree(GetX() - 50 + Random(100), GetY() + Random(120), GetCon()/5);
+ ShakeFree(GetX() - 50 + Random(100), GetY() + Random(120), GetCon()/5);
+ ShakeFree(GetX() - 50 + Random(100), GetY() + Random(120), GetCon()/5);
+ if (!Random(3)) Sound("Earthquake");
+ return(1);
+}