diff options
| author | Mittendrein Markus <maxmitti@gmx.net> | 2016-03-03 23:31:53 +0100 |
|---|---|---|
| committer | Mittendrein Markus <maxmitti@gmx.net> | 2016-03-03 23:31:53 +0100 |
| commit | e07fef401e91b26f8b0f43382017603ad20c2a3f (patch) | |
| tree | 810fc71556fbfbcda833fdc8699169d02f16a97f /TemplePushing.c4s | |
| parent | b18adf79549c1a3fb17820b6da8936f79fcb07fb (diff) | |
| download | tempelschubsen-e07fef401e91b26f8b0f43382017603ad20c2a3f.tar.gz tempelschubsen-e07fef401e91b26f8b0f43382017603ad20c2a3f.zip | |
Make clonks invincible for 50 frames after relaunch
Diffstat (limited to 'TemplePushing.c4s')
| -rw-r--r-- | TemplePushing.c4s/Script.c | 2 | ||||
| -rw-r--r-- | TemplePushing.c4s/System.c4g/FindObjectsLayer.c | 33 |
2 files changed, 35 insertions, 0 deletions
diff --git a/TemplePushing.c4s/Script.c b/TemplePushing.c4s/Script.c index 54e1ec3..ac18165 100644 --- a/TemplePushing.c4s/Script.c +++ b/TemplePushing.c4s/Script.c @@ -607,6 +607,8 @@ func LaunchClonk(int player, object clonk, bool relaunch) clonk->SetCrewEnabled(false); clonk->SetCrewEnabled(true); clonk->Schedule("SelectCrew(GetOwner(), this, true)", 20); + clonk->SetObjectLayer(clonk); + clonk->Schedule("SetObjectLayer(0)", 50); } // Respawn effects diff --git a/TemplePushing.c4s/System.c4g/FindObjectsLayer.c b/TemplePushing.c4s/System.c4g/FindObjectsLayer.c new file mode 100644 index 0000000..178a7b7 --- /dev/null +++ b/TemplePushing.c4s/System.c4g/FindObjectsLayer.c @@ -0,0 +1,33 @@ +#strict 2
+
+global func FindObjects()
+{
+ return _inherited(Find_And(Find_Layer(GetObjectLayer(this)), ...));
+}
+
+global func FindObject2()
+{
+ return _inherited(Find_And(Find_Layer(GetObjectLayer(this)), ...));
+}
+
+global func FindObject(a, b, c, d, e, f, g, h, i, object findNext)
+{
+ var ret = findNext, layer = GetObjectLayer(this);
+ for(;;)
+ {
+ ret = _inherited(a, b, c, d, e, f, g, h, i, ret);
+ if (GetObjectLayer(ret) == layer) return ret;
+ if (ret == 0) return 0;
+ }
+}
+
+global func FindObjectOwner(a, b, c, d, e, f, g, h, i, object findNext)
+{
+ var ret = findNext, layer = GetObjectLayer(this);
+ for(;;)
+ {
+ ret = _inherited(a, b, c, d, e, f, g, h, i, ret);
+ if (GetObjectLayer(ret) == layer) return ret;
+ if (ret == 0) return 0;
+ }
+}
|
