diff options
Diffstat (limited to 'TemplePushing.c4s/Misc.c4d/TSnowball.c4d')
| -rw-r--r-- | TemplePushing.c4s/Misc.c4d/TSnowball.c4d/DefCore.txt | 19 | ||||
| -rw-r--r-- | TemplePushing.c4s/Misc.c4d/TSnowball.c4d/DescDE.txt | 1 | ||||
| -rw-r--r-- | TemplePushing.c4s/Misc.c4d/TSnowball.c4d/DescUS.txt | 1 | ||||
| -rw-r--r-- | TemplePushing.c4s/Misc.c4d/TSnowball.c4d/Graphics.png | bin | 0 -> 2493 bytes | |||
| -rw-r--r-- | TemplePushing.c4s/Misc.c4d/TSnowball.c4d/Names.txt | 2 | ||||
| -rw-r--r-- | TemplePushing.c4s/Misc.c4d/TSnowball.c4d/Script.c | 59 |
6 files changed, 82 insertions, 0 deletions
diff --git a/TemplePushing.c4s/Misc.c4d/TSnowball.c4d/DefCore.txt b/TemplePushing.c4s/Misc.c4d/TSnowball.c4d/DefCore.txt new file mode 100644 index 0000000..468365a --- /dev/null +++ b/TemplePushing.c4s/Misc.c4d/TSnowball.c4d/DefCore.txt @@ -0,0 +1,19 @@ +[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=20 +Components=IICE=2 +Picture=6,0,32,32 +Collectible=1 +Rotate=1 +StretchGrowth=1 +Fragile=1 diff --git a/TemplePushing.c4s/Misc.c4d/TSnowball.c4d/DescDE.txt b/TemplePushing.c4s/Misc.c4d/TSnowball.c4d/DescDE.txt new file mode 100644 index 0000000..c369562 --- /dev/null +++ b/TemplePushing.c4s/Misc.c4d/TSnowball.c4d/DescDE.txt @@ -0,0 +1 @@ +Eine leichte aber weitreichende Wurfwaffe, die aus Schnee ausgegraben werden kann. diff --git a/TemplePushing.c4s/Misc.c4d/TSnowball.c4d/DescUS.txt b/TemplePushing.c4s/Misc.c4d/TSnowball.c4d/DescUS.txt new file mode 100644 index 0000000..81f5b9f --- /dev/null +++ b/TemplePushing.c4s/Misc.c4d/TSnowball.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/TSnowball.c4d/Graphics.png b/TemplePushing.c4s/Misc.c4d/TSnowball.c4d/Graphics.png Binary files differnew file mode 100644 index 0000000..431e6ff --- /dev/null +++ b/TemplePushing.c4s/Misc.c4d/TSnowball.c4d/Graphics.png diff --git a/TemplePushing.c4s/Misc.c4d/TSnowball.c4d/Names.txt b/TemplePushing.c4s/Misc.c4d/TSnowball.c4d/Names.txt new file mode 100644 index 0000000..cc0cd4f --- /dev/null +++ b/TemplePushing.c4s/Misc.c4d/TSnowball.c4d/Names.txt @@ -0,0 +1,2 @@ +DE:Schneeball +US:Snowball diff --git a/TemplePushing.c4s/Misc.c4d/TSnowball.c4d/Script.c b/TemplePushing.c4s/Misc.c4d/TSnowball.c4d/Script.c new file mode 100644 index 0000000..aa90954 --- /dev/null +++ b/TemplePushing.c4s/Misc.c4d/TSnowball.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); } |
