summaryrefslogtreecommitdiffstats
path: root/TemplePushing.c4s/Misc.c4d/ModSnowball.c4d
diff options
context:
space:
mode:
authorJan <>2015-02-02 17:58:18 +0100
committerJan <_>2015-07-10 17:51:43 +0200
commitca61c54b9bd69af897e4cc9d4385137fb56fd11a (patch)
treea4363f466cea6de48ca81fadc08273d58698d2ff /TemplePushing.c4s/Misc.c4d/ModSnowball.c4d
parent32a9632fbca3dd7a88bd3154b84a3773af39c276 (diff)
downloadtempelschubsen-ca61c54b9bd69af897e4cc9d4385137fb56fd11a.tar.gz
tempelschubsen-ca61c54b9bd69af897e4cc9d4385137fb56fd11a.zip
TemplePushingBeta.c4s
Diffstat (limited to 'TemplePushing.c4s/Misc.c4d/ModSnowball.c4d')
-rw-r--r--TemplePushing.c4s/Misc.c4d/ModSnowball.c4d/DefCore.txt17
-rw-r--r--TemplePushing.c4s/Misc.c4d/ModSnowball.c4d/DescDE.txt1
-rw-r--r--TemplePushing.c4s/Misc.c4d/ModSnowball.c4d/DescUS.txt1
-rw-r--r--TemplePushing.c4s/Misc.c4d/ModSnowball.c4d/Graphics.pngbin0 -> 2493 bytes
-rw-r--r--TemplePushing.c4s/Misc.c4d/ModSnowball.c4d/Names.txt2
-rw-r--r--TemplePushing.c4s/Misc.c4d/ModSnowball.c4d/Script.c59
6 files changed, 80 insertions, 0 deletions
diff --git a/TemplePushing.c4s/Misc.c4d/ModSnowball.c4d/DefCore.txt b/TemplePushing.c4s/Misc.c4d/ModSnowball.c4d/DefCore.txt
new file mode 100644
index 0000000..6b23cdb
--- /dev/null
+++ b/TemplePushing.c4s/Misc.c4d/ModSnowball.c4d/DefCore.txt
@@ -0,0 +1,17 @@
+[DefCore]
+id=TSWB
+Version=4,9,8
+Name=Snowball
+Category=C4D_Object
+Width=6
+Height=6
+Offset=-3,-3
+Vertices=4
+VertexX=2,-2,-2,2
+VertexY=2,-2,2,-2
+VertexFriction=100,100,100,100
+Mass=17
+Components=IICE=2
+Picture=6,0,32,32
+Collectible=1
+Fragile=1
diff --git a/TemplePushing.c4s/Misc.c4d/ModSnowball.c4d/DescDE.txt b/TemplePushing.c4s/Misc.c4d/ModSnowball.c4d/DescDE.txt
new file mode 100644
index 0000000..c369562
--- /dev/null
+++ b/TemplePushing.c4s/Misc.c4d/ModSnowball.c4d/DescDE.txt
@@ -0,0 +1 @@
+Eine leichte aber weitreichende Wurfwaffe, die aus Schnee ausgegraben werden kann.
diff --git a/TemplePushing.c4s/Misc.c4d/ModSnowball.c4d/DescUS.txt b/TemplePushing.c4s/Misc.c4d/ModSnowball.c4d/DescUS.txt
new file mode 100644
index 0000000..81f5b9f
--- /dev/null
+++ b/TemplePushing.c4s/Misc.c4d/ModSnowball.c4d/DescUS.txt
@@ -0,0 +1 @@
+A light throwing weapon shaped from snow. \ No newline at end of file
diff --git a/TemplePushing.c4s/Misc.c4d/ModSnowball.c4d/Graphics.png b/TemplePushing.c4s/Misc.c4d/ModSnowball.c4d/Graphics.png
new file mode 100644
index 0000000..431e6ff
--- /dev/null
+++ b/TemplePushing.c4s/Misc.c4d/ModSnowball.c4d/Graphics.png
Binary files differ
diff --git a/TemplePushing.c4s/Misc.c4d/ModSnowball.c4d/Names.txt b/TemplePushing.c4s/Misc.c4d/ModSnowball.c4d/Names.txt
new file mode 100644
index 0000000..cc0cd4f
--- /dev/null
+++ b/TemplePushing.c4s/Misc.c4d/ModSnowball.c4d/Names.txt
@@ -0,0 +1,2 @@
+DE:Schneeball
+US:Snowball
diff --git a/TemplePushing.c4s/Misc.c4d/ModSnowball.c4d/Script.c b/TemplePushing.c4s/Misc.c4d/ModSnowball.c4d/Script.c
new file mode 100644
index 0000000..aa90954
--- /dev/null
+++ b/TemplePushing.c4s/Misc.c4d/ModSnowball.c4d/Script.c
@@ -0,0 +1,59 @@
+/*-- Schneeball --*/
+
+#strict
+#include ICE1
+
+protected func Hit() {
+ CastPXS("Snow", 100, 20);
+ RemoveObject();
+ return(1);
+}
+
+protected func Departure(thrower) {
+ var proc = GetProcedure(thrower);
+ var comd = GetComDir(thrower);
+ // Ablegen -> Abbruch
+ if (GetPlrDownDouble(GetOwner(thrower)))
+ // Nur Ablegen in der Luft mit Befehlsrichtung? Luftwurf erlauben!
+ if (proc ne "FLIGHT" || GetComDir(thrower) == COMD_None)
+ return(0);
+
+ // Ablegen im stehenden Hangeln -> Abbruch
+ if (proc eq "HANGLE" && comd == COMD_None)
+ return(0);
+
+ // Ablegen im Schwimmen / Klettern -> Abbruch
+ if (proc eq "SWIM" || proc eq "SCALE")
+ return(0);
+
+ // Wurfrichtung rausfinden
+ var dir;
+ // Nach Befehlsrichtung, wenn sinnvolle Werte vorhanden
+ if (comd == COMD_Left() || comd == COMD_Right()) {
+ if (comd == COMD_Left()) dir = -1;
+ if (comd == COMD_Right()) dir = +1;
+ }
+ // sonst nach Blickrichtung
+ else {
+ if (GetDir(thrower) == DIR_Left()) dir = -1;
+ else dir = +1;
+ }
+
+ // Wurfgeschwindigkeiten berechnen
+ var x_dir = dir * GetPhysical("Throw", 0, thrower)/1000 + GetXDir(thrower) / 3;
+ var y_dir = -30;
+
+ if (!x_dir) return(0);
+
+ // Position anpassen
+ SetPosition(GetX() + x_dir / 5, GetY() - 2 + GetYDir(thrower) / 2);
+
+ // Geschwindigkeit setzen
+ SetXDir(x_dir);
+ SetYDir(y_dir);
+
+ Sound("Arrow");
+}
+
+func IsAlchemContainer() { return(true); }
+func AlchemProcessTime() { return(100); }