Hier werden die Unterschiede zwischen zwei Versionen gezeigt.
| Beide Seiten, vorherige Überarbeitung Vorherige Überarbeitung Nächste Überarbeitung | Vorherige Überarbeitung | ||
|
quickstart:spacer:mobsplatzieren:ocmobswitch [2026/08/21 06:55] 43.172.198.3 alte Version wiederhergestellt (2026/08/15 14:35) |
quickstart:spacer:mobsplatzieren:ocmobswitch [2026/08/27 06:05] (aktuell) 43.173.180.12 alte Version wiederhergestellt (2026/08/17 07:50) |
||
|---|---|---|---|
| Zeile 1: | Zeile 1: | ||
| + | |||
| ====== oCMobSwitch ====== | ====== oCMobSwitch ====== | ||
| Zeile 4: | Zeile 5: | ||
| * Vorkenntnisse und das Verstehen des Einbaus eines Standard-Mobs (oCMobInter) wären von Vorteil. | * Vorkenntnisse und das Verstehen des Einbaus eines Standard-Mobs (oCMobInter) wären von Vorteil. | ||
| * Vorkenntnisse: | * Vorkenntnisse: | ||
| + | |||
| + | 1.0.0 - Hier werden Besonderheiten angesprochen, | ||
| **Ein oCMobSwitch**, | **Ein oCMobSwitch**, | ||
| - | *Eine Empfehlung von mir: Wer seine Schalter als oCMobSwitch setzt, findet sie im Object_List_Fenster | + | *Eine Empfehlung von mir: Wer seine Schalter als oCMobSwitch setzt, findet sie im Object_**List**_Fenster |
| + | ===== 1. Einsetzen ===== | ||
| - | 1.0.0 - Hier werden Besonderheiten angesprochen, | + | * **1.1.0 oCVob(abstract) -> oCMob -> oCMobInter |
| + | * Das Einsetzen eines Schalters als ocMobSwitch erzeugt folgendes Objektfenster: | ||
| + | {{: | ||
| - | * **1.1.0 oCVob(abstract) -> oCMob -> oCMobInter** | + | ===== 2.Einstellungen ===== |
| - | * Das Einsetzen eines Schalters als ocMobInter erzeugt folgendes Objektfenster: | + | |
| - | {{: | + | |
| + | 2.0.0 - Einstellungen und Eintragungen im Objektfenster | ||
| + | * **vobName: | ||
| - | * **1.2.0 oCVob(abstract) -> oCMob -> oCMobInter -> oCMobFSwitch** | + | * **cdDyn: |
| - | | + | |
| - | {{: | + | * **vobFarClipZScale: |
| + | * Wenn ihr ein wichtiges Vob/Mob hättet in einem grossen Saal und dieses wird ausgeblendet, | ||
| + | |||
| + | | ||
| + | |||
| + | | ||
| + | |||
| + | {{: | ||
| + | |||
| + | * **useWithItem: | ||
| + | |||
| + | * **conditionFunc: | ||
| + | * Beispiel für den Eintrag im Spacer Objektfenster - __B_MYSWITCH__ (GROSSBUCHSTABEN) | ||
| + | |||
| + | * Beispiel für das Script | ||
| + | < | ||
| + | { | ||
| + | if (Npc_IsPlayer(PC_Hero)) | ||
| + | { | ||
| + | Wld_SendTrigger(" | ||
| + | return TRUE; | ||
| + | } | ||
| + | else | ||
| + | { | ||
| + | return FALSE | ||
| + | }; // Nur der Hero darf den Switch bedienen | ||
| + | };</ | ||
| + | * **onStateFunc** | ||
| + | * Beispiel für den Eintrag im Spacer Objektfenster - __MYSWITCH__ (GROSSBUCHSTABEN & KEIN _S1) | ||
| + | |||
| + | * Beispiel für das Script | ||
| + | < | ||
| + | { | ||
| + | Wld_SendTrigger(" | ||
| + | };</ | ||
| + | |||
| + | * **rewind: | ||
| + | |||
| + | =====3. Switch mit FKW beschiessen===== | ||
| + | | ||
| + | |||
| + | **3.0.0 - Man kann mit einem Schalter ein nettes Feature bauen, wo man mit dem Bogen bspw. einen Schalter beschiesst, der dann auslöst. Beispiel eine Zielscheibe beschiessen** | ||
| + | |||
| + | * 3.0.1 - Zielscheibe setzen als Vob (Kollission geben) | ||
| + | |||
| + | * 3.1.0 - Schalter setzen (__Touchplate_Stone__) | ||
| + | * 3.1.1 - Den Schalter so positionieren, | ||
| + | * 3.1.2 - **Objectfenster - Einträge** | ||
| + | * - __showVisual: | ||
| + | * - __focusOverride: | ||
| + | * - __focusname: | ||
| + | * focusName in der Datei Text.d eintragen < | ||
| + | * 3.1.3 - Der Schalter ist nur ein Fake und hat mit dem gezählten Treffer nichts zu tun. Er gibt lediglich den Namen an (Zielscheibe) und lenkt den Pfeil auf sein Koordinatenkreuz (gelb, | ||
| + | **3.2.0 - Einschlag registrieren ....** | ||
| + | * 3.2.1 - Triggerscript setzen. | ||
| + | * Boundingbox mindestens 20x20x20, sonst reagiert der Trigger eventuell nicht auf den Pfeil. Jetzt kommt es darauf an was man will, je kleiner die Boundingbox, | ||
| + | * 3.2.2 - Boundingbox direkt in die Mitte __**vor**__ der Zielscheibe setzen. | ||
| + | * 3.2.3 - Triggerscript auf Damage = True setzen, (reagiert nur auf Bolzen und Pfeile, nicht auf Schwert etc ..) | ||
| + | |||
| + | **3.3.0 - Treffer generieren** - Damit das beim Schiessen nicht so langweilig wird würde ich einen Treffer Zufallsgenerator einbauen. | ||
| + | *3.3.1 - Script Trefferquote Zufallsgenerator | ||
| + | *< | ||
| + | { | ||
| + | var int zufall; zufall=Hlp_Random(6); | ||
| + | if (zufall == 0) { PRINT(" | ||
| + | if (zufall == 1) { PRINT( " | ||
| + | if (zufall == 2) { PRINT( " | ||
| + | if (zufall == 3) { PRINT( " | ||
| + | if (zufall == 4) { PRINT( " | ||
| + | if (zufall == 5) { PRINT(" | ||
| + | }; | ||
| + | *</ | ||
| - | * Der automatisch erscheinende Eintrag, der " | + | *3.3.2 - Vielleicht noch jede getroffene Zehn als Count hochzählen und wer genug Zehner geschossen hat, hat auch genügend geübt |
| - | * funktioniert eventuell in G2 nicht, da es die " | + | |
| - | * ist unbrauchbar, | + | |
| - | | + | **WICHTIG - Den Scriptfunc vom Trigger benutzen und den Schalter mit dem Trigger nicht verlinken.** |
| - | * Wie stelle ich einen " | ||
| __Die Mobeinsetz-Liste mit allen Mobs und allen zugehörigen Einträgen findet ihr hier__ | __Die Mobeinsetz-Liste mit allen Mobs und allen zugehörigen Einträgen findet ihr hier__ | ||
| Zeile 38: | Zeile 112: | ||
| Zurück zur Haupseite -> | Zurück zur Haupseite -> | ||
| - | 20160207(dlz) | + | 20160208(dlz) |