Benutzer-Werkzeuge

Webseiten-Werkzeuge


Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen gezeigt.

Link zu der Vergleichsansicht

Beide Seiten, vorherige Überarbeitung Vorherige Überarbeitung
Nächste Überarbeitung
Vorherige Überarbeitung
Nächste Überarbeitung Beide Seiten, nächste Überarbeitung
quickstart:spacer:mobsplatzieren:ocmobswitch [2016/02/08 12:23]
85.180.75.135
quickstart:spacer:mobsplatzieren:ocmobswitch [2016/02/08 15:14]
85.180.75.135 [2. Switch mit FKW beschiessen]
Zeile 1: Zeile 1:
  
 ====== oCMobSwitch ====== ====== oCMobSwitch ======
 +
 +
 +
 +.............................................................{{:​spacer:​omega7497construction.gif|}}
 +
  
   * 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.
Zeile 18: Zeile 23:
  
 1.1.0 - Einstellungen und Eintragungen im Objektfenster 1.1.0 - Einstellungen und Eintragungen im Objektfenster
-  * vobName:​SPEZIELLER_NAME - Falls man den Schalter aufrufen möchte, bspw. mit IKARUS+  * vobName:​SPEZIELLER_NAME - Falls man den Schalter aufrufen möchte, bspw. mit **Ikarus**\\ [[http://​forum.worldofplayers.de/​forum/​threads/​1299679-Skriptpaket-Ikarus-4]]
  
   * **cdDyn:​**TRUE - erzeugt Kollision, wird benötigt, wenn man einen Schalter mit Fernwkampfwaffe beschiesst. Zum normalen betätigen eines Schalters durch einen Pc/Npc benötigt man keine Kollision, da ja der Schalter per Animation des Mobs bewegt wird.   * **cdDyn:​**TRUE - erzeugt Kollision, wird benötigt, wenn man einen Schalter mit Fernwkampfwaffe beschiesst. Zum normalen betätigen eines Schalters durch einen Pc/Npc benötigt man keine Kollision, da ja der Schalter per Animation des Mobs bewegt wird.
Zeile 27: Zeile 32:
 =====2. Switch mit FKW beschiessen===== =====2. Switch mit FKW beschiessen=====
  
-Man kann mit dem Schalter ein nettes Feature bauen, wo man mit dem Bogen bspw. einen Schalter beschiesst, der dann auslöst. Beispiel eine Zielscheibe beschiessen +**2.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**
-    1. Zielscheibe setzen als Vob (Kollission geben)+
  
-    ​2. Schalter setzen (Touchplate_Stone) +  * 2.0.1 - Zielscheibe ​setzen als Vob (Kollission geben)
-    2.a Den Schalter so positionieren,​ dass das Koordinatenkreuz in der Mitte vor der Zielscheibe ​sitzt, der Schalter also überhalb der Zielscheibe sich befindet. ​(Schalterrichtung = Schussrichtung) +
-    2.b Dem Schalter das Visual nehmen (FALSE) +
-    2.c Schalter eintragen FocusOverride = TRUE (Sonst kann der Bogen oder Crossbow das Ziel nicht erfassen.) +
-    2.d Schalter mit Focusname = Zielscheibe versehen.+
  
-    Der Schalter ist nur ein Fake und hat mit dem gezählten Treffer nichts zu tunEr gibt lediglich den Namen an (Zielscheibeund lenkt den Pfeil auf sein Koordinatenkreuz (gelb,braun, weiss).+  * 2.1.0 - Schalter setzen ​(__Touchplate_Stone__) 
 +  * 2.1.1 - Den Schalter so positionieren,​ dass das Koordinatenkreuz ​in der Mitte vor der Zielscheibe sitzt, der Schalter also __**vor**__ der Zielscheibe sich befindet. ​(Schalterrichtung = Schussrichtung) 
 +  * 2.1.2 - **Objectfenster - Einträge** 
 +    * - __showVisual:​FALSE__ - den Schalter sollte man nicht sehenwir beschiessen ja die Zielscheibe) 
 +    * - __focusOverride:​TRUE__ - (Sonst kann der Bogen oder Crossbow das Ziel nicht erfassen.
 +    * - __focusname:​MOBNAME_ZIELSCHEIBE__ 
 +      * focusName in der Datei Text.d eintragen <​code>​const string MOBNAME_ZIELSCHEIBE = "​Zielscheibe";</​code>​
  
-    Jetzt wird der Einschlag registriert ​....+  * 2.1.3 - Der Schalter ist nur ein Fake und hat mit dem gezählten Treffer nichts zu tunEr gibt lediglich den Namen an (Zielscheibe) und lenkt den Pfeil auf sein Koordinatenkreuz (gelb,​braun,​ weiss).
  
-    ​3. 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,​ desto mehr Fehlschüsse und umgekehrt, je grösser, desto mehr Treffer. Dabei ist die Tiefe der Box von entscheidender Bedeutung. Wenn der Pfeil in einen Würfel einschlägt,​ wird er eher registriert,​ als wenn du auf eine dünne Boundingbox_Scheibe schiesst. Da wird der Treffer eventuell gar nicht registriert. +**3.0.0 - Jetzt wird der Einschlag ​registriert ....**
-    3.a Boundingbox in die Mitte vor der Zielscheibe setzen +
-    3.b Triggerscript auf Damage = True setzen, (reagiert nur auf Bolzen und Pfeile, nicht auf Schwert etc ..+
-    PC = False, NPC = False, sonst kann das durch körperliche Berührung ausgelöst werden.+
  
-    ​Jetzt sollte ​das funzen.+  * 3.0.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,​ desto mehr Fehlschüsse und umgekehrt, je grösser, desto mehr Treffer. Dabei ist die __Tiefe der Box von entscheidender Bedeutung__. Wenn der Pfeil in einen Würfel einschlägt,​ wird er eher registriert,​ als wenn du auf eine dünne Boundingbox Scheibe schiesst. Da wird der Treffer eventuell gar nicht registriert. 
 +  * 3.0.2 - Boundingbox direkt in die Mitte __**vor**__ der Zielscheibe setzen. 
 +  * 3.0.3 - Triggerscript auf Damage = True setzen, (reagiert nur auf Bolzen und Pfeile, nicht auf Schwert etc ..) 
 +  
 +**4.0.0 - Treffer generieren** - Damit das beim Schiessen nicht so langweilig wird würde ich einen Treffer Zufallsgenerator einbauen.
  
-    Damit das beim Schiessen nicht so langweilig wird würde ich einen Treffer ​Zufallsgenerator ​einbauen. +  *4.0.1 - Script Trefferquote ​Zufallsgenerator 
-    Code: +  ​*<​code> ​   func void ZIELSCHEIBE() ​//​**Scripfunc des Triggers**
- +
-    func void ZIELSCHEIBE()+
     {     {
-         ​zufall_zielscheibe ​= Hlp_Random (5)+1+     var int zufall; zufall=Hlp_Random(6); 
-         ​if (zufall_Zielscheibe ​== 1) +      if (zufall ​== 0) { PRINT("​10"​);​};​  
-         { +      if (zufall ​== 1) { PRINT( "​7"​);​}; ​    
-           PRINT("​10"​);​ +      if (zufall ​== 2) { PRINT( "​9"​);​}; ​    
-         }; +      if (zufall ​== 3) { PRINT( "​8"​);}
-         ​if (zufall_Zielscheibe ​== 2) +      if (zufall == 4) { PRINT( "​3"​); ​}; 
-         { +      if (zufall ​== 5) { PRINT("​KEIN TREFFER"​);​};​
-           PRINT("​7"​);​ +
-         };     +
-         ​if (zufall_Zielscheibe ​== 3) +
-         { +
-           PRINT("​9"​);​ +
-         };     +
-         ​if (zufall_Zielscheibe ​== 4) +
-         { +
-           PRINT("​8"​);​ +
-         ​}; +
-         ​if (zufall_Zielscheibe ​== 5) +
-         { +
-           PRINT("​KEIN TREFFER"​);​ +
-         }; +
     };     };
 +  *</​code>​
  
-    ​Vielleicht noch die Zehn als Count hochzählen und wer die 3te Zehn geschossen hat, hat genug geübt und kann seine Belohnung abholen? +  *4.0.2 - Vielleicht noch jede getroffene ​Zehn als Count hochzählen und wer die 3te Zehn geschossen hat, hat genug geübt und kann seine Belohnung abholen?
- +
-    EDIT WICHTIG Den Scriptfunc vom Trigger benutzen, nicht den vom Schalter und den Schalter mit dem Trigger nicht verlinken.  +
- +
- +
  
 +**WICHTIG - Den Scriptfunc vom Trigger benutzen, vom Schalter und den Schalter mit dem Trigger nicht verlinken.** ​
  
  
quickstart/spacer/mobsplatzieren/ocmobswitch.txt · Zuletzt geändert: 2018/04/28 07:18 von 79.239.17.78