From cf3a2ab40c10b3c74158967726863d743985e8d9 Mon Sep 17 00:00:00 2001 From: Luis Michaelis Date: Sun, 11 Feb 2024 12:32:30 +0100 Subject: [PATCH 01/61] Initial world object documentation layout proposal --- docs/zengin/worlds/Classes/zCVob.md | 255 ++++++++++++++++++------- overrides/assets/stylesheets/extra.css | 79 +++++++- 2 files changed, 261 insertions(+), 73 deletions(-) diff --git a/docs/zengin/worlds/Classes/zCVob.md b/docs/zengin/worlds/Classes/zCVob.md index 632380dd8f..5666e92367 100644 --- a/docs/zengin/worlds/Classes/zCVob.md +++ b/docs/zengin/worlds/Classes/zCVob.md @@ -5,116 +5,213 @@ Represents so-called virtual objects which appear in the game world. `zCVob` is ## Class members Properties of a zCVob class are split into two parts. The **Internals** are hardly ever needed to be edited manually, they are changed by e.g. moving an object in [Spacer](../spacer.md). On the other hand the **Vob** properties can only be changed by the Objects context menu in [Spacer](../spacer.md). -=== "G1" +=== "Gothic 1" - zCVob - {: style="list-style-image: url('/gmc/assets/icons/spacer-class.png');"} + {: .sp-class} - Internals - {: style="list-style-image: url('/gmc/assets/icons/spacer-folder.png');"} + {: .sp-folder} - [pack](#pack) = 0 - {: style="list-style-image: url('/gmc/assets/icons/spacer-int.png');"} + {: .sp-int} - [presetName](#presetname) = "" - {: style="list-style-image: url('/gmc/assets/icons/spacer-string.png');"} + {: .sp-string} - [bbox3DWS](#bbox3dws) = 0 0 0 0 0 0 - {: style="list-style-image: url('/gmc/assets/icons/spacer-misc.png');"} + {: .sp-misc} - [trafoOSToWSRot](#trafoostowsrot) = 0 - {: style="list-style-image: url('/gmc/assets/icons/spacer-misc.png');"} - - [trafoOSToWSPos](#trafoostowspos) = 0 0 200 - {: style="list-style-image: url('/gmc/assets/icons/spacer-vec.png');"} + {: .sp-misc} + - [trafoOSToWSPOS](#trafoostowspos) = 0 0 200 + {: .sp-vec} - Vob - {: style="list-style-image: url('/gmc/assets/icons/spacer-folder.png');"} + {: .sp-folder} - [vobName](#vobname) = "" - {: style="list-style-image: url('/gmc/assets/icons/spacer-string.png');"} + {: .sp-string} - [visual](#visual) = "" - {: style="list-style-image: url('/gmc/assets/icons/spacer-string.png');"} + {: .sp-string} - [showVisual](#showvisual) = TRUE - {: style="list-style-image: url('/gmc/assets/icons/spacer-bool.png');"} + {: .sp-bool} - [visualCamAlign](#visualcamalign) = NONE - {: style="list-style-image: url('/gmc/assets/icons/spacer-enum.png');"} - - [CdStatic](#cdstatic) = FALSE - {: style="list-style-image: url('/gmc/assets/icons/spacer-bool.png');"} - - [CdDyn](#cddyn) = FALSE - {: style="list-style-image: url('/gmc/assets/icons/spacer-bool.png');"} + {: .sp-enum} + - [cdStatic](#cdstatic) = FALSE + {: .sp-bool} + - [cdDyn](#cddyn) = FALSE + {: .sp-bool} - [staticVob](#staticvob) = FALSE - {: style="list-style-image: url('/gmc/assets/icons/spacer-bool.png');"} + {: .sp-bool} - [dynShadow](#dynshadow) = DS_NONE - {: style="list-style-image: url('/gmc/assets/icons/spacer-enum.png');"} - - visual = NULL - {: style="list-style-image: url('/gmc/assets/icons/spacer-class.png');"} - - ai = NULL - {: style="list-style-image: url('/gmc/assets/icons/spacer-class.png');"} + {: .sp-enum} + - visual = NULL + {: .sp-class} + - ai = NULL + {: .sp-class} -=== "G2A" +=== "Gothic 2" - zCVob - {: style="list-style-image: url('/gmc/assets/icons/spacer-class.png');"} + {: .sp-class} - Internals - {: style="list-style-image: url('/gmc/assets/icons/spacer-folder.png');"} + {: .sp-folder} - [pack](#pack) = 0 - {: style="list-style-image: url('/gmc/assets/icons/spacer-int.png');"} + {: .sp-int} - [presetName](#presetname) = "" - {: style="list-style-image: url('/gmc/assets/icons/spacer-string.png');"} + {: .sp-string} - [bbox3DWS](#bbox3dws) = 0 0 0 0 0 0 - {: style="list-style-image: url('/gmc/assets/icons/spacer-misc.png');"} + {: .sp-misc} - [trafoOSToWSRot](#trafoostowsrot) = 0 - {: style="list-style-image: url('/gmc/assets/icons/spacer-misc.png');"} - - [trafoOSToWSPos](#trafoostowspos) = 0 0 200 - {: style="list-style-image: url('/gmc/assets/icons/spacer-vec.png');"} + {: .sp-misc} + - [trafoOSToWSPOS](#trafoostowspos) = 0 0 200 + {: .sp-vec} - Vob - {: style="list-style-image: url('/gmc/assets/icons/spacer-folder.png');"} + {: .sp-folder} - [vobName](#vobname) = "" - {: style="list-style-image: url('/gmc/assets/icons/spacer-string.png');"} + {: .sp-string} - [visual](#visual) = "" - {: style="list-style-image: url('/gmc/assets/icons/spacer-string.png');"} + {: .sp-string} - [showVisual](#showvisual) = TRUE - {: style="list-style-image: url('/gmc/assets/icons/spacer-bool.png');"} + {: .sp-bool} - [visualCamAlign](#visualcamalign) = NONE - {: style="list-style-image: url('/gmc/assets/icons/spacer-enum.png');"} + {: .sp-enum} - [visualAniMode](#visualanimode) = NONE - {: style="list-style-image: url('/gmc/assets/icons/spacer-enum.png');"} + {: .sp-enum} - [visualAniModeStrength](#visualanimodestrength) = 0.0 - {: style="list-style-image: url('/gmc/assets/icons/spacer-float.png');"} + {: .sp-float} - [vobFarClipZScale](#vobfarclipzscale) = 1.0 - {: style="list-style-image: url('/gmc/assets/icons/spacer-float.png');"} - - [CdStatic](#cdstatic) = FALSE - {: style="list-style-image: url('/gmc/assets/icons/spacer-bool.png');"} - - [CdDyn](#cddyn) = FALSE - {: style="list-style-image: url('/gmc/assets/icons/spacer-bool.png');"} + {: .sp-float} + - [cdStatic](#cdstatic) = FALSE + {: .sp-bool} + - [cdDyn](#cddyn) = FALSE + {: .sp-bool} - [staticVob](#staticvob) = FALSE - {: style="list-style-image: url('/gmc/assets/icons/spacer-bool.png');"} + {: .sp-bool} - [dynShadow](#dynshadow) = DS_NONE - {: style="list-style-image: url('/gmc/assets/icons/spacer-enum.png');"} + {: .sp-enum} - [zbias](#zbias) = 1 - {: style="list-style-image: url('/gmc/assets/icons/spacer-int.png');"} + {: .sp-int} - [isAmbient](#isambient) = FALSE - {: style="list-style-image: url('/gmc/assets/icons/spacer-bool.png');"} - - visual = NULL - {: style="list-style-image: url('/gmc/assets/icons/spacer-class.png');"} - - ai = NULL - {: style="list-style-image: url('/gmc/assets/icons/spacer-class.png');"} + {: .sp-bool} + - visual = NULL + {: .sp-class} + - ai = NULL + {: .sp-class} + + +=== "Gothic 1 (Save)" + + - zCVob + {: .sp-class} + - Internals + {: .sp-folder} + - [pack](#pack) = 0 + {: .sp-int} + - [presetName](#presetname) = "" + {: .sp-string} + - [bbox3DWS](#bbox3dws) = 0 0 0 0 0 0 + {: .sp-misc} + - [trafoOSToWSRot](#trafoostowsrot) = 0 + {: .sp-misc} + - [trafoOSToWSPOS](#trafoostowspos) = 0 0 200 + {: .sp-vec} + - Vob + {: .sp-folder} + - [vobName](#vobname) = "" + {: .sp-string} + - [visual](#visual) = "" + {: .sp-string} + - [showVisual](#showvisual) = TRUE + {: .sp-bool} + - [visualCamAlign](#visualcamalign) = NONE + {: .sp-enum} + - [cdStatic](#cdstatic) = FALSE + {: .sp-bool} + - [cdDyn](#cddyn) = FALSE + {: .sp-bool} + - [staticVob](#staticvob) = FALSE + {: .sp-bool} + - [dynShadow](#dynshadow) = DS_NONE + {: .sp-enum} + - visual = NULL + {: .sp-class} + - ai = NULL + {: .sp-class} + - [sleepMode](#sleepmode) = 0 + {: .sp-int} + - [nextOnTimer](#nextontimer) = 0.0 + {: .sp-float} + +=== "Gothic 2 (Save)" + + - zCVob + {: .sp-class} + - Internals + {: .sp-folder} + - [pack](#pack) = 0 + {: .sp-int} + - [presetName](#presetname) = "" + {: .sp-string} + - [bbox3DWS](#bbox3dws) = 0 0 0 0 0 0 + {: .sp-misc} + - [trafoOSToWSRot](#trafoostowsrot) = 0 + {: .sp-misc} + - [trafoOSToWSPOS](#trafoostowspos) = 0 0 200 + {: .sp-vec} + - Vob + {: .sp-folder} + - [vobName](#vobname) = "" + {: .sp-string} + - [visual](#visual) = "" + {: .sp-string} + - [showVisual](#showvisual) = TRUE + {: .sp-bool} + - [visualCamAlign](#visualcamalign) = NONE + {: .sp-enum} + - [visualAniMode](#visualanimode) = NONE + {: .sp-enum} + - [visualAniModeStrength](#visualanimodestrength) = 0.0 + {: .sp-float} + - [vobFarClipZScale](#vobfarclipzscale) = 1.0 + {: .sp-float} + - [cdStatic](#cdstatic) = FALSE + {: .sp-bool} + - [cdDyn](#cddyn) = FALSE + {: .sp-bool} + - [staticVob](#staticvob) = FALSE + {: .sp-bool} + - [dynShadow](#dynshadow) = DS_NONE + {: .sp-enum} + - [zbias](#zbias) = 1 + {: .sp-int} + - [isAmbient](#isambient) = FALSE + {: .sp-bool} + - visual = NULL + {: .sp-class} + - ai = NULL + {: .sp-class} + - [sleepMode](#sleepmode) = 0 + {: .sp-int} + - [nextOnTimer](#nextontimer) = 0.0 + {: .sp-float} ## Class member overview -### pack +### `pack` {: .sp-int} Internal property which indicates how the data associated with this virtual object is stored. -### presetName +### `presetName` {: .sp-string} The name of the template that was used to create this virtual object. -### bbox3DWS +### `bbox3DWS` {: .sp-misc} The 3-dimensional bounding box of this virtual object. Defined by two opposite diagonal points (`1x, 1y, 1z`, `2x, 2y, 2z`). This is used in conjunction with [cdStatic](#cdstatic) and [cdDyn](#cddyn) calculate collisions and interactions with other game objects (NPCs, items, etc.). Interaction processing begins when object volumes intersect. For example, when the player enters the world change trigger area, the engine loads another game level based on the parameters this trigger. All this happens when the main character's BoundingBox intersects with the trigger's BoundingBox. The BoundingBox can only be changed using the `Edit the Bbox` button in Spacer. -### trafoOSToWSRot +### `trafoOSToWSRot` {: .sp-misc} The rotation of this virtual object in world space, represented by a 3x3 rotation matrix. -### trafoOSToWSPos +### `trafoOSToWSPos` {: .sp-vec} Coordinates of the object in world space relative to the center. !!! Note @@ -122,14 +219,15 @@ Coordinates of the object in world space relative to the center. The coordinates are set automatically the first time an instance of the class is inserted into the game world. You can change them either directly by entering numerical values ​​in the corresponding fields of the parameter, by [moving the vob](../spacer.md#viewport-controls) in spacer. -### vobName +### `vobName` {: .sp-string} An identifier of a zCVob shown in the editor and sometimes used in scripts. The name can be left blank. For some object classes, entering a name is required: zCVobSpot, zCVobWaypoint, zCTrigger etc. !!! Danger - Setting a name for every static and insignificant object can lead to an error when parsing the game world. -### visual + Setting a name for every static and insignificant object can lead to an error when parsing the game world. + +### `visual` {: .sp-string} The name of the visual component associated with this object, usually a name of a file. Following formats are supported: @@ -141,7 +239,7 @@ Following formats are supported: - `*.MMS` - Animated objects -### showVisual +### `showVisual` {: .sp-bool} Indicates whether this object should display its visual. **Accepted values:** @@ -150,7 +248,7 @@ Indicates whether this object should display its visual. - **FALSE** - Do not display. -### visualCamAlign +### `visualCamAlign` {: .sp-enum} Option to align objects relative to the camera. **Accepted values:** @@ -162,7 +260,7 @@ Option to align objects relative to the camera. !!! Note This may be used with grass or flowers which only consist of a 2-dimensional sprite to have it always face the camera. -### visualAniMode +### `visualAniMode` {: .sp-enum} Wind simulation option. Used in conjunction with the [visualAniModeStrength](#visualanimodestrength) parameter. **Accepted values:** @@ -174,13 +272,13 @@ Wind simulation option. Used in conjunction with the [visualAniModeStrength](#vi !!! Warning This option is only available in Gothic II (Spacer2). -### visualAniModeStrength +### `visualAniModeStrength` {: .sp-float} Wind power animation multiplier. Small values such as `0.001` are typically used. Used in conjunction with the [visualAniMode](#visualanimode) parameter. !!! Warning This option is only available in Gothic II (Spacer2). -### vobFarClipZScale +### `vobFarClipZScale` {: .sp-float} Sets the loading range of the VOB object. Depends on the VOB drawing distance specified using the `zCZoneVobFarPlane` object. The range of values is from `0.0` to `2.0`. @@ -190,7 +288,7 @@ With a value of `0.0`, the object is not visible, but collisions are calculated. !!! Warning This option is only available in Gothic II (Spacer2). -### CdStatic +### `cdStatic` {: .sp-bool} Determines if the virtual object will collide with the static objects (world mesh and other VOBs with **cdStatic** on). **Accepted values:** @@ -201,7 +299,7 @@ Determines if the virtual object will collide with the static objects (world mes !!! Tip A situation often arises when objects “refuse” to move beyond a certain point on the surface. This happens when **cdStatic** is set to **TRUE**, i.e. the object cannot cross the surface another static object. In this case, it is enough to disable the **cdStatic** parameter for the duration of the move, and turn it on again after the move. -### CdDyn +### `cdDyn` {: .sp-bool} Determines if the virtual object will collide with dynamic objects (NPCs, items, etc.). This basically determines if the object has collision during gameplay. **Accepted values:** @@ -210,7 +308,7 @@ Determines if the virtual object will collide with dynamic objects (NPCs, items, - **FALSE** - Don't collide with dynamic objects. -### staticVob +### `staticVob` {: .sp-bool} Determines if the VOB is taken into consideration in static lighting calculations in Indoor spaces. Usually enabled in decorative Vobs, but some of the interactive ones have it disabled. **Accepted values:** @@ -221,7 +319,7 @@ Determines if the VOB is taken into consideration in static lighting calculation !!! Note The shadow is calculated when compiling light in Low, Middle or High mode. -### dynShadow +### `dynShadow` {: .sp-enum} Indicates whether the object will cast a shadow when affected by dynamic light (e.g. torches). **Accepted values:** @@ -229,7 +327,7 @@ Indicates whether the object will cast a shadow when affected by dynamic light ( - **DS_NONE** - No shadow. - **DS_BLOB** - Casts a circular shadow. -### zbias +### `zbias` {: .sp-int} The depth-bias for this virtual object. Can be used remove texture flickering if a `.TGA` file is used as rendering. @@ -237,12 +335,25 @@ Can be used remove texture flickering if a `.TGA` file is used as rendering. !!! Warning This option is only available in Gothic II (Spacer2). -### isAmbient +### `isAmbient` {: .sp-bool} Indicates that this virtual object is ambient. It looks like this setting was a system used during development when access to the game's source code was available. Basically, the global variable `zCWorld::s_bAmbientVobsEnabled` could be used to hide or show virtual objects which have the `isAmbient` flag set. In release builds, this variable is always set to true, thus the `isAmbient` flag does not have any perceivable effect on the game. It follows, that this field should be ignored by most implementations. !!! Warning This option is only available in Gothic II (Spacer2). + +### `sleepMode` {: .sp-int} +Unknown. + +!!! warning + This property is only available in saved games. + +### `nextOnTimer` {: .sp-float} +Unknown. + +!!! warning + This property is only available in saved games. + [^1]: Heavily inspired by the zCVob article at [gothic-library](http://www.gothic-library.ru/publ/class_zcvob/1-1-0-467). diff --git a/overrides/assets/stylesheets/extra.css b/overrides/assets/stylesheets/extra.css index 01e279718d..9b665c53e4 100644 --- a/overrides/assets/stylesheets/extra.css +++ b/overrides/assets/stylesheets/extra.css @@ -391,4 +391,81 @@ div.md-nav__link--index { font-style: italic; } -/* endregion */ \ No newline at end of file +/* endregion */ + +/* region spacer type icons */ + +ul .sp-folder, +ul .sp-class, +ul .sp-int, +ul .sp-string, +ul .sp-misc, +ul .sp-bool, +ul .sp-enum, +ul .sp-vec, +ul .sp-float, +ul .sp-color { + margin: 0 0 0 0.5em !important; + padding: 0 !important; + list-style-type: none; + font-family: monospace; +} + +.sp-folder::before { + content: url("/gmc/assets/icons/spacer-folder.png"); + padding-right: 0.5em; +} + +.sp-int::before { + content: url("/gmc/assets/icons/spacer-int.png"); + padding-right: 0.5em; +} + +.sp-float::before { + content: url("/gmc/assets/icons/spacer-float.png"); + padding-right: 0.5em; +} + +.sp-string::before { + content: url("/gmc/assets/icons/spacer-string.png"); + padding-right: 0.5em; +} + +.sp-misc::before { + content: url("/gmc/assets/icons/spacer-misc.png"); + padding-right: 0.5em; +} + +.sp-vec::before { + content: url("/gmc/assets/icons/spacer-vec.png"); + padding-right: 0.5em; +} + +.sp-bool::before { + content: url("/gmc/assets/icons/spacer-bool.png"); + padding-right: 0.5em; +} + +.sp-enum::before { + content: url("/gmc/assets/icons/spacer-enum.png"); + padding-right: 0.5em; +} + +.sp-class::before { + content: url("/gmc/assets/icons/spacer-class.png"); + padding-right: 0.5em; +} + +.sp-color::before { + content: url("/gmc/assets/icons/spacer-color.png"); + padding-right: 0.5em; +} + +.sp-none { + margin: 0 0 0 0.5em !important; + padding: 0 !important; + list-style: none; + font-family: monospace; +} + +/* endregion */ From 25e67d892dcbaaa2e4d4b1eff20f0e08808375a9 Mon Sep 17 00:00:00 2001 From: Luis Michaelis Date: Sun, 11 Feb 2024 15:48:27 +0100 Subject: [PATCH 02/61] Deduplicate `.sp-none` CSS class --- overrides/assets/stylesheets/extra.css | 10 ++-------- 1 file changed, 2 insertions(+), 8 deletions(-) diff --git a/overrides/assets/stylesheets/extra.css b/overrides/assets/stylesheets/extra.css index 9b665c53e4..1499124f01 100644 --- a/overrides/assets/stylesheets/extra.css +++ b/overrides/assets/stylesheets/extra.css @@ -404,7 +404,8 @@ ul .sp-bool, ul .sp-enum, ul .sp-vec, ul .sp-float, -ul .sp-color { +ul .sp-color, +ul .sp-none { margin: 0 0 0 0.5em !important; padding: 0 !important; list-style-type: none; @@ -461,11 +462,4 @@ ul .sp-color { padding-right: 0.5em; } -.sp-none { - margin: 0 0 0 0.5em !important; - padding: 0 !important; - list-style: none; - font-family: monospace; -} - /* endregion */ From 4ffbceb95375dbfa20a73a54f05cf9ab0308659e Mon Sep 17 00:00:00 2001 From: Luis Michaelis Date: Fri, 16 Feb 2024 16:13:55 +0100 Subject: [PATCH 03/61] Increase size of Spacer type icons --- overrides/assets/stylesheets/extra.css | 80 +++++++++++++++----------- 1 file changed, 47 insertions(+), 33 deletions(-) diff --git a/overrides/assets/stylesheets/extra.css b/overrides/assets/stylesheets/extra.css index 1499124f01..b9d96766c9 100644 --- a/overrides/assets/stylesheets/extra.css +++ b/overrides/assets/stylesheets/extra.css @@ -395,6 +395,30 @@ div.md-nav__link--index { /* region spacer type icons */ +.sp-folder, +.sp-class, +.sp-int, +.sp-string, +.sp-misc, +.sp-bool, +.sp-enum, +.sp-vec, +.sp-float, +.sp-color, +.sp-none { + font-family: monospace; + + margin: 0 0 0 0.5em; + padding: 0 0 0 1.6em; + + background-repeat: no-repeat; + background-size: 1.3em 1.3em; + image-rendering: pixelated; + + background-position-y: 0.65em; +} + + ul .sp-folder, ul .sp-class, ul .sp-int, @@ -406,60 +430,50 @@ ul .sp-vec, ul .sp-float, ul .sp-color, ul .sp-none { - margin: 0 0 0 0.5em !important; - padding: 0 !important; list-style-type: none; - font-family: monospace; + padding-left: 1.8em !important; + background-position-y: 3px !important; } -.sp-folder::before { - content: url("/gmc/assets/icons/spacer-folder.png"); - padding-right: 0.5em; + +.sp-folder { + background-image: url("/gmc/assets/icons/spacer-folder.png"); } -.sp-int::before { - content: url("/gmc/assets/icons/spacer-int.png"); - padding-right: 0.5em; +.sp-int { + background-image: url("/gmc/assets/icons/spacer-int.png"); } -.sp-float::before { - content: url("/gmc/assets/icons/spacer-float.png"); - padding-right: 0.5em; +.sp-float { + background-image: url("/gmc/assets/icons/spacer-float.png"); } -.sp-string::before { - content: url("/gmc/assets/icons/spacer-string.png"); - padding-right: 0.5em; +.sp-string{ + background-image: url("/gmc/assets/icons/spacer-string.png"); } -.sp-misc::before { - content: url("/gmc/assets/icons/spacer-misc.png"); - padding-right: 0.5em; +.sp-misc{ + background-image: url("/gmc/assets/icons/spacer-misc.png"); } -.sp-vec::before { - content: url("/gmc/assets/icons/spacer-vec.png"); - padding-right: 0.5em; +.sp-vec{ + background-image: url("/gmc/assets/icons/spacer-vec.png"); } -.sp-bool::before { - content: url("/gmc/assets/icons/spacer-bool.png"); - padding-right: 0.5em; +.sp-bool{ + background-image: url("/gmc/assets/icons/spacer-bool.png"); } -.sp-enum::before { - content: url("/gmc/assets/icons/spacer-enum.png"); - padding-right: 0.5em; +.sp-enum{ + background-image: url("/gmc/assets/icons/spacer-enum.png"); } -.sp-class::before { - content: url("/gmc/assets/icons/spacer-class.png"); - padding-right: 0.5em; +.sp-class { + background-image: url("/gmc/assets/icons/spacer-class.png"); } -.sp-color::before { - content: url("/gmc/assets/icons/spacer-color.png"); - padding-right: 0.5em; +.sp-color { + background-image: url("/gmc/assets/icons/spacer-color.png"); } /* endregion */ From c700f060a22e5d63cf18d75dcb1aec6977bd0234 Mon Sep 17 00:00:00 2001 From: Luis Michaelis Date: Fri, 16 Feb 2024 17:45:39 +0100 Subject: [PATCH 04/61] Add quick reference box to VOb docs --- docs/zengin/worlds/Classes/zCVob.md | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/docs/zengin/worlds/Classes/zCVob.md b/docs/zengin/worlds/Classes/zCVob.md index 5666e92367..44f0431054 100644 --- a/docs/zengin/worlds/Classes/zCVob.md +++ b/docs/zengin/worlds/Classes/zCVob.md @@ -1,5 +1,14 @@ # zCVob +!!! abstract inline end "Quick Infos" + **Class Name:** `zCVob`
+ **Version Identifiers:**
+ — Gothic I: `12289`
+ — Gothic II: `52224`
+ **Sources:**
+ — [spacerhilfedatei.sph](https://wiki.worldofgothic.de/doku.php?id=spacer:hilfedatei)
+ — [gothic-library.ru](http://www.gothic-library.ru/publ/class_zcvob/1-1-0-467) + Represents so-called virtual objects which appear in the game world. `zCVob` is the base class for all virtual objects which include everything from static models like boxes to interactive elements like doors and chests and invisible trigger objects. ## Class members @@ -217,7 +226,7 @@ Coordinates of the object in world space relative to the center. !!! Note This refers to the center of coordinates of the `.3DS` file of the game world on which the `ZEN` file is built. -The coordinates are set automatically the first time an instance of the class is inserted into the game world. You can change them either directly by entering numerical values ​​in the corresponding fields of the parameter, by [moving the vob](../spacer.md#viewport-controls) in spacer. +The coordinates are set automatically the first time an instance of the class is inserted into the game world. You can change them either directly by entering numerical values in the corresponding fields of the parameter, by [moving the vob](../spacer.md#viewport-controls) in spacer. ### `vobName` {: .sp-string} An identifier of a zCVob shown in the editor and sometimes used in scripts. The name can be left blank. From 6ebe4149ab374674618f77df5e513ef40a12b497 Mon Sep 17 00:00:00 2001 From: Luis Michaelis Date: Fri, 16 Feb 2024 17:46:01 +0100 Subject: [PATCH 05/61] Add documentation for `zCVobAnimate` --- docs/zengin/worlds/Classes/zCVobAnimate.md | 77 ++++++++++++++++++++++ 1 file changed, 77 insertions(+) create mode 100644 docs/zengin/worlds/Classes/zCVobAnimate.md diff --git a/docs/zengin/worlds/Classes/zCVobAnimate.md b/docs/zengin/worlds/Classes/zCVobAnimate.md new file mode 100644 index 0000000000..16fdcbb050 --- /dev/null +++ b/docs/zengin/worlds/Classes/zCVobAnimate.md @@ -0,0 +1,77 @@ +# zCVobAnimate + +!!! abstract inline end "Quick Infos" + **Class Name:** `zCVobAnimate`
+ **Version Identifiers:**
+ — Gothic I: `12289`
+ — Gothic II: `52224`
+ **Sources:**
+ — [spacerhilfedatei.sph](https://wiki.worldofgothic.de/doku.php?id=spacer:hilfedatei)
+ — [gothic-library.ru](http://www.gothic-library.ru/publ/zcvobanimate/1-1-0-523)
+ — [zk.gothickit.dev](https://zk.gothickit.dev/engine/objects/zCVobAnimate/) + + +A VObject used to create animated models. The visual of such objects can either be a +[morph mesh](../../engine/formats/morph-mesh.md) or a model with a skeletal animation +(i.e. a [model script](../../engine/formats/model-script.md)). The animation of these objects can be started +and stopped using `OnTrigger` and `OnUntrigger` events. + +## Class members + +=== "Gothic 1" + + - [zCVob](zCVob.md) + {: .sp-class} + - zCVobAnimate + {: .sp-class} + - [startOn](#starton) = "" + {: .sp-bool} + +=== "Gothic 2" + + - [zCVob](zCVob.md) + {: .sp-class} + - zCVobAnimate + {: .sp-class} + - [startOn](#starton) = "" + {: .sp-bool} + +=== "Gothic 1 (Save)" + + - [zCVob](zCVob.md) + {: .sp-class} + - zCVobAnimate + {: .sp-class} + - [startOn](#starton) = "" + {: .sp-bool} + - [isRunning](#isrunning) = FALSE + {: .sp-bool} + +=== "Gothic 2 (Save)" + + - [zCVob](zCVob.md) + {: .sp-class} + - zCVobAnimate + {: .sp-class} + - [startOn](#starton) = "" + {: .sp-bool} + - [isRunning](#isrunning) = FALSE + {: .sp-bool} + +## Class member overview + +### `startOn` {: .sp-bool} + +Whether to start this animation when loading the level. + +**Accepted values:** + +* `TRUE` — Immediately start the animation when the level is loaded. +* `FALSE` — Don't automatically start the animation. + +### `isRunning` {: .sp-bool} + +Unknown. + +!!! warning + This property is only available in saved games. From d6ea65e85db355667eaddd05f188fadc76acb68a Mon Sep 17 00:00:00 2001 From: Luis Michaelis Date: Fri, 16 Feb 2024 17:46:07 +0100 Subject: [PATCH 06/61] Add documentation for `zCVobLensFlare` --- docs/zengin/worlds/Classes/zCVobLensFlare.md | 57 ++++++++++++++++++++ 1 file changed, 57 insertions(+) create mode 100644 docs/zengin/worlds/Classes/zCVobLensFlare.md diff --git a/docs/zengin/worlds/Classes/zCVobLensFlare.md b/docs/zengin/worlds/Classes/zCVobLensFlare.md new file mode 100644 index 0000000000..553e15b167 --- /dev/null +++ b/docs/zengin/worlds/Classes/zCVobLensFlare.md @@ -0,0 +1,57 @@ +# zCVobLensFlare + +!!! abstract inline end "Quick Infos" + **Class Name:** `zCVobLensFlare`
+ **Version Identifiers:**
+ — Gothic I: `64704`
+ — Gothic II: `193`
+ **Sources:**
+ — [spacerhilfedatei.sph](https://wiki.worldofgothic.de/doku.php?id=spacer:hilfedatei)
+ — [gothic-library.ru](http://www.gothic-library.ru/publ/class_zcvoblensflare/1-1-0-524)
+ — [zk.gothickit.dev](https://zk.gothickit.dev/engine/objects/zCVobLensFlare/) + +Represents a lens flare effect. Behaves exactly like the base [`zCVob`](zCVob.md) but has a lens flare effect. + +## Class members + +=== "Gothic 1" + + - [zCVob](zCVob.md) + {: .sp-class} + - zCVobLensFlare + {: .sp-class} + - [lensflareFX](#lensflarefx) = "" + {: .sp-string} + +=== "Gothic 2" + + - [zCVob](zCVob.md) + {: .sp-class} + - zCVobLensFlare + {: .sp-class} + - [lensflareFX](#lensflarefx) = "" + {: .sp-string} + +=== "Gothic 1 (Save)" + + - [zCVob](zCVob.md) + {: .sp-class} + - zCVobLensFlare + {: .sp-class} + - [lensflareFX](#lensflarefx) = "" + {: .sp-string} + +=== "Gothic 2 (Save)" + + - [zCVob](zCVob.md) + {: .sp-class} + - zCVobLensFlare + {: .sp-class} + - [lensflareFX](#lensflarefx) = "" + {: .sp-string} + +## Class member overview + +### `lensflareFX` {: .sp-string} + +The name of the lens flare effect. Must be one of the effects listed in `/_work/data/Presets/Lensflare.zen`. From b58db2b3d1478e1f55b0fe4757680674a5b96235 Mon Sep 17 00:00:00 2001 From: Luis Michaelis Date: Fri, 16 Feb 2024 17:46:12 +0100 Subject: [PATCH 07/61] Add documentation for `zCVobLevelCompo` --- docs/zengin/worlds/Classes/zCVobLevelCompo.md | 53 +++++++++++++++++++ 1 file changed, 53 insertions(+) create mode 100644 docs/zengin/worlds/Classes/zCVobLevelCompo.md diff --git a/docs/zengin/worlds/Classes/zCVobLevelCompo.md b/docs/zengin/worlds/Classes/zCVobLevelCompo.md new file mode 100644 index 0000000000..7927f957e6 --- /dev/null +++ b/docs/zengin/worlds/Classes/zCVobLevelCompo.md @@ -0,0 +1,53 @@ +# zCVobLevelCompo + +!!! abstract inline end "Quick Infos" + **Class Name:** `zCVobLevelCompo`
+ **Version Identifiers:**
+ — Gothic I: `12289`
+ — Gothic II: `52224`
+ **Sources:**
+ — [gothic-library.ru](http://www.gothic-library.ru/publ/class_zcvoblevelcompo/1-1-0-496)
+ — [zk.gothickit.dev](https://zk.gothickit.dev/engine/objects/zCVobLevelCompo/) + + +Used as root objects of game levels. Only used to group together other VObjects. Only one of the `zCVobLevelCompo` +objects will have a visual which corresponds to the mesh of the world it exists in. Generally, it can be ignored and +has no relevance to other VObjects in the hierarchy. + +## Class members + +=== "Gothic 1" + + - [zCVob](zCVob.md) + {: .sp-class} + - zCVobLevelCompo + {: .sp-class} + - <empty> + {: .sp-none} + +=== "Gothic 2" + + - [zCVob](zCVob.md) + {: .sp-class} + - zCVobLevelCompo + {: .sp-class} + - <empty> + {: .sp-none} + +=== "Gothic 1 (Save)" + + - [zCVob](zCVob.md) + {: .sp-class} + - zCVobLevelCompo + {: .sp-class} + - <empty> + {: .sp-none} + +=== "Gothic 2 (Save)" + + - [zCVob](zCVob.md) + {: .sp-class} + - zCVobLevelCompo + {: .sp-class} + - <empty> + {: .sp-none} From 93d03f7c4639af9010b4aa48c9f3fb91f8661b07 Mon Sep 17 00:00:00 2001 From: Luis Michaelis Date: Fri, 16 Feb 2024 17:46:16 +0100 Subject: [PATCH 08/61] Add documentation for `zCVobLight` --- docs/zengin/worlds/Classes/zCVobLight.md | 321 +++++++++++++++++++++++ 1 file changed, 321 insertions(+) create mode 100644 docs/zengin/worlds/Classes/zCVobLight.md diff --git a/docs/zengin/worlds/Classes/zCVobLight.md b/docs/zengin/worlds/Classes/zCVobLight.md new file mode 100644 index 0000000000..c1d508a351 --- /dev/null +++ b/docs/zengin/worlds/Classes/zCVobLight.md @@ -0,0 +1,321 @@ +# zCVobLight + +!!! abstract inline end "Quick Infos" + **Type:** Virtual Object
+ **Format Name:** ZenGin Archive
+ **File Extension:** `.ZEN`
+ **Class Name:** `zCVobLight`
+ **Version Identifiers:**
+ — Gothic I: `46080`
+ — Gothic II: `39168`
+ **ZenKit Class:** `VLight`
+ **Sources:**
+ — [spacerhilfedatei.sph](https://wiki.worldofgothic.de/doku.php?id=spacer:hilfedatei)
+ — [gothic-library.ru](http://www.gothic-library.ru/publ/class_zcvoblight/1-1-0-497)
+ — [zk.gothickit.dev](https://zk.gothickit.dev/engine/objects/zCVobLight/) + +Represents a virtual light source which lights up nearby game objects. Point and spot light sources are supported and +may be animated with different colors and ranges. + +## Class members + +=== "Gothic 1" + + - [zCVob](zCVob.md) + {: .sp-class} + - zCVobLight + {: .sp-class} + - VobLight + {: .sp-folder} + - [lightPresetInUse](#lightpresetinuse) = "" + {: .sp-string} + - [lightType](#lighttype) = POINT + {: .sp-enum} + - [range](#range) = 0 + {: .sp-float} + - [color](#color) = 255 255 255 255 + {: .sp-color} + - [spotConeAngle](#spotconeangle) = 0 + {: .sp-float} + - [lightStatic](#lightstatic) = TRUE + {: .sp-bool} + - [lightQuality](#lightquality) = HIGH + {: .sp-enum} + - [lensflareFX](#lensflarefx) = "" + {: .sp-string} + - Dynamic Light + {: .sp-folder} + - [turnedOn](#turnedon) = TRUE + {: .sp-bool} + - [rangeAniScale](#rangeaniscale) = "" + {: .sp-string} + - [rangeAniFPS](#rangeanifps) = 0 + {: .sp-float} + - [rangeAniSmooth](#rangeanismooth) = TRUE + {: .sp-bool} + - [colorAniList](#coloranilist) = "" + {: .sp-string} + - [colorAniFPS](#coloranifps) = 0 + {: .sp-float} + - [colorAniSmooth](#coloranismooth) = TRUE + {: .sp-bool} + +=== "Gothic 2" + + - [zCVob](zCVob.md) + {: .sp-class} + - zCVobLight + {: .sp-class} + - VobLight + {: .sp-folder} + - [lightPresetInUse](#lightpresetinuse) = "" + {: .sp-string} + - [lightType](#lighttype) = POINT + {: .sp-enum} + - [range](#range) = 0 + {: .sp-float} + - [color](#color) = 255 255 255 255 + {: .sp-color} + - [spotConeAngle](#spotconeangle) = 0 + {: .sp-float} + - [lightStatic](#lightstatic) = TRUE + {: .sp-bool} + - [lightQuality](#lightquality) = HIGH + {: .sp-enum} + - [lensflareFX](#lensflarefx) = "" + {: .sp-string} + - Dynamic Light + {: .sp-folder} + - [turnedOn](#turnedon) = TRUE + {: .sp-bool} + - [rangeAniScale](#rangeaniscale) = "" + {: .sp-string} + - [rangeAniFPS](#rangeanifps) = 0 + {: .sp-float} + - [rangeAniSmooth](#rangeanismooth) = TRUE + {: .sp-bool} + - [colorAniList](#coloranilist) = "" + {: .sp-string} + - [colorAniFPS](#coloranifps) = 0 + {: .sp-float} + - [colorAniSmooth](#coloranismooth) = TRUE + {: .sp-bool} + - [canMove](#canmove) = FALSE + {: .sp-bool} + +=== "Gothic 1 (Save)" + + - [zCVob](zCVob.md) + {: .sp-class} + - zCVobLight + {: .sp-class} + - VobLight + {: .sp-folder} + - [lightPresetInUse](#lightpresetinuse) = "" + {: .sp-string} + - [lightType](#lighttype) = POINT + {: .sp-enum} + - [range](#range) = 0 + {: .sp-float} + - [color](#color) = 255 255 255 255 + {: .sp-color} + - [spotConeAngle](#spotconeangle) = 0 + {: .sp-float} + - [lightStatic](#lightstatic) = TRUE + {: .sp-bool} + - [lightQuality](#lightquality) = HIGH + {: .sp-enum} + - [lensflareFX](#lensflarefx) = "" + {: .sp-string} + - Dynamic Light + {: .sp-folder} + - [turnedOn](#turnedon) = TRUE + {: .sp-bool} + - [rangeAniScale](#rangeaniscale) = "" + {: .sp-string} + - [rangeAniFPS](#rangeanifps) = 0 + {: .sp-float} + - [rangeAniSmooth](#rangeanismooth) = TRUE + {: .sp-bool} + - [colorAniList](#coloranilist) = "" + {: .sp-string} + - [colorAniFPS](#coloranifps) = 0 + {: .sp-float} + - [colorAniSmooth](#coloranismooth) = TRUE + {: .sp-bool} + +=== "Gothic 2 (Save)" + + - [zCVob](zCVob.md) + {: .sp-class} + - zCVobLight + {: .sp-class} + - VobLight + {: .sp-folder} + - [lightPresetInUse](#lightpresetinuse) = "" + {: .sp-string} + - [lightType](#lighttype) = POINT + {: .sp-enum} + - [range](#range) = 0 + {: .sp-float} + - [color](#color) = 255 255 255 255 + {: .sp-color} + - [spotConeAngle](#spotconeangle) = 0 + {: .sp-float} + - [lightStatic](#lightstatic) = TRUE + {: .sp-bool} + - [lightQuality](#lightquality) = HIGH + {: .sp-enum} + - [lensflareFX](#lensflarefx) = "" + {: .sp-string} + - Dynamic Light + {: .sp-folder} + - [turnedOn](#turnedon) = TRUE + {: .sp-bool} + - [rangeAniScale](#rangeaniscale) = "" + {: .sp-string} + - [rangeAniFPS](#rangeanifps) = 0 + {: .sp-float} + - [rangeAniSmooth](#rangeanismooth) = TRUE + {: .sp-bool} + - [colorAniList](#coloranilist) = "" + {: .sp-string} + - [colorAniFPS](#coloranifps) = 0 + {: .sp-float} + - [colorAniSmooth](#coloranismooth) = TRUE + {: .sp-bool} + - [canMove](#canmove) = FALSE + {: .sp-bool} + +## Class member overview + +### `lightPresetInUse` {: .sp-string} + +The name of the selected light template. Templates can be found in `_work/data/Presets/LightPresets.zen`. This +property is irrelevant for most use-cases. + + +### `lightType` {: .sp-enum} + +The type of the light source. + +**Accepted values:** + +- `POINT` — A point light source. +- `SPOT` — A spot light source. + +### `range` {: .sp-float} + +The range in which this light source illuminates objects. + +### `color` {: .sp-color} + +The color of this light source in RGBA form. + +### `spotConeAngle` {: .sp-float} + +The angle of the beam cone for spotlights. Only relevant if [`lightType`](#lighttype) is `SPOT`, ignored otherwise. + +### `lightStatic` {: .sp-bool} + +Determines whether this is a static light or not. Static lights are baked into the world when its lighting is +compiled. This makes static lights faster at runtime, but it also means, that they cannot change in any way after +the world is compiled. + +**Accepted values:** + +* `TRUE` — This light is a static light. +* `FALSE` — This light is a dynamic light. + +### `lightQuality` {: .sp-enum} + +Determines the quality of the light source. What exactly changes with these values is unknown. + +**Accepted values:** + +* `HIGH` — Highest quality. +* `MEDIUM` — Medium quality. +* `LOW_FASTEST` — Low quality (used for almost all lights). + +### `lensflareFX` {: .sp-string} + +The name of the lensflare effect associated with this light. Empty if there is no associated lensflare effect. + +### `turnedOn` {: .sp-bool} + +Whether this dynamic light is turned on. + +**Accepted values:** + +* `TRUE` — The light is turned on. +* `FALSE` — The light is turned off. + +!!! warning + This value is only valid for dynamic lights. Check [`lightStatic`](#lightstatic) before use. + +### `rangeAniScale` {: .sp-string} + +Frames for the light's range animation. Its value is a space-separated list of floats where each float is one key +frame of the animation. A value of `1.0` corresponds to the initial [`range`](#range) of the light source, a value +of `2.0` corresponds to double the initial [`range`](#range) and a value of `0.5` means half the initial +[`range`](#range). The range animation is further controlled by [`rangeAniFPS`](#rangeanifps) and +[`rangeAniSmooth`](#rangeanismooth). + +!!! warning + This value is only valid for dynamic lights. Check [`lightStatic`](#lightstatic) before use. + +### `rangeAniFPS` {: .sp-float} + +The speed of the range animation in frames per second. The animation frames are defined in [`rangeAniScale`](#rangeaniscale) + +!!! warning + This value is only valid for dynamic lights. Check [`lightStatic`](#lightstatic) before use. + +### `rangeAniSmooth` {: .sp-bool} + +Whether the range animation should smoothly interpolate between keyframes. + +**Accepted values:** + +* `TRUE` — Turn on interpolation. +* `FALSE` — Turn off interpolation. + +!!! warning + This value is only valid for dynamic lights. Check [`lightStatic`](#lightstatic) before use. + +### `colorAniList` {: .sp-string} + +Frames for the light's color animation. Its value is a space-separated list of colors where each element can either +be an RGB color consisting of three integers enclosed by parentheses or a greyscale color consisting of a single +integer. For example: `(255 0 0) 100 (255 50 180)` would result in #ff0000 +#646464, #ff32b4. The color animation is +further controlled by [`colorAniFPS`](#coloranifps) and [`colorAniSmooth`](#coloranismooth). + +!!! warning + This value is only valid for dynamic lights. Check [`lightStatic`](#lightstatic) before use. + +### `colorAniFPS` {: .sp-float} + +The speed of the color animation in frames per second. The animation frames are defined in [`colorAniList`](#coloranilist) + +!!! warning + This value is only valid for dynamic lights. Check [`lightStatic`](#lightstatic) before use. + +### `colorAniSmooth` {: .sp-bool} + +Whether the color animation should smoothly interpolate between keyframes. + +**Accepted values:** + +* `TRUE` — Turn on interpolation. +* `FALSE` — Turn off interpolation. + +!!! warning + This value is only valid for dynamic lights. Check [`lightStatic`](#lightstatic) before use. + +#### `canMove` {: .sp-bool} + +Unknown. + +!!! warning + This value is only valid for dynamic lights in **Gothic II**. Check [`lightstatic`](#lightstatic) before use. From 1e40324141b01e068a1a476bf85af2e0e6876ae4 Mon Sep 17 00:00:00 2001 From: Luis Michaelis Date: Fri, 16 Feb 2024 17:46:25 +0100 Subject: [PATCH 09/61] Add documentation for `zCVobSpot` --- docs/zengin/worlds/Classes/zCVobSpot.md | 53 +++++++++++++++++++++++++ 1 file changed, 53 insertions(+) create mode 100644 docs/zengin/worlds/Classes/zCVobSpot.md diff --git a/docs/zengin/worlds/Classes/zCVobSpot.md b/docs/zengin/worlds/Classes/zCVobSpot.md new file mode 100644 index 0000000000..1ff7fc2fd6 --- /dev/null +++ b/docs/zengin/worlds/Classes/zCVobSpot.md @@ -0,0 +1,53 @@ +# zCVobSpot + +!!! abstract inline end "Quick Infos" + **Class Name:** `zCVobSpot`
+ **Version Identifiers:**
+ — Gothic I: `12289`
+ — Gothic II: `52224`
+ **Sources:**
+ — [spacerhilfedatei.sph](https://wiki.worldofgothic.de/doku.php?id=spacer:hilfedatei)
+ — [gothic-library.ru](http://www.gothic-library.ru/publ/class_zcvobspot/1-1-0-498)
+ — [zk.gothickit.dev](https://zk.gothickit.dev/engine/objects/zCVobSpot/) + + +Spot objects are used to mark a position and orientation in virtual space. They are equivalent in function to way net +free points and can be used in scripts to spawn other objects at their location. + +## Class members + +=== "Gothic 1" + + - [zCVob](zCVob.md) + {: .sp-class} + - zCVobSpot + {: .sp-class} + - <empty> + {: .sp-none} + +=== "Gothic 2" + + - [zCVob](zCVob.md) + {: .sp-class} + - zCVobSpot + {: .sp-class} + - <empty> + {: .sp-none} + +=== "Gothic 1 (Save)" + + - [zCVob](zCVob.md) + {: .sp-class} + - zCVobSpot + {: .sp-class} + - <empty> + {: .sp-none} + +=== "Gothic 2 (Save)" + + - [zCVob](zCVob.md) + {: .sp-class} + - zCVobSpot + {: .sp-class} + - <empty> + {: .sp-none} From 7dd5d306a75bedc61a4c8a55e7faf3b0267596a9 Mon Sep 17 00:00:00 2001 From: Luis Michaelis Date: Fri, 16 Feb 2024 17:46:31 +0100 Subject: [PATCH 10/61] Add documentation for `zCVobStair` --- docs/zengin/worlds/Classes/zCVobStair.md | 46 ++++++++++++++++++++++++ 1 file changed, 46 insertions(+) create mode 100644 docs/zengin/worlds/Classes/zCVobStair.md diff --git a/docs/zengin/worlds/Classes/zCVobStair.md b/docs/zengin/worlds/Classes/zCVobStair.md new file mode 100644 index 0000000000..bc7d054d5c --- /dev/null +++ b/docs/zengin/worlds/Classes/zCVobStair.md @@ -0,0 +1,46 @@ +# zCVobStair + +!!! abstract inline end "Quick Infos" + **Class Name:** `zCVobStair`
+ **Version Identifiers:**
+ — Gothic I: `12289`
+ — Gothic II: *Unused*
+ **Sources:**
+ — [spacerhilfedatei.sph](https://wiki.worldofgothic.de/doku.php?id=spacer:hilfedatei)
+ — [gothic-library.ru](http://www.gothic-library.ru/publ/class_zcvobstair/1-1-0-499)
+ — [zk.gothickit.dev](https://zk.gothickit.dev/engine/objects/zCVobStair/) + + +Used to mark staircase models in Gothic I only. This type of VObject was taken into account by the NPC pathfinding +routines to properly ascend and descend staircases. + +!!! warning + This VObject is only available in Gothic I. + +## Class members + +=== "Gothic 1" + + - [zCVob](zCVob.md) + {: .sp-class} + - zCVobStair + {: .sp-class} + - <empty> + {: .sp-none} + +=== "Gothic 2" + + *Unavailable.* + +=== "Gothic 1 (Save)" + + - [zCVob](zCVob.md) + {: .sp-class} + - zCVobStair + {: .sp-class} + - <empty> + {: .sp-none} + +=== "Gothic 2 (Save)" + + *Unavailable.* From 659fbce64362c3674848129a7a5e329bae8a4af7 Mon Sep 17 00:00:00 2001 From: Luis Michaelis Date: Fri, 16 Feb 2024 17:46:37 +0100 Subject: [PATCH 11/61] Add documentation for `zCVobStartpoint` --- docs/zengin/worlds/Classes/zCVobStartpoint.md | 52 +++++++++++++++++++ 1 file changed, 52 insertions(+) create mode 100644 docs/zengin/worlds/Classes/zCVobStartpoint.md diff --git a/docs/zengin/worlds/Classes/zCVobStartpoint.md b/docs/zengin/worlds/Classes/zCVobStartpoint.md new file mode 100644 index 0000000000..2572512324 --- /dev/null +++ b/docs/zengin/worlds/Classes/zCVobStartpoint.md @@ -0,0 +1,52 @@ +# zCVobStartpoint + +!!! abstract inline end "Quick Infos" + **Class Name:** `zCVobStartpoint`
+ **Version Identifiers:**
+ — Gothic I: `12289`
+ — Gothic II: `52224`
+ **Sources:**
+ — [spacerhilfedatei.sph](https://wiki.worldofgothic.de/doku.php?id=spacer:hilfedatei)
+ — [gothic-library.ru](http://www.gothic-library.ru/publ/class_zcvobstartpoint/1-1-0-500)
+ — [zk.gothickit.dev](https://zk.gothickit.dev/engine/objects/zCVobStartpoint/) + +Marks the players initial position when loading in the game level. Behaves like [`zCVobSpot`](zCVobSpot.md) but causes +the game to put the player at its location and in its orientation when the world is loaded. + +## Class members + +=== "Gothic 1" + + - [zCVob](zCVob.md) + {: .sp-class} + - zCVobStartpoint + {: .sp-class} + - <empty> + {: .sp-none} + +=== "Gothic 2" + + - [zCVob](zCVob.md) + {: .sp-class} + - zCVobStartpoint + {: .sp-class} + - <empty> + {: .sp-none} + +=== "Gothic 1 (Save)" + + - [zCVob](zCVob.md) + {: .sp-class} + - zCVobStartpoint + {: .sp-class} + - <empty> + {: .sp-none} + +=== "Gothic 2 (Save)" + + - [zCVob](zCVob.md) + {: .sp-class} + - zCVobStartpoint + {: .sp-class} + - <empty> + {: .sp-none} From 237d0c8c2c328cd7b9051242c1dbd89b1898e839 Mon Sep 17 00:00:00 2001 From: Luis Michaelis Date: Fri, 23 Feb 2024 13:53:30 +0100 Subject: [PATCH 12/61] Add documentation for `zCZoneVobFarPlane` --- .../worlds/Classes/zCZoneVobFarPlane.md | 69 +++++++++++++++++++ 1 file changed, 69 insertions(+) create mode 100644 docs/zengin/worlds/Classes/zCZoneVobFarPlane.md diff --git a/docs/zengin/worlds/Classes/zCZoneVobFarPlane.md b/docs/zengin/worlds/Classes/zCZoneVobFarPlane.md new file mode 100644 index 0000000000..e9b50d3476 --- /dev/null +++ b/docs/zengin/worlds/Classes/zCZoneVobFarPlane.md @@ -0,0 +1,69 @@ +# zCZoneVobFarPlane + +!!! abstract inline end "Quick Infos" + **Class Name:** `zCZoneVobFarPlane`
+ **Version Identifiers:**
+ — Gothic I: `12289`
+ — Gothic II: `52224`
+ **Sources:**
+ — [gothic-library.ru](http://www.gothic-library.ru/publ/class_zczonevobfarplane/1-1-0-706)
+ — [zk.gothickit.dev](https://zk.gothickit.dev/engine/objects/zCZoneVobFarPlane/) + +A VObject which defines the loading range of VObjects within its bounding box. + +## Class members + +=== "Gothic 1" + + - [zCVob](zCVob.md) + {: .sp-class} + - zCZoneVobFarPlane + {: .sp-class} + - [vobFarPlaneZ](#vobfarplanez) = 12000.0 + {: .sp-float} + - [innerRangePerc](#innerrangeperc) = 0.0 + {: .sp-float} + +=== "Gothic 2" + + - [zCVob](zCVob.md) + {: .sp-class} + - zCZoneVobFarPlane + {: .sp-class} + - [vobFarPlaneZ](#vobfarplanez) = 12000.0 + {: .sp-float} + - [innerRangePerc](#innerrangeperc) = 0.0 + {: .sp-float} + +=== "Gothic 1 (Save)" + + - [zCVob](zCVob.md) + {: .sp-class} + - zCZoneVobFarPlane + {: .sp-class} + - [vobFarPlaneZ](#vobfarplanez) = 12000.0 + {: .sp-float} + - [innerRangePerc](#innerrangeperc) = 0.0 + {: .sp-float} + +=== "Gothic 2 (Save)" + + - [zCVob](zCVob.md) + {: .sp-class} + - zCZoneVobFarPlane + {: .sp-class} + - [vobFarPlaneZ](#vobfarplanez) = 12000.0 + {: .sp-float} + - [innerRangePerc](#innerrangeperc) = 0.0 + {: .sp-float} + +## Class member overview + +### `vobFarPlaneZ` {: .sp-float} + +The loading range of VObject within. + + +### `innerRangePerc` {: .sp-float} + +Unknown. From 7685924717de71bc30052f560937ec8b723190b5 Mon Sep 17 00:00:00 2001 From: Luis Michaelis Date: Fri, 23 Feb 2024 13:53:36 +0100 Subject: [PATCH 13/61] Add documentation for `zCZoneVobFarPlaneDefault` --- .../Classes/zCZoneVobFarPlaneDefault.md | 60 +++++++++++++++++++ 1 file changed, 60 insertions(+) create mode 100644 docs/zengin/worlds/Classes/zCZoneVobFarPlaneDefault.md diff --git a/docs/zengin/worlds/Classes/zCZoneVobFarPlaneDefault.md b/docs/zengin/worlds/Classes/zCZoneVobFarPlaneDefault.md new file mode 100644 index 0000000000..8dd65a1be5 --- /dev/null +++ b/docs/zengin/worlds/Classes/zCZoneVobFarPlaneDefault.md @@ -0,0 +1,60 @@ +# zCZoneVobFarPlaneDefault + +!!! abstract inline end "Quick Infos" + **Class Name:** `zCZoneVobFarPlaneDefault`
+ **Version Identifiers:**
+ — Gothic I: `12289`
+ — Gothic II: `52224`
+ **Sources:**
+ — [gothic-library.ru](http://www.gothic-library.ru/publ/class_zczonevobfarplane/1-1-0-706)
+ — [zk.gothickit.dev](https://zk.gothickit.dev/engine/objects/zCZoneVobFarPlaneDefault/) + + +A VObject which defines the default loading range of VObjects in the entire world. There may only be one of these +objects in each world. Its effect can be overridden using [zCZoneVobFarPlane](zCZoneVobFarPlane.md) objects. + +## Class members + +=== "Gothic 1" + + - [zCVob](zCVob.md) + {: .sp-class} + - [zCZoneVobFarPlane](zCZoneVobFarPlane.md) + {: .sp-class} + - zCZoneVobFarPlane + {: .sp-class} + - <empty> + {: .sp-none} + +=== "Gothic 2" + + - [zCVob](zCVob.md) + {: .sp-class} + - [zCZoneVobFarPlane](zCZoneVobFarPlane.md) + {: .sp-class} + - zCZoneVobFarPlane + {: .sp-class} + - <empty> + {: .sp-none} + +=== "Gothic 1 (Save)" + + - [zCVob](zCVob.md) + {: .sp-class} + - [zCZoneVobFarPlane](zCZoneVobFarPlane.md) + {: .sp-class} + - zCZoneVobFarPlane + {: .sp-class} + - <empty> + {: .sp-none} + +=== "Gothic 2 (Save)" + + - [zCVob](zCVob.md) + {: .sp-class} + - [zCZoneVobFarPlane](zCZoneVobFarPlane.md) + {: .sp-class} + - zCZoneVobFarPlane + {: .sp-class} + - <empty> + {: .sp-none} From 9b839b7859ef855eff9be3d6f668bea49855386a Mon Sep 17 00:00:00 2001 From: Luis Michaelis Date: Fri, 23 Feb 2024 13:53:49 +0100 Subject: [PATCH 14/61] Add documentation for `zCZoneZFog` --- docs/zengin/worlds/Classes/zCZoneZFog.md | 116 +++++++++++++++++++++++ 1 file changed, 116 insertions(+) create mode 100644 docs/zengin/worlds/Classes/zCZoneZFog.md diff --git a/docs/zengin/worlds/Classes/zCZoneZFog.md b/docs/zengin/worlds/Classes/zCZoneZFog.md new file mode 100644 index 0000000000..e2e806921d --- /dev/null +++ b/docs/zengin/worlds/Classes/zCZoneZFog.md @@ -0,0 +1,116 @@ +# zCZoneZFog + +!!! abstract inline end "Quick Infos" + **Class Name:** `zCZoneZFog`
+ **Version Identifiers:**
+ — Gothic I: `12289`
+ — Gothic II: `52224`
+ **Sources:**
+ — [gothic-library.ru](http://www.gothic-library.ru/publ/class_zczonezfog/1-1-0-708)
+ — [zk.gothickit.dev](https://zk.gothickit.dev/engine/objects/zCZoneZFog/) + +A VObject which causes fog to appear within its bounding box. + +## Class members + +=== "Gothic 1" + + - [zCVob](zCVob.md) + {: .sp-class} + - zCZoneZFog + {: .sp-class} + - ZoneZFog + {: .sp-folder} + - [fogRangeCenter](#fograngecenter) = 0.0 + {: .sp-float} + - [innerRangePerc](#innerrangeperc) = 0.0 + {: .sp-float} + - [fogColor](#fogcolor) = 0 0 0 + {: .sp-color} + +=== "Gothic 2" + + - [zCVob](zCVob.md) + {: .sp-class} + - zCZoneZFog + {: .sp-class} + - ZoneZFog + {: .sp-folder} + - [fogRangeCenter](#fograngecenter) = 0.0 + {: .sp-float} + - [innerRangePerc](#innerrangeperc) = 0.0 + {: .sp-float} + - [fogColor](#fogcolor) = 0 0 0 + {: .sp-color} + - [fadeOutSky](#fadeoutsky) = FALSE + {: .sp-bool} + - [overrideColor](#overridecolor) = FALSE + {: .sp-bool} + +=== "Gothic 1 (Save)" + + - [zCVob](zCVob.md) + {: .sp-class} + - zCZoneZFog + {: .sp-class} + - ZoneZFog + {: .sp-folder} + - [fogRangeCenter](#fograngecenter) = 0.0 + {: .sp-float} + - [innerRangePerc](#innerrangeperc) = 0.0 + {: .sp-float} + - [fogColor](#fogcolor) = 0 0 0 + {: .sp-color} + +=== "Gothic 2 (Save)" + + - [zCVob](zCVob.md) + {: .sp-class} + - zCZoneZFog + {: .sp-class} + - ZoneZFog + {: .sp-folder} + - [fogRangeCenter](#fograngecenter) = 0.0 + {: .sp-float} + - [innerRangePerc](#innerrangeperc) = 0.0 + {: .sp-float} + - [fogColor](#fogcolor) = 0 0 0 + {: .sp-color} + - [fadeOutSky](#fadeoutsky) = FALSE + {: .sp-bool} + - [overrideColor](#overridecolor) = FALSE + {: .sp-bool} + +## Class member overview + +### `fogRangeCenter` {: .sp-float} + +The maximum distance of visibility if the player is in the center of the fog object. + + +### `innerRangePerc` {: .sp-float} + +Unknown. + +### `fogColor` {: .sp-color} + +The color of the fog. + +### `fadeOutSky` {: .sp-bool} + +Whether to hide the sky when the player is inside the fog. + +**Accepted values:** + +* `TRUE` — Do not show the skybox when the player is inside the fog. +* `FALSE` — Do show the skybox when the player is inside the fog. + +!!! warning + This property is only available in Gothic II. + +### `overrideColor` {: .sp-bool} + +Unclear. + +!!! warning + This property is only available in Gothic II. From 7475ef1d553d1d65168b2c5eea18b7ea8f9b5b46 Mon Sep 17 00:00:00 2001 From: Luis Michaelis Date: Fri, 23 Feb 2024 13:53:54 +0100 Subject: [PATCH 15/61] Add documentation for `zCZoneZFogDefault` --- .../worlds/Classes/zCZoneZFogDefault.md | 59 +++++++++++++++++++ 1 file changed, 59 insertions(+) create mode 100644 docs/zengin/worlds/Classes/zCZoneZFogDefault.md diff --git a/docs/zengin/worlds/Classes/zCZoneZFogDefault.md b/docs/zengin/worlds/Classes/zCZoneZFogDefault.md new file mode 100644 index 0000000000..74fdd7e4fc --- /dev/null +++ b/docs/zengin/worlds/Classes/zCZoneZFogDefault.md @@ -0,0 +1,59 @@ +# zCZoneZFogDefault + +!!! abstract inline end "Quick Infos" + **Class Name:** `zCZoneZFogDefault`
+ **Version Identifiers:**
+ — Gothic I: `12289`
+ — Gothic II: `52224`
+ **Sources:**
+ — [gothic-library.ru](http://www.gothic-library.ru/publ/class_zczonezfogdefault/1-1-0-10)
+ — [zk.gothickit.dev](https://zk.gothickit.dev/engine/objects/zCZoneZFogDefault/) + +A VObject which defines the default fog for the entire world. There may only be one of these objects in each world. +Its effect can be overridden using [zCZoneZFog](zCZoneZFog.md) objects. + +## Class members + +=== "Gothic 1" + + - [zCVob](zCVob.md) + {: .sp-class} + - [zCZoneZFog](zCZoneZFog.md) + {: .sp-class} + - zCZoneZFogDefault + {: .sp-class} + - <empty> + {: .sp-none} + +=== "Gothic 2" + + - [zCVob](zCVob.md) + {: .sp-class} + - [zCZoneZFog](zCZoneZFog.md) + {: .sp-class} + - zCZoneZFogDefault + {: .sp-class} + - <empty> + {: .sp-none} + +=== "Gothic 1 (Save)" + + - [zCVob](zCVob.md) + {: .sp-class} + - [zCZoneZFog](zCZoneZFog.md) + {: .sp-class} + - zCZoneZFogDefault + {: .sp-class} + - <empty> + {: .sp-none} + +=== "Gothic 2 (Save)" + + - [zCVob](zCVob.md) + {: .sp-class} + - [zCZoneZFog](zCZoneZFog.md) + {: .sp-class} + - zCZoneZFogDefault + {: .sp-class} + - <empty> + {: .sp-none} From 462e8ee3442012eedddf450bcc65d331e3d7b01e Mon Sep 17 00:00:00 2001 From: Luis Michaelis Date: Fri, 23 Feb 2024 14:02:25 +0100 Subject: [PATCH 16/61] Add documentation for `zCVobScreenFX` --- docs/zengin/worlds/Classes/zCVobScreenFX.md | 52 +++++++++++++++++++++ 1 file changed, 52 insertions(+) create mode 100644 docs/zengin/worlds/Classes/zCVobScreenFX.md diff --git a/docs/zengin/worlds/Classes/zCVobScreenFX.md b/docs/zengin/worlds/Classes/zCVobScreenFX.md new file mode 100644 index 0000000000..4e4b1ed066 --- /dev/null +++ b/docs/zengin/worlds/Classes/zCVobScreenFX.md @@ -0,0 +1,52 @@ +# zCVobScreenFX + +!!! abstract inline end "Quick Infos" + **Class Name:** `zCVobScreenFX`
+ **Version Identifiers:**
+ — Gothic I: `12289`
+ — Gothic II: `52224`
+ **Sources:**
+ — [spacerhilfedatei.sph](https://wiki.worldofgothic.de/doku.php?id=spacer:hilfedatei)
+ — [gothic-library.ru](http://www.gothic-library.ru/publ/zcvobscreenfx/1-1-0-525)
+ — [zk.gothickit.dev](https://zk.gothickit.dev/engine/objects/zCVobScreenFX/) + +Screen effect VObjects are used to create special effects. They are used for field-of-view changes, adding black bars +for a cinematic feel to the game and other post-processing effects. + +## Class members + +=== "Gothic 1" + + - [zCVob](zCVob.md) + {: .sp-class} + - zCVobScreenFX + {: .sp-class} + - <empty> + {: .sp-none} + +=== "Gothic 2" + + - [zCVob](zCVob.md) + {: .sp-class} + - zCVobScreenFX + {: .sp-class} + - <empty> + {: .sp-none} + +=== "Gothic 1 (Save)" + + - [zCVob](zCVob.md) + {: .sp-class} + - zCVobScreenFX + {: .sp-class} + - <empty> + {: .sp-none} + +=== "Gothic 2 (Save)" + + - [zCVob](zCVob.md) + {: .sp-class} + - zCVobScreenFX + {: .sp-class} + - <empty> + {: .sp-none} From 1abc309e0bf7ba5de29bb067aea27f038610af04 Mon Sep 17 00:00:00 2001 From: Luis Michaelis Date: Fri, 23 Feb 2024 14:02:36 +0100 Subject: [PATCH 17/61] Add documentation for `zCVobSound` --- docs/zengin/worlds/Classes/zCVobSound.md | 243 +++++++++++++++++++++++ 1 file changed, 243 insertions(+) create mode 100644 docs/zengin/worlds/Classes/zCVobSound.md diff --git a/docs/zengin/worlds/Classes/zCVobSound.md b/docs/zengin/worlds/Classes/zCVobSound.md new file mode 100644 index 0000000000..ebd4528380 --- /dev/null +++ b/docs/zengin/worlds/Classes/zCVobSound.md @@ -0,0 +1,243 @@ +# zCVobSound + +!!! abstract inline end "Quick Infos" + **Class Name:** `zCVobSound`
+ **Version Identifiers:**
+ — Gothic I: `12289`
+ — Gothic II: `12289`
+ **Sources:**
+ — [spacerhilfedatei.sph](https://wiki.worldofgothic.de/doku.php?id=spacer:hilfedatei)
+ — [gothic-library.ru](http://www.gothic-library.ru/publ/class_zcvobsound/1-1-0-701)
+ — [zk.gothickit.dev](https://zk.gothickit.dev/engine/objects/zCVobSound/) + +Emits a sound defined by a script instance in a given radius. The sound playback can be activated by sending an +`OnTrigger` event to the VObject and sending an `OnUntrigger` event disables the sound playback. + +## Class members + +=== "Gothic 1" + + - [zCVob](zCVob.md) + {: .sp-class} + - zCVobSound + {: .sp-class} + - Sound + {: .sp-folder} + - [sndVolume](#sndvolume) = 100 + {: .sp-float} + - [sndMode](#sndmode) = LOOPING + {: .sp-enum} + - [sndRandDelay](#sndranddelay) = 5 + {: .sp-float} + - [sndRandDelayVar](#sndranddelayvar) = 2 + {: .sp-float} + - [sndStartOn](#sndstarton) = TRUE + {: .sp-bool} + - [sndAmbient3D](#sndambient3d) = FALSE + {: .sp-bool} + - [sndObstruction](#sndobstruction) = FALSE + {: .sp-bool} + - [sndConeAngle](#sndconeangle) = 0 + {: .sp-float} + - [sndVolType](#sndvoltype) = SPHERE + {: .sp-enum} + - [sndRadius](#sndradius) = 1200 + {: .sp-float} + - [sndName](#sndname) = "" + {: .sp-string} + +=== "Gothic 2" + + - [zCVob](zCVob.md) + {: .sp-class} + - zCVobSound + {: .sp-class} + - Sound + {: .sp-folder} + - [sndVolume](#sndvolume) = 100 + {: .sp-float} + - [sndMode](#sndmode) = LOOPING + {: .sp-enum} + - [sndRandDelay](#sndranddelay) = 5 + {: .sp-float} + - [sndRandDelayVar](#sndranddelayvar) = 2 + {: .sp-float} + - [sndStartOn](#sndstarton) = TRUE + {: .sp-bool} + - [sndAmbient3D](#sndambient3d) = FALSE + {: .sp-bool} + - [sndObstruction](#sndobstruction) = FALSE + {: .sp-bool} + - [sndConeAngle](#sndconeangle) = 0 + {: .sp-float} + - [sndVolType](#sndvoltype) = SPHERE + {: .sp-enum} + - [sndRadius](#sndradius) = 1200 + {: .sp-float} + - [sndName](#sndname) = "" + {: .sp-string} + +=== "Gothic 1 (Save)" + + - [zCVob](zCVob.md) + {: .sp-class} + - zCVobSound + {: .sp-class} + - Sound + {: .sp-folder} + - [sndVolume](#sndvolume) = 100 + {: .sp-float} + - [sndMode](#sndmode) = LOOPING + {: .sp-enum} + - [sndRandDelay](#sndranddelay) = 5 + {: .sp-float} + - [sndRandDelayVar](#sndranddelayvar) = 2 + {: .sp-float} + - [sndStartOn](#sndstarton) = TRUE + {: .sp-bool} + - [sndAmbient3D](#sndambient3d) = FALSE + {: .sp-bool} + - [sndObstruction](#sndobstruction) = FALSE + {: .sp-bool} + - [sndConeAngle](#sndconeangle) = 0 + {: .sp-float} + - [sndVolType](#sndvoltype) = SPHERE + {: .sp-enum} + - [sndRadius](#sndradius) = 1200 + {: .sp-float} + - [sndName](#sndname) = "" + {: .sp-string} + - [soundIsRunning](#soundisrunning) = FALSE + {: .sp-bool} + - [soundAllowedToRun](#soundallowedtorun) = FALSE + {: .sp-bool} + +=== "Gothic 2 (Save)" + + - [zCVob](zCVob.md) + {: .sp-class} + - zCVobSound + {: .sp-class} + - Sound + {: .sp-folder} + - [sndVolume](#sndvolume) = 100 + {: .sp-float} + - [sndMode](#sndmode) = LOOPING + {: .sp-enum} + - [sndRandDelay](#sndranddelay) = 5 + {: .sp-float} + - [sndRandDelayVar](#sndranddelayvar) = 2 + {: .sp-float} + - [sndStartOn](#sndstarton) = TRUE + {: .sp-bool} + - [sndAmbient3D](#sndambient3d) = FALSE + {: .sp-bool} + - [sndObstruction](#sndobstruction) = FALSE + {: .sp-bool} + - [sndConeAngle](#sndconeangle) = 0 + {: .sp-float} + - [sndVolType](#sndvoltype) = SPHERE + {: .sp-enum} + - [sndRadius](#sndradius) = 1200 + {: .sp-float} + - [sndName](#sndname) = "" + {: .sp-string} + - [soundIsRunning](#soundisrunning) = FALSE + {: .sp-bool} + - [soundAllowedToRun](#soundallowedtorun) = FALSE + {: .sp-bool} + +## Class member overview + +### `sndVolume` {: .sp-float} + +The volume of the sound effect in percent (0-100). + +### `sndMode` {: .sp-enum} + +Determines how the sound effect is played. + +**Accepted values:** + +* `LOOPING` — The sound effect is repeated endlessly +* `ONCE` — The sound plays once +* `RANDOM` — The sound effect is repeated endlessly with a random delay between repetitions + +### `sndRandDelay` {: .sp-float} + +The average delay between repetitions in seconds if [`sndMode`](#sndmode) is `RANDOM`. + +!!! warning + Only relevant if [`sndMode`](#sndmode) is `RANDOM`. + +### `sndRandDelayVar` {: .sp-float} + +The maximum deviation of the random delay between repetitions if [`sndMode`](#sndmode) is `RANDOM`. The resulting +delay will be a value between [`sndRandDelay`](#sndranddelay) ± [`sndRandDelayVar`](#sndranddelayvar). + +!!! warning + Only relevant if [`sndMode`](#sndmode) is `RANDOM`. + +### `sndStartOn` {: .sp-bool} + +Whether to start the sound when loading the world. + +**Accepted values:** + +* `TRUE` — Start the sound when the world is loaded +* `FALSE` — Only start the sound in response to an `OnTrigger` event + +### `sndAmbient3D` {: .sp-bool} + +Determines whether the sound is an omnidirectional ambient sound. It will change volume depending on the distance +to this VObject, but it won't sound as if this VObject is emitting the effect. + +**Accepted values:** + +* `TRUE` — Emit an ambient sound effect +* `FALSE` — Emit a directional sound effect + +### `sndObstruction` {: .sp-bool} + +Whether to dampen the sound when there is no direct path from the VObject to the listener. + +**Accepted values:** + +* `TRUE` — The sound is dampened by obstructions +* `FALSE` — The sound is not dampened + +### `sndConeAngle` {: .sp-float} + +When set to a value other than `0`, determines a cone in front of the VObject in which the sound can be heard. +To listeners outside of that cone, the sound is not heard. Only values between `0` and `360` are valid. + +### `sndVolType` {: .sp-enum} + +Determines the type of volume used to check whether the sound can be heard. + +**Accepted values:** + +* `SV_SPHERE` — The sound the be heard in a sphere around this VObject. +* `SV_ELLIPSOID` — The sound can be heard within an ellipsoid defined by the VObject's bounding box. + +### `sndRadius` {: .sp-float} + +The radius in which the sound can be heard. + +### `sndName` {: .sp-string} + +The name of the script instance describing the sound. + +### `soundIsRunning` {: .sp-bool} + +Unknown. + +!!! warning + This property is only available in saved games. + +### `soundAllowedToRun` {: .sp-bool} + +Unknown. + +!!! warning + This property is only available in saved games. From 79877ea2553ea5a791bfdaefe6eeeba94e75c6fd Mon Sep 17 00:00:00 2001 From: Luis Michaelis Date: Fri, 23 Feb 2024 14:02:54 +0100 Subject: [PATCH 18/61] Add documentation for `zCVobSoundDaytime` --- .../worlds/Classes/zCVobSoundDaytime.md | 101 ++++++++++++++++++ 1 file changed, 101 insertions(+) create mode 100644 docs/zengin/worlds/Classes/zCVobSoundDaytime.md diff --git a/docs/zengin/worlds/Classes/zCVobSoundDaytime.md b/docs/zengin/worlds/Classes/zCVobSoundDaytime.md new file mode 100644 index 0000000000..c1fcb3a979 --- /dev/null +++ b/docs/zengin/worlds/Classes/zCVobSoundDaytime.md @@ -0,0 +1,101 @@ +# zCVobSoundDaytime + +!!! abstract inline end "Quick Infos" + **Class Name:** `zCVobSoundDaytime`
+ **Version Identifiers:**
+ — Gothic I: `12289`
+ — Gothic II: `12289`
+ **Sources:**
+ — [spacerhilfedatei.sph](https://wiki.worldofgothic.de/doku.php?id=spacer:hilfedatei)
+ — [gothic-library.ru](http://www.gothic-library.ru/publ/class_zcvobsounddaytime/1-1-0-702)
+ — [zk.gothickit.dev](https://zk.gothickit.dev/engine/objects/zCVobSoundDaytime/) + +Emits a sound defined by a script instance in a given radius during a given time during the day. Optionally, another +sound can be defined which is played outside the defined time range (example: birds during the day and crickets at night). + +## Class members + +=== "Gothic 1" + + - [zCVob](zCVob.md) + {: .sp-class} + - [zCVobSound](zCVobSound.md) + {: .sp-class} + - zCVobSoundDaytime + {: .sp-class} + - SoundDaytime + {: .sp-folder} + - [sndStartTime](#sndstarttime) = 0 + {: .sp-float} + - [sndEndTime](#sndendtime) = 0 + {: .sp-float} + - [sndName2](#sndname2) = "" + {: .sp-string} + +=== "Gothic 2" + + - [zCVob](zCVob.md) + {: .sp-class} + - [zCVobSound](zCVobSound.md) + {: .sp-class} + - zCVobSoundDaytime + {: .sp-class} + - SoundDaytime + {: .sp-folder} + - [sndStartTime](#sndstarttime) = 0 + {: .sp-float} + - [sndEndTime](#sndendtime) = 0 + {: .sp-float} + - [sndName2](#sndname2) = "" + {: .sp-string} + +=== "Gothic 1 (Save)" + + - [zCVob](zCVob.md) + {: .sp-class} + - [zCVobSound](zCVobSound.md) + {: .sp-class} + - zCVobSoundDaytime + {: .sp-class} + - SoundDaytime + {: .sp-folder} + - [sndStartTime](#sndstarttime) = 0 + {: .sp-float} + - [sndEndTime](#sndendtime) = 0 + {: .sp-float} + - [sndName2](#sndname2) = "" + {: .sp-string} + +=== "Gothic 2 (Save)" + + - [zCVob](zCVob.md) + {: .sp-class} + - [zCVobSound](zCVobSound.md) + {: .sp-class} + - zCVobSoundDaytime + {: .sp-class} + - SoundDaytime + {: .sp-folder} + - [sndStartTime](#sndstarttime) = 0 + {: .sp-float} + - [sndEndTime](#sndendtime) = 0 + {: .sp-float} + - [sndName2](#sndname2) = "" + {: .sp-string} + +## Class member overview + +### `sndStartTime` {: .sp-float} + +The time of day after which the sound can be heard (`13.5` corresponds to `13:30`). Must be less +than [`sndEndTime`](#sndendtime). + +### `sndEndTime` {: .sp-float} + +The time of day after which the sound can no longer be heard (`13.5` corresponds to `13:30`). Must be greater than +[`sndStartTime`](#sndstarttime). + +### `sndName2` {: .sp-string} + +The name of the script instance describing the sound to play outside the hours defined by +[`sndStartTime`](#sndstarttime) and [`sndendtime`](#sndendtime). May be empty. From 4def5674136baa6204b5af803056607339df2c35 Mon Sep 17 00:00:00 2001 From: Luis Michaelis Date: Fri, 23 Feb 2024 14:11:45 +0100 Subject: [PATCH 19/61] Add documentation for `zCTrigger` --- docs/zengin/worlds/Classes/zCTrigger.md | 335 ++++++++++++++++++++++++ 1 file changed, 335 insertions(+) create mode 100644 docs/zengin/worlds/Classes/zCTrigger.md diff --git a/docs/zengin/worlds/Classes/zCTrigger.md b/docs/zengin/worlds/Classes/zCTrigger.md new file mode 100644 index 0000000000..1903c0573f --- /dev/null +++ b/docs/zengin/worlds/Classes/zCTrigger.md @@ -0,0 +1,335 @@ +# zCTrigger + +!!! abstract inline end "Quick Infos" + **Class Name:** `zCTrigger`
+ **Version Identifiers:**
+ — Gothic I: `47105`
+ — Gothic II: `47105`
+ **Sources:**
+ — [spacerhilfedatei.sph](https://wiki.worldofgothic.de/doku.php?id=spacer:hilfedatei)
+ — [gothic-library.ru](http://www.gothic-library.ru/publ/class_zctrigger/1-1-0-529)
+ — [zk.gothickit.dev](https://zk.gothickit.dev/engine/objects/zCTrigger/) + +VObject to process and relay specific filtered events. When a `zCTrigger` receives an `OnTrigger`, `OnDamage`, or +`OnTouch` event it checks whether the event source (an `oCNpc`, the player or another VObject) should +be acknowledged (see [`respondToNPC`](#respondtonpc), [`respondToPC`](#respondtopc) and +[`respondToObject`](#respondToObject) respectively). It then verifies if it should react to the specific event by +checking the [`reactToOnTrigger`](#reacttoontrigger), [`reactToOnDamage`](#reacttoondamage) and +[`reactToOnTouch`](#reacttoontouch) properties. If both checks succeed, an `OnTrigger` event is sent to the +[`triggerTarget`](#triggertarget) and the trigger is considered to be *activated*. `zCTrigger` objects can be enabled +and disabled by firing `OnEnable`, `OnDisable` and `OnToggleEnabled` events at them. + +!!! tip + The `respondTo{Object,PC,NPC,VobName}` properties are logically linked by and "or" expression. + +## Class members + +=== "Gothic 1" + + - [zCVob](zCVob.md) + {: .sp-class} + - zCTrigger + {: .sp-class} + - [triggerTarget](#triggerTarget) = "" + {: .sp-string} + - Trigger + {: .sp-folder} + - ActivationFilter + {: .sp-folder} + - [reactToOnTrigger](#reacttoontrigger) = TRUE + {: .sp-bool} + - [reactToOnTouch](#reacttoontouch) = TRUE + {: .sp-bool} + - [reactToOnDamage](#reacttoondamage) = TRUE + {: .sp-bool} + - [respondToObject](#respondtoobject) = TRUE + {: .sp-bool} + - [respondToPC](#respondtopc) = TRUE + {: .sp-bool} + - [respondToNPC](#respondtonpc) = TRUE + {: .sp-bool} + - [startEnabled](#startenabled) = TRUE + {: .sp-bool} + - [respondToVobName](#respondtovobname) = "" + {: .sp-string} + - [numCanBeActivated](#numcanbeactivated) = -1 + {: .sp-int} + - [retriggerWaitSec](#retriggerwaitsec) = 0 + {: .sp-float} + - [damageThreshold](#damagethreshold) = 0 + {: .sp-float} + - FireBehavior + {: .sp-folder} + - [fireDelaySec](#firedelaysec) = 0 + {: .sp-float} + - [sendUntrigger](#senduntrigger) = TRUE + {: .sp-bool} + +=== "Gothic 2" + + - [zCVob](zCVob.md) + {: .sp-class} + - zCTrigger + {: .sp-class} + - [triggerTarget](#triggerTarget) = "" + {: .sp-string} + - Trigger + {: .sp-folder} + - ActivationFilter + {: .sp-folder} + - [reactToOnTrigger](#reacttoontrigger) = TRUE + {: .sp-bool} + - [reactToOnTouch](#reacttoontouch) = TRUE + {: .sp-bool} + - [reactToOnDamage](#reacttoondamage) = TRUE + {: .sp-bool} + - [respondToObject](#respondtoobject) = TRUE + {: .sp-bool} + - [respondToPC](#respondtopc) = TRUE + {: .sp-bool} + - [respondToNPC](#respondtonpc) = TRUE + {: .sp-bool} + - [startEnabled](#startenabled) = TRUE + {: .sp-bool} + - [respondToVobName](#respondtovobname) = "" + {: .sp-string} + - [numCanBeActivated](#numcanbeactivated) = -1 + {: .sp-int} + - [retriggerWaitSec](#retriggerwaitsec) = 0 + {: .sp-float} + - [damageThreshold](#damagethreshold) = 0 + {: .sp-float} + - FireBehavior + {: .sp-folder} + - [fireDelaySec](#firedelaysec) = 0 + {: .sp-float} + - [sendUntrigger](#senduntrigger) = TRUE + {: .sp-bool} + +=== "Gothic 1 (Save)" + + - [zCVob](zCVob.md) + {: .sp-class} + - zCTrigger + {: .sp-class} + - [triggerTarget](#triggerTarget) = "" + {: .sp-string} + - Trigger + {: .sp-folder} + - ActivationFilter + {: .sp-folder} + - [reactToOnTrigger](#reacttoontrigger) = TRUE + {: .sp-bool} + - [reactToOnTouch](#reacttoontouch) = TRUE + {: .sp-bool} + - [reactToOnDamage](#reacttoondamage) = TRUE + {: .sp-bool} + - [respondToObject](#respondtoobject) = TRUE + {: .sp-bool} + - [respondToPC](#respondtopc) = TRUE + {: .sp-bool} + - [respondToNPC](#respondtonpc) = TRUE + {: .sp-bool} + - [startEnabled](#startenabled) = TRUE + {: .sp-bool} + - [respondToVobName](#respondtovobname) = "" + {: .sp-string} + - [numCanBeActivated](#numcanbeactivated) = -1 + {: .sp-int} + - [retriggerWaitSec](#retriggerwaitsec) = 0 + {: .sp-float} + - [damageThreshold](#damagethreshold) = 0 + {: .sp-float} + - FireBehavior + {: .sp-folder} + - [fireDelaySec](#firedelaysec) = 0 + {: .sp-float} + - [sendUntrigger](#senduntrigger) = TRUE + {: .sp-bool} + - [nextTimeTriggerable](#nexttimetriggerable) = 0.0 + {: .sp-float} + - [savedOtherVob](#savedothervob) = NULL + {: .sp-class} + - [countCanBeActivated](#countcanbeactivated) + {: .sp-int} + +=== "Gothic 2 (Save)" + + - [zCVob](zCVob.md) + {: .sp-class} + - zCTrigger + {: .sp-class} + - [triggerTarget](#triggerTarget) = "" + {: .sp-string} + - Trigger + {: .sp-folder} + - ActivationFilter + {: .sp-folder} + - [reactToOnTrigger](#reacttoontrigger) = TRUE + {: .sp-bool} + - [reactToOnTouch](#reacttoontouch) = TRUE + {: .sp-bool} + - [reactToOnDamage](#reacttoondamage) = TRUE + {: .sp-bool} + - [respondToObject](#respondtoobject) = TRUE + {: .sp-bool} + - [respondToPC](#respondtopc) = TRUE + {: .sp-bool} + - [respondToNPC](#respondtonpc) = TRUE + {: .sp-bool} + - [startEnabled](#startenabled) = TRUE + {: .sp-bool} + - [respondToVobName](#respondtovobname) = "" + {: .sp-string} + - [numCanBeActivated](#numcanbeactivated) = -1 + {: .sp-int} + - [retriggerWaitSec](#retriggerwaitsec) = 0 + {: .sp-float} + - [damageThreshold](#damagethreshold) = 0 + {: .sp-float} + - FireBehavior + {: .sp-folder} + - [fireDelaySec](#firedelaysec) = 0 + {: .sp-float} + - [sendUntrigger](#senduntrigger) = TRUE + {: .sp-bool} + - [nextTimeTriggerable](#nexttimetriggerable) = 0.0 + {: .sp-float} + - [savedOtherVob](#savedothervob) = NULL + {: .sp-class} + - [countCanBeActivated](#countcanbeactivated) = 0 + {: .sp-int} + - [isEnabled](#isenabled) = TRUE + {: .sp-bool} + +## Class member overview + +### `triggerTarget` {: .sp-string} + +The name of VObject to send `OnTrigger` and `OnUntrigger` events to after processing. + +### `reactToOnTrigger` {: .sp-bool} + +Whether this trigger should react to `OnTrigger` events. + +**Accepted values:** + +* `TRUE` — Do react to `OnTrigger` events by sending an `OnTrigger` message to the [`triggerTarget`](#triggertarget) + If [`sendUntrigger`](#senduntrigger) is set to `TRUE`, also sends an `OnUntrigger` event to the [`triggerTarget`](#triggertarget) + if the trigger receives an `OnUntrigger` event. +* `FALSE` — Ignore `OnTrigger` events. + +### `reactToOnTouch` {: .sp-bool} + +Whether this trigger should react to `OnTouch` events. + +**Accepted values:** + +* `TRUE` — Do react to `OnTouch` events by sending an `OnTrigger` message to the [`triggerTarget`](#triggertarget) + If [`sendUntrigger`](#senduntrigger) is set to `TRUE`, also sends an `OnUntrigger` event to the [`triggerTarget`](#triggertarget) + if the trigger receives an `OnUntouch` event. +* `FALSE` — Ignore `OnTouch` events. + +### `reactToOnDamage` {: .sp-bool} + +Whether this trigger should react to `OnDamage` events. + +**Accepted values:** + +* `TRUE` — Do react to `OnDamage` events by sending an `OnTrigger` message to the [`triggerTarget`](#triggertarget) +* `FALSE` — Ignore `OnDamage` events. + +### `respondToObject` {: .sp-bool} + +Whether this trigger should process events coming from inanimate objects. + +**Accepted values:** + +* `TRUE` — Do process events from inanimate objects. +* `FALSE` — Ignore events from inanimate objects. + +### `respondToPC` {: .sp-bool} + +Whether this trigger should process events coming from the player. + +**Accepted values:** + +* `TRUE` — Do process events from the player. +* `FALSE` — Ignore events from the player. + +### `respondToNPC` {: .sp-bool} + +Whether this trigger should process events coming from NPCs. + +**Accepted values:** + +* `TRUE` — Do process events from NPCs. +* `FALSE` — Ignore events from NPCs. + +### `startEnabled` {: .sp-bool} + +Determines whether the trigger is initially enabled. Enabled triggers will process incoming events and send +outgoing events while disabled triggers do not. Triggers can be activated and deactivated at runtime by sending +them `OnEnable`, `OnDisable` or `OnToggleEnabled` events. + +**Accepted values:** + +* `TRUE` — Enable the trigger when the world is loaded. +* `FALSE` — Do not enable the trigger when the world is loaded. + +### `respondToVobName` {: .sp-string} + +Whether this trigger should process events coming from VObjects with this name. If empty, match no VObject +name directly. + +### `numCanBeActivated` {: .sp-int} + +The number of times the trigger will process incoming events. If set to `-1` the trigger will process +an infinite number of events. + +### `retriggerWaitSec` {: .sp-float} + +The number of seconds that have to elapse after processing an event before the trigger will process additional events. +All events received by the trigger during that time are ignored. + +### `damageThreshold` {: .sp-float} + +The amount of damage which must be dealt for the trigger to react to an `OnDamage` event. + +### `fireDelaySec` {: .sp-float} + +The number of seconds to wait before emitting the `OnTrigger` event after processing. + +### `sendUntrigger` {: .sp-bool} + +Whether to send and `OnUntrigger` event to the [`triggerTarget`](#triggertarget) after the trigger receives an +`OnUntrigger` or `OnUntouch` event. Only fires the `OnUntrigger` event if [`reactToOnTrigger`](#reacttoontrigger) +and [`reactToOnTouch`](#reacttoontouch) are set to `TRUE` respectively. + +### `nextTimeTriggerable` {: .sp-float} + +Unknown. + +!!! warning + This property is only available in saved games. + +### `savedOtherVob` {: .sp-class} + +Unknown. + +!!! warning + This property is only available in saved games. + +### `countCanBeActivated` {: .sp-int} + +Unknown. + +!!! warning + This property is only available in saved games. + +### `isEnabled` {: .sp-bool} + +Unknown. + +!!! warning + This property is only available in saved games made using Gothic II. From aebad5b3c71b643cc2f24f5a4dfc2453ea5d68d9 Mon Sep 17 00:00:00 2001 From: Luis Michaelis Date: Fri, 23 Feb 2024 14:11:51 +0100 Subject: [PATCH 20/61] Add documentation for `zCTriggerList` --- docs/zengin/worlds/Classes/zCTriggerList.md | 163 ++++++++++++++++++++ 1 file changed, 163 insertions(+) create mode 100644 docs/zengin/worlds/Classes/zCTriggerList.md diff --git a/docs/zengin/worlds/Classes/zCTriggerList.md b/docs/zengin/worlds/Classes/zCTriggerList.md new file mode 100644 index 0000000000..9da269919d --- /dev/null +++ b/docs/zengin/worlds/Classes/zCTriggerList.md @@ -0,0 +1,163 @@ +# zCTriggerList + +!!! abstract inline end "Quick Infos" + **Class Name:** `zCTriggerList`
+ **Version Identifiers:**
+ — Gothic I: `59776`
+ — Gothic II: `5505`
+ **Sources:**
+ — [spacerhilfedatei.sph](https://wiki.worldofgothic.de/doku.php?id=spacer:hilfedatei)
+ — [gothic-library.ru](http://www.gothic-library.ru/publ/class_zctriggerlist/1-1-0-534)
+ — [zk.gothickit.dev](https://zk.gothickit.dev/engine/objects/zCTriggerList/) + +A special trigger which emits the `OnTrigger` events emitted by the [`zCTrigger`](zCTrigger.md) to multiple targets. +How the events are sent can be configured through [`listProcess`](#listprocess). The +[`triggerTarget`](zCTrigger.md#triggertarget) and [`fireDelaySec`](zCTrigger.md#firedelaysec) properties of +[`zCTrigger`](zCTrigger.md) should be ignored. + +`OnUntrigger` events sent to the trigger list are propagated to all targets in the list. + +## Class members + +=== "Gothic 1" + + - [zCVob](zCVob.md) + {: .sp-class} + - [zCTrigger](zCTrigger.md) + {: .sp-class} + - zCTriggerList + {: .sp-class} + - TriggerList + {: .sp-folder} + - [listProcess](#listprocess) = LP_ALL + {: .sp-enum} + - [triggerTarget0](#triggertarget) = "" + {: .sp-string} + - [fireDelay0](#firedelay) = 0 + {: .sp-float} + - [triggerTarget1](#triggertarget) = "" + {: .sp-string} + - [fireDelay1](#firedelay) = 0 + {: .sp-float} + - [triggerTarget2](#triggertarget) = "" + {: .sp-string} + - [fireDelay2](#firedelay) = 0 + {: .sp-float} + +=== "Gothic 2" + + - [zCVob](zCVob.md) + {: .sp-class} + - [zCTrigger](zCTrigger.md) + {: .sp-class} + - zCTriggerList + {: .sp-class} + - TriggerList + {: .sp-folder} + - [listProcess](#listprocess) = LP_ALL + {: .sp-enum} + - [triggerTarget0](#triggertarget) = "" + {: .sp-string} + - [fireDelay0](#firedelay) = 0 + {: .sp-float} + - [triggerTarget1](#triggertarget) = "" + {: .sp-string} + - [fireDelay1](#firedelay) = 0 + {: .sp-float} + - [triggerTarget2](#triggertarget) = "" + {: .sp-string} + - [fireDelay2](#firedelay) = 0 + {: .sp-float} + +=== "Gothic 1 (Save)" + + - [zCVob](zCVob.md) + {: .sp-class} + - [zCTrigger](zCTrigger.md) + {: .sp-class} + - zCTriggerList + {: .sp-class} + - TriggerList + {: .sp-folder} + - [listProcess](#listprocess) = LP_ALL + {: .sp-enum} + - [triggerTarget0](#triggertarget) = "" + {: .sp-string} + - [fireDelay0](#firedelay) = 0 + {: .sp-float} + - [triggerTarget1](#triggertarget) = "" + {: .sp-string} + - [fireDelay1](#firedelay) = 0 + {: .sp-float} + - [triggerTarget2](#triggertarget) = "" + {: .sp-string} + - [fireDelay2](#firedelay) = 0 + {: .sp-float} + - [actTarget](#acttarget) = 0 + {: .sp-int} + - [sendOnTrigger](#sendontrigger) = TRUE + {: .sp-bool} + +=== "Gothic 2 (Save)" + + - [zCVob](zCVob.md) + {: .sp-class} + - [zCTrigger](zCTrigger.md) + {: .sp-class} + - zCTriggerList + {: .sp-class} + - TriggerList + {: .sp-folder} + - [listProcess](#listprocess) = LP_ALL + {: .sp-enum} + - [triggerTarget0](#triggertarget) = "" + {: .sp-string} + - [fireDelay0](#firedelay) = 0 + {: .sp-float} + - [triggerTarget1](#triggertarget) = "" + {: .sp-string} + - [fireDelay1](#firedelay) = 0 + {: .sp-float} + - [triggerTarget2](#triggertarget) = "" + {: .sp-string} + - [fireDelay2](#firedelay) = 0 + {: .sp-float} + - [actTarget](#acttarget) = 0 + {: .sp-int} + - [sendOnTrigger](#sendontrigger) = TRUE + {: .sp-bool} + +## Class member overview + +### `listProcess` {: .sp-enum} + +Controls how events are sent to the targets. + +**Accepted values:** + +* `LP_ALL` — Every target in the trigger list is sent the `OnTrigger` event sequentially. The [`fireDelay`](#firedelay) + of each target is taken into account so that target `n` is fired after `sum(fireDelay0, ..., fireDelayN-1)` seconds. +* `LP_NEXT_ONE` — The event is sent to the next target in the list. +* `LP_RAND_ONE` — The event is sent to a random target in the list. + +### `triggerTarget` {: .sp-string} + +The name of the VObject to send events to. Behaves like [`zCTrigger.triggerTarget`](zCTrigger.md#triggertarget). + +### `fireDelay` {: .sp-float} + +The delay after which to fire the event to the target. Behaves like [`zCTrigger.fireDelaySec`](zCTrigger.md#firedelaysec). + +### `actTarget` {: .sp-int} + +Unknown. + +!!! warning + This property is only available in saved games. + +### `sendOnTrigger` {: .sp-bool} + +Unknown. + +!!! warning + This property is only available in saved games. From 9f6929e747fd3ac852764de75a699fbf1aa04981 Mon Sep 17 00:00:00 2001 From: Luis Michaelis Date: Fri, 23 Feb 2024 14:11:55 +0100 Subject: [PATCH 21/61] Add documentation for `zCTriggerUntouch` --- .../zengin/worlds/Classes/zCTriggerUntouch.md | 57 +++++++++++++++++++ 1 file changed, 57 insertions(+) create mode 100644 docs/zengin/worlds/Classes/zCTriggerUntouch.md diff --git a/docs/zengin/worlds/Classes/zCTriggerUntouch.md b/docs/zengin/worlds/Classes/zCTriggerUntouch.md new file mode 100644 index 0000000000..9d0934884a --- /dev/null +++ b/docs/zengin/worlds/Classes/zCTriggerUntouch.md @@ -0,0 +1,57 @@ +# zCTriggerUntouch + +!!! abstract inline end "Quick Infos" + **Class Name:** `zCTriggerUntouch`
+ **Version Identifiers:**
+ — Gothic I: `52224`
+ — Gothic II: `52224`
+ **Sources:**
+ — [spacerhilfedatei.sph](https://wiki.worldofgothic.de/doku.php?id=spacer:hilfedatei)
+ — [zk.gothickit.dev](https://zk.gothickit.dev/engine/objects/zCTriggerUntouch/) + +A trigger which fires an `OnTrigger` event to its [`triggerTarget`](#triggertarget) if any `OnUntouch` event is emitted +from an inanimate object within the object's bounding box. + +## Class members + +=== "Gothic 1" + + - [zCVob](zCVob.md) + {: .sp-class} + - zCTriggerUntouch + {: .sp-class} + - [triggerTarget](#triggertarget) = "" + {: .sp-string} + +=== "Gothic 2" + + - [zCVob](zCVob.md) + {: .sp-class} + - zCTriggerUntouch + {: .sp-class} + - [triggerTarget](#triggertarget) = "" + {: .sp-string} + +=== "Gothic 1 (Save)" + + - [zCVob](zCVob.md) + {: .sp-class} + - zCTriggerUntouch + {: .sp-class} + - [triggerTarget](#triggertarget) = "" + {: .sp-string} + +=== "Gothic 2 (Save)" + + - [zCVob](zCVob.md) + {: .sp-class} + - zCTriggerUntouch + {: .sp-class} + - [triggerTarget](#triggertarget) = "" + {: .sp-string} + +## Class member overview + +### `triggerTarget` {: .sp-string} + +The name of VObject to send the `OnTrigger` events to. From 63fe3a920d85fdf76480ac3f27c5061f2451829d Mon Sep 17 00:00:00 2001 From: Luis Michaelis Date: Fri, 23 Feb 2024 14:12:01 +0100 Subject: [PATCH 22/61] Add documentation for `zCTriggerWorldStart` --- .../worlds/Classes/zCTriggerWorldStart.md | 73 +++++++++++++++++++ 1 file changed, 73 insertions(+) create mode 100644 docs/zengin/worlds/Classes/zCTriggerWorldStart.md diff --git a/docs/zengin/worlds/Classes/zCTriggerWorldStart.md b/docs/zengin/worlds/Classes/zCTriggerWorldStart.md new file mode 100644 index 0000000000..1927ed2377 --- /dev/null +++ b/docs/zengin/worlds/Classes/zCTriggerWorldStart.md @@ -0,0 +1,73 @@ +# zCTriggerWorldStart + +!!! abstract inline end "Quick Infos" + **Class Name:** `zCTriggerWorldStart`
+ **Version Identifiers:**
+ — Gothic I: `52224`
+ — Gothic II: `52224`
+ **Sources:**
+ — [spacerhilfedatei.sph](https://wiki.worldofgothic.de/doku.php?id=spacer:hilfedatei)
+ — [zk.gothickit.dev](https://zk.gothickit.dev/engine/objects/zCTriggerUntouch/) + +A special trigger which fires an `OnTrigger` event to its [target](#triggertarget) when the world is loaded and started. + +## Class members + +=== "Gothic 1" + + - [zCVob](zCVob.md) + {: .sp-class} + - zCTriggerWorldStart + {: .sp-class} + - [triggerTarget](#triggertarget) = "" + {: .sp-string} + - [fireOnlyFirstTime](#fireonlyfirsttime) = FALSE + {: .sp-bool} + +=== "Gothic 2" + + - [zCVob](zCVob.md) + {: .sp-class} + - zCTriggerWorldStart + {: .sp-class} + - [triggerTarget](#triggertarget) = "" + {: .sp-string} + - [fireOnlyFirstTime](#fireonlyfirsttime) = FALSE + {: .sp-bool} + +=== "Gothic 1 (Save)" + + - [zCVob](zCVob.md) + {: .sp-class} + - zCTriggerWorldStart + {: .sp-class} + - [triggerTarget](#triggertarget) = "" + {: .sp-string} + - [fireOnlyFirstTime](#fireonlyfirsttime) = FALSE + {: .sp-bool} + +=== "Gothic 2 (Save)" + + - [zCVob](zCVob.md) + {: .sp-class} + - zCTriggerWorldStart + {: .sp-class} + - [triggerTarget](#triggertarget) = "" + {: .sp-string} + - [fireOnlyFirstTime](#fireonlyfirsttime) = FALSE + {: .sp-bool} + +## Class member overview + +### `triggerTarget` {: .sp-string} + +The name of VObject to send an `OnTrigger` event to when the world is loaded and started. + +### `fireOnlyFirstTime` {: .sp-bool} + +Determines whether to fire the `OnTrigger` event only the first time the world is loaded. + +**Accepted values:** + +* `TRUE` — Only fire the event if this is the first time the world is loaded. +* `FALSE` — Fire the event every time the world is loaded. From de990722a94a3a0b2c93d269d9400fe668c0a037 Mon Sep 17 00:00:00 2001 From: Luis Michaelis Date: Fri, 23 Feb 2024 14:23:16 +0100 Subject: [PATCH 23/61] Add documentation for `zCEarthquake` --- docs/zengin/worlds/Classes/zCEarthquake.md | 72 ++++++++++++++++++++++ 1 file changed, 72 insertions(+) create mode 100644 docs/zengin/worlds/Classes/zCEarthquake.md diff --git a/docs/zengin/worlds/Classes/zCEarthquake.md b/docs/zengin/worlds/Classes/zCEarthquake.md new file mode 100644 index 0000000000..f04cb1de22 --- /dev/null +++ b/docs/zengin/worlds/Classes/zCEarthquake.md @@ -0,0 +1,72 @@ +# zCEarthquake + +!!! abstract inline end "Quick Infos" + **Class Name:** `zCEarthquake`
+ **Version Identifiers:**
+ — Gothic I: *Unused*
+ — Gothic II: `52224`
+ **Sources:**
+ — [spacerhilfedatei.sph](https://wiki.worldofgothic.de/doku.php?id=spacer:hilfedatei)
+ — [gothic-library.ru](http://www.gothic-library.ru/publ/zcearthquake/1-1-0-516)
+ — [zk.gothickit.dev](https://zk.gothickit.dev/engine/objects/zCEarthquake/) + + +A VObject used to create an earthquake effect when it receives an `OnTrigger` event. An earthquake is represented +by a shaking camera. + +!!! warning + This VObject is only available in Gothic II. + +## Class members + +=== "Gothic 1" + + *Unavailable* + +=== "Gothic 2" + + - [zCVob](zCVob.md) + {: .sp-class} + - zCEarthquake + {: .sp-class} + - Earthquake + {: .sp-folder} + - [radius](#radius) = 200 + {: .sp-float} + - [timeSec](#timeSec) = 5 + {: .sp-float} + - [amplitudeCM](#amplitudeCM) = 0 + {: .sp-vec} + +=== "Gothic 1 (Save)" + + *Unavailable* + +=== "Gothic 2 (Save)" + + - [zCVob](zCVob.md) + {: .sp-class} + - zCEarthquake + {: .sp-class} + - Earthquake + {: .sp-folder} + - [radius](#radius) = 200 + {: .sp-float} + - [timeSec](#timeSec) = 5 + {: .sp-float} + - [amplitudeCM](#amplitudeCM) = 0 + {: .sp-vec} + +## Class member overview + +### `radius` {: .sp-float} + +The radius of the earthquake effect + +### `timeSec` {: .sp-float} + +The duration of the earthquake effect in seconds. + +### `amplitudeCM` {: .sp-float} + +The amplitude of the earthquake effect. From b7938c150375dcebe7e8f328be590bc87721d63f Mon Sep 17 00:00:00 2001 From: Luis Michaelis Date: Fri, 23 Feb 2024 14:23:23 +0100 Subject: [PATCH 24/61] Add documentation for `zCMessageFilter` --- docs/zengin/worlds/Classes/zCMessageFilter.md | 100 ++++++++++++++++++ 1 file changed, 100 insertions(+) create mode 100644 docs/zengin/worlds/Classes/zCMessageFilter.md diff --git a/docs/zengin/worlds/Classes/zCMessageFilter.md b/docs/zengin/worlds/Classes/zCMessageFilter.md new file mode 100644 index 0000000000..d53f948679 --- /dev/null +++ b/docs/zengin/worlds/Classes/zCMessageFilter.md @@ -0,0 +1,100 @@ +# zCMessageFilter + +!!! abstract inline end "Quick Infos" + **Class Name:** `zCMessageFilter`
+ **Version Identifiers:**
+ — Gothic I: `0`
+ — Gothic II: `0`
+ **Sources:**
+ — [spacerhilfedatei.sph](https://wiki.worldofgothic.de/doku.php?id=spacer:hilfedatei)
+ — [zk.gothickit.dev](https://zk.gothickit.dev/engine/objects/zCMessageFilter/) + +Transforms any incoming `OnTrigger` and `OnUntrigger` events before passing them on to the trigger target. + +## Class members + +=== "Gothic 1" + + - [zCVob](zCVob.md) + {: .sp-class} + - zCMessageFilter + {: .sp-class} + - [triggerTarget](#triggertarget) = "" + {: .sp-string} + - [onTrigger](#ontrigger) = MT_TRIGGER + {: .sp-enum} + - [onUntrigger](#onuntrigger) = MT_UNTRIGGER + {: .sp-enum} + +=== "Gothic 2" + + - [zCVob](zCVob.md) + {: .sp-class} + - zCMessageFilter + {: .sp-class} + - [triggerTarget](#triggertarget) = "" + {: .sp-string} + - [onTrigger](#ontrigger) = MT_TRIGGER + {: .sp-enum} + - [onUntrigger](#onuntrigger) = MT_UNTRIGGER + {: .sp-enum} + +=== "Gothic 1 (Save)" + + - [zCVob](zCVob.md) + {: .sp-class} + - zCMessageFilter + {: .sp-class} + - [triggerTarget](#triggertarget) = "" + {: .sp-string} + - [onTrigger](#ontrigger) = MT_TRIGGER + {: .sp-enum} + - [onUntrigger](#onuntrigger) = MT_UNTRIGGER + {: .sp-enum} + +=== "Gothic 2 (Save)" + + - [zCVob](zCVob.md) + {: .sp-class} + - zCMessageFilter + {: .sp-class} + - [triggerTarget](#triggertarget) = "" + {: .sp-string} + - [onTrigger](#ontrigger) = MT_TRIGGER + {: .sp-enum} + - [onUntrigger](#onuntrigger) = MT_UNTRIGGER + {: .sp-enum} + +## Class member overview + +### `triggerTarget` {: .sp-string} + +The name of the target VObject. All `OnTrigger` and `OnUntrigger` messages received by this `zCMessageFilter` +VObject are transformed according to [`onTrigger`](#ontrigger) and [`onUntrigger`](#onuntrigger) and then +passed on to the VObject with the name specified in this field. + +### `onTrigger` {: .sp-enum} + +The type of event to emit to the [`triggerTarget`](#triggertarget) if this VObject receives an `OnTrigger` message. + +**Accepted values:** + +* `MT_NONE` — Don't emit another event. +* `MT_TRIGGER` — Emit an `OnTrigger` event. +* `MT_UNTRIGGER` — Emit an `OnUntrigger` event. +* `MT_ENABLE` — Emit an `Enable` event. +* `MT_DISABLE` — Emit a `Disable` event. +* `MT_TOGGLE_ENABLED` — Emit a `ToggleEnabled` event. + +### `onUntrigger` {: .sp-enum} + +The type of event to emit to the [`triggerTarget`](#triggertarget) if this VObject receives an `OnUntrigger` message. + +**Accepted values:** + +* `MT_NONE` — Don't emit another event. +* `MT_TRIGGER` — Emit an `OnTrigger` event. +* `MT_UNTRIGGER` — Emit an `OnUntrigger` event. +* `MT_ENABLE` — Emit an `Enable` event. +* `MT_DISABLE` — Emit a `Disable` event. +* `MT_TOGGLE_ENABLED` — Emit a `ToggleEnabled` event. From 82b3a9347af0042bfacb4d4f9b36764b75da3e89 Mon Sep 17 00:00:00 2001 From: Luis Michaelis Date: Fri, 23 Feb 2024 14:23:29 +0100 Subject: [PATCH 25/61] Add documentation for `zCMover` --- docs/zengin/worlds/Classes/zCMover.md | 461 ++++++++++++++++++++++++++ 1 file changed, 461 insertions(+) create mode 100644 docs/zengin/worlds/Classes/zCMover.md diff --git a/docs/zengin/worlds/Classes/zCMover.md b/docs/zengin/worlds/Classes/zCMover.md new file mode 100644 index 0000000000..e67f728917 --- /dev/null +++ b/docs/zengin/worlds/Classes/zCMover.md @@ -0,0 +1,461 @@ +# zCMover + +!!! abstract inline end "Quick Infos" + **Class Name:** `zCMover`
+ **Version Identifiers:**
+ — Gothic I: `39936`
+ — Gothic II: `39936`
+ **Sources:**
+ — [spacerhilfedatei.sph](https://wiki.worldofgothic.de/doku.php?id=spacer:hilfedatei)
+ — [gothic-library.ru](http://www.gothic-library.ru/publ/class_zcmover/1-1-0-533)
+ — [zk.gothickit.dev](https://zk.gothickit.dev/engine/objects/zCMover/) + + +A VObject which can move along a pre-determined path in response to an event. Movers can be controlled through a set of +keyframes or the animation of their visuals. If the visual has an attached animation to be used as the mover's animation, +it must have the following animations which are run depending on the mover's state: `S_OPEN`, `S_CLOSED`, `T_CLOSED_2_OPEN`, +`T_OPEN_2_CLOSED`, `S_LOCKED`, `S_UNLOCKED`, `T_UNLOCKED_TO_LOCKED`, `T_LOCKED_TO_UNLOCKED`. + +Each mover is in one of three states, "open", "closed" or "moving". Keyframe `0` (or `S_OPEN` when using the visual's +animation) corresponds to the "open" state while the last keyframe (or `S_CLOSED`) corresponds to the "closed" state. +When transitioning between the "open" and "closed" states, the mover is in the "moving" state during which it +sequentially moves between its keyframes (or runs the `T_CLOSED_2_OPEN` or `T_OPEN_TO_CLOSED` animations). Movers with +their [`moverBehavior`](#moverbehavior) set to `NSTATE_SINGLE_KEYS` are an exception to this rule: each keyframe can +individually be addressed as a state. + +Movers are specialized triggers. Before beginning their animation, movers first filter the incoming events as per the +[`zCTrigger`](zCTrigger.md)'s rules and only start the animation if the event passes through the filters. When the mover reaches +the "open" state after being activated, it emits an `OnTrigger` event according to the fire behavior set for the +[`zCTrigger`](zCTrigger.md). Similarly, when it reaches the "closed" state it emits an `OnUntrigger` event. + +Movers can be enabled and disabled using the `OnEnable`, `OnDisable` and `OnToggleDisabled` events. + +## Class members + +=== "Gothic 1" + + - [zCVob](zCVob.md) + {: .sp-class} + - [zCTrigger](zCTrigger.md) + {: .sp-class} + - zCMover + {: .sp-class} + - Mover + {: .sp-folder} + - [moverBehavior](#moverbehavior) = 2STATE_TOGGLE + {: .sp-enum} + - [touchBlockerDamage](#touchblockerdamage) = 0.0 + {: .sp-float} + - [stayOpenTimeSec](#stayopentimesec) = 0.0 + {: .sp-float} + - [moverLocked](#moverlocked) = FALSE + {: .sp-bool} + - [autoLinkEnabled](#autolinkenabled) = FALSE + {: .sp-bool} + - Keyframe + {: .sp-folder} + - [numKeyframes](#numkeyframes) = 0 + {: .sp-int} + - [moveSpeed](#movespeed) = 0.0 + {: .sp-float} + - [posLerpType](#poslerptype) = CURVE + {: .sp-enum} + - [speedType](#speedtype) = CONST + {: .sp-enum} + - Sound + {: .sp-folder} + - [sfxOpenStart](#sfxopenstart) = "" + {: .sp-string} + - [sfxOpenEnd](#sfxopenend) = "" + {: .sp-string} + - [sfxMoving](#sfxmoving) = "" + {: .sp-string} + - [sfxCloseStart](#sfxclosestart) = "" + {: .sp-string} + - [sfxCloseEnd](#sfxcloseend) = "" + {: .sp-string} + - [sfxLock](#sfxlock) = "" + {: .sp-string} + - [sfxUnlock](#sfxunlock) = "" + {: .sp-string} + - [sfxUseLocked](#sfxuselocked) = "" + {: .sp-string} + +=== "Gothic 2" + + - [zCVob](zCVob.md) + {: .sp-class} + - [zCTrigger](zCTrigger.md) + {: .sp-class} + - zCMover + {: .sp-class} + - Mover + {: .sp-folder} + - [moverBehavior](#moverbehavior) = 2STATE_TOGGLE + {: .sp-enum} + - [touchBlockerDamage](#touchblockerdamage) = 0.0 + {: .sp-float} + - [stayOpenTimeSec](#stayopentimesec) = 0.0 + {: .sp-float} + - [moverLocked](#moverlocked) = FALSE + {: .sp-bool} + - [autoLinkEnabled](#autolinkenabled) = FALSE + {: .sp-bool} + - [autoRotate](#autorotate) = FALSE + {: .sp-bool} + - Keyframe + {: .sp-folder} + - [numKeyframes](#numkeyframes) = 0 + {: .sp-int} + - [moveSpeed](#movespeed) = 0.0 + {: .sp-float} + - [posLerpType](#poslerptype) = CURVE + {: .sp-enum} + - [speedType](#speedtype) = CONST + {: .sp-enum} + - Sound + {: .sp-folder} + - [sfxOpenStart](#sfxopenstart) = "" + {: .sp-string} + - [sfxOpenEnd](#sfxopenend) = "" + {: .sp-string} + - [sfxMoving](#sfxmoving) = "" + {: .sp-string} + - [sfxCloseStart](#sfxclosestart) = "" + {: .sp-string} + - [sfxCloseEnd](#sfxcloseend) = "" + {: .sp-string} + - [sfxLock](#sfxlock) = "" + {: .sp-string} + - [sfxUnlock](#sfxunlock) = "" + {: .sp-string} + - [sfxUseLocked](#sfxuselocked) = "" + {: .sp-string} + +=== "Gothic 1 (Save)" + + - [zCVob](zCVob.md) + {: .sp-class} + - [zCTrigger](zCTrigger.md) + {: .sp-class} + - zCMover + {: .sp-class} + - Mover + {: .sp-folder} + - [moverBehavior](#moverbehavior) = 2STATE_TOGGLE + {: .sp-enum} + - [touchBlockerDamage](#touchblockerdamage) = 0.0 + {: .sp-float} + - [stayOpenTimeSec](#stayopentimesec) = 0.0 + {: .sp-float} + - [moverLocked](#moverlocked) = FALSE + {: .sp-bool} + - [autoLinkEnabled](#autolinkenabled) = FALSE + {: .sp-bool} + - Keyframe + {: .sp-folder} + - [numKeyframes](#numkeyframes) = 0 + {: .sp-int} + - [moveSpeed](#movespeed) = 0.0 + {: .sp-float} + - [posLerpType](#poslerptype) = CURVE + {: .sp-enum} + - [speedType](#speedtype) = CONST + {: .sp-enum} + - [actKeyPosDelta](#actkeyposdelta) = 0 0 0 + {: .sp-vec} + - [actKeyframeF](#actkeyframef) = 0.0 + {: .sp-float} + - [actKeyframe](#actkeyframe) = 0 + {: .sp-int} + - [nextKeyframe](#nextkeyframe) = 0 + {: .sp-int} + - [moveSpeedUnit](#movespeedunit) = 0.0 + {: .sp-float} + - [advanceDir](#advancedir) = 0.0 + {: .sp-float} + - [moverState](#moverstate) = ? + {: .sp-enum} + - [numTriggerEvents](#numtriggerevents) = 0 + {: .sp-int} + - [stayOpenTimeDest](#stayopentimedest) = 0.0 + {: .sp-float} + - Sound + {: .sp-folder} + - [sfxOpenStart](#sfxopenstart) = "" + {: .sp-string} + - [sfxOpenEnd](#sfxopenend) = "" + {: .sp-string} + - [sfxMoving](#sfxmoving) = "" + {: .sp-string} + - [sfxCloseStart](#sfxclosestart) = "" + {: .sp-string} + - [sfxCloseEnd](#sfxcloseend) = "" + {: .sp-string} + - [sfxLock](#sfxlock) = "" + {: .sp-string} + - [sfxUnlock](#sfxunlock) = "" + {: .sp-string} + - [sfxUseLocked](#sfxuselocked) = "" + {: .sp-string} + +=== "Gothic 2 (Save)" + + - [zCVob](zCVob.md) + {: .sp-class} + - [zCTrigger](zCTrigger.md) + {: .sp-class} + - zCMover + {: .sp-class} + - Mover + {: .sp-folder} + - [moverBehavior](#moverbehavior) = 2STATE_TOGGLE + {: .sp-enum} + - [touchBlockerDamage](#touchblockerdamage) = 0.0 + {: .sp-float} + - [stayOpenTimeSec](#stayopentimesec) = 0.0 + {: .sp-float} + - [moverLocked](#moverlocked) = FALSE + {: .sp-bool} + - [autoLinkEnabled](#autolinkenabled) = FALSE + {: .sp-bool} + - [autoRotate](#autorotate) = FALSE + {: .sp-bool} + - Keyframe + {: .sp-folder} + - [numKeyframes](#numkeyframes) = 0 + {: .sp-int} + - [moveSpeed](#movespeed) = 0.0 + {: .sp-float} + - [posLerpType](#poslerptype) = CURVE + {: .sp-enum} + - [speedType](#speedtype) = CONST + {: .sp-enum} + - [actKeyPosDelta](#actkeyposdelta) = 0 0 0 + {: .sp-vec} + - [actKeyframeF](#actkeyframef) = 0.0 + {: .sp-float} + - [actKeyframe](#actkeyframe) = 0 + {: .sp-int} + - [nextKeyframe](#nextkeyframe) = 0 + {: .sp-int} + - [moveSpeedUnit](#movespeedunit) = 0.0 + {: .sp-float} + - [advanceDir](#advancedir) = 0.0 + {: .sp-float} + - [moverState](#moverstate) = ? + {: .sp-enum} + - [numTriggerEvents](#numtriggerevents) = 0 + {: .sp-int} + - [stayOpenTimeDest](#stayopentimedest) = 0.0 + {: .sp-float} + - Sound + {: .sp-folder} + - [sfxOpenStart](#sfxopenstart) = "" + {: .sp-string} + - [sfxOpenEnd](#sfxopenend) = "" + {: .sp-string} + - [sfxMoving](#sfxmoving) = "" + {: .sp-string} + - [sfxCloseStart](#sfxclosestart) = "" + {: .sp-string} + - [sfxCloseEnd](#sfxcloseend) = "" + {: .sp-string} + - [sfxLock](#sfxlock) = "" + {: .sp-string} + - [sfxUnlock](#sfxunlock) = "" + {: .sp-string} + - [sfxUseLocked](#sfxuselocked) = "" + {: .sp-string} + +## Class member overview + +### `moverBehavior` {: .sp-enum} + +Controls how the mover behaves in response to events ("activation"). + +**Accepted values:** + +* `2STATE_TOGGLE` — Receiving either event causes the state of the mover to swap. The direction + of the animation is reversed. +* `2STATE_TRIGGER_CTRL` — An `OnTrigger` causes the mover to transition to the "open" state while an `OnUntrigger` + event causes the mover to transition to the "closed" state. +* `2STATE_OPEN_TIMED` — An `OnTrigger` event causes the mover to transition to the "open" state. It than transitions + to the "closed" state after a fixed amount of time specified by [`stayOpenTimeSec`](#stayopentimesec). +* `NSTATE_LOOP` — The mover opens and closes in a loop indefinitely. +* `NSTATE_SINGLE_KEYS` — The mover can transition to each keyframe separately. Often used in conjunction + with a [`zCMoverController`](zCMoverControler). + +### `touchBlockerDamage` {: .sp-float} + +The amount of damage to deal to objects in the way of the mover. + +### `stayOpenTimeSec` {: .sp-float} + +The number of seconds a mover with the `2STATE_OPEN_TIMED` [behavior](#moverbehavior) stays in the "open" +state until transitioning to the "closed" state again. + +!!! warning + Only relevant if [`moverBehavior`](#moverbehavior) is `2STATE_OPEN_TIMED`. + +### `moverLocked` {: .sp-bool} + +Unclear. + +### `autoLinkEnabled` {: .sp-bool} + +Determines whether the position of the object triggering the mover should be tied to the mover's position. + +**Accepted values:** + +* `TRUE` — When the mover transitions, the position of the triggering object follows the position of the mover. +* `FALSE` — The triggering object's position is uncoupled from the position of the mover. + +### `autoRotate` {: .sp-bool} + +Whether to automatically rotate the mover along its movement trajectory. For example, this is used for making fish +always face in the direction they're moving. + +**Accepted values:** + +* `TRUE` — Automatically face the mover forward along its trajectory. +* `FALSE` — Never automatically rotate the mover. + +!!! warning + Only available in Gothic II. + +### `numKeyframes` {: .sp-int} + +Unclear. + +### `moveSpeed` {: .sp-float} + +The movement speed for transitioning between keyframes in units per millisecond. + +!!! warning + Only relevant if manually specified keyframes are used. Ignored when using the visual for the animation. + +### `posLerpType` {: .sp-enum} + +Defines how the mover should interpolate between the keyframe positions. Only affects the mover's position, +never its rotation. + +**Accepted values:** + +* `CURVE` — Smoothly transition between keyframes. +* `LINEAR` — Linearly transition between keyframes. + +!!! warning + Only relevant if manually specified keyframes are used. Ignored when using the visual for the animation. + +### `speedType` {: .sp-enum} + +Controls the acceleration and deceleration behavior of the mover. + +**Accepted values:** + +* `CONST` — Mover with a constant speed. +* `SLOW_START_END` — Slowly accelerate at the first keyframe and decelerate at the last keyframe. +* `SLOW_START` — Slowly accelerate at the first keyframe but don't decelerate at the end. +* `SLOW_END` — Slowly decelerate at the last keyframe but don't accelerate at the start. +* `SEG_SLOW_START_END` — Slowly accelerate at the beginning of each keyframe and decelerate at the end of each keyframe. +* `SEG_SLOW_START` — Slowly accelerate at the beginning of each keyframe but don't decelerate at the end. +* `SEG_SLOW_END` — Slowly decelerate at the end of each keyframe but don't accelerate at the beginning. + +!!! warning + Only relevant if manually specified keyframes are used. Ignored when using the visual for the animation. + +### `sfxOpenStart` {: .sp-string} + +The name of the sound to play at the beginning of the opening sequence. + +### `sfxOpenEnd` {: .sp-string} + +The name of the sound to play at the end of the opening sequence. + +### `sfxMoving` {: .sp-string} + +The name of the sound to play in a loop while the mover is transitioning between keyframes. + +### `sfxCloseStart` {: .sp-string} + +The name of the sound to play at the beginning of the closing sequence. + +### `sfxCloseEnd` {: .sp-string} + +The name of the sound to play at the end of the closing sequence. + +### `sfxLock` {: .sp-string} + +The name of the sound to play when locking a mover. + +### `sfxUnlock` {: .sp-string} + +The name of the sound to play when unlocking a mover. + +### `sfxUseLocked` {: .sp-string} + +The name of the sound to play when using a locked mover. + +### `actKeyPosDelta` {: .sp-vec} + +Unknown. + +!!! warning + This property is only available in saved games. + +### `actKeyframeF` {: .sp-float} + +Unknown. + +!!! warning + This property is only available in saved games. + +### `actKeyframe` {: .sp-int} + +Unknown. + +!!! warning + This property is only available in saved games. + +### `nextKeyframe` {: .sp-int} + +Unknown. + +!!! warning + This property is only available in saved games. + +### `moveSpeedUnit` {: .sp-float} + +Unknown. + +!!! warning + This property is only available in saved games. + +### `advanceDir` {: .sp-float} + +Unknown. + +!!! warning + This property is only available in saved games. + +### `moverState` {: .sp-enum} + +Unknown. + +!!! warning + This property is only available in saved games. + +### `numTriggerEvents` {: .sp-int} + +Unknown. + +!!! warning + This property is only available in saved games. + +### `stayOpenTimeDest` {: .sp-float} + +Unknown. + +!!! warning + This property is only available in saved games. From 2c67cf7716652afee50b423e458588b6f901a97b Mon Sep 17 00:00:00 2001 From: Luis Michaelis Date: Fri, 23 Feb 2024 14:23:33 +0100 Subject: [PATCH 26/61] Add documentation for `zCMoverControler` --- .../zengin/worlds/Classes/zCMoverControler.md | 96 +++++++++++++++++++ 1 file changed, 96 insertions(+) create mode 100644 docs/zengin/worlds/Classes/zCMoverControler.md diff --git a/docs/zengin/worlds/Classes/zCMoverControler.md b/docs/zengin/worlds/Classes/zCMoverControler.md new file mode 100644 index 0000000000..a1f982aa7c --- /dev/null +++ b/docs/zengin/worlds/Classes/zCMoverControler.md @@ -0,0 +1,96 @@ +# zCMoverControler + +!!! abstract inline end "Quick Infos" + **Class Name:** `zCMoverControler`
+ **Version Identifiers:**
+ — Gothic I: `0`
+ — Gothic II: `0`
+ **Sources:**
+ — [spacerhilfedatei.sph](https://wiki.worldofgothic.de/doku.php?id=spacer:hilfedatei)
+ — [gothic-library.ru](http://www.gothic-library.ru/publ/class_zcmovercontroler/1-1-0-528)
+ — [zk.gothickit.dev](https://zk.gothickit.dev/engine/objects/zCMoverController/) + +A VObject used to control [`zCMover`](zCMover.md) objects of type `NSTATE_SINGLE_KEYS` specifically. +`zCMoverControler` objects react to incoming `OnTrigger` events to send a pre-configured event to the target mover +object, controlling its animation. Mover controllers can make movers go to a specific keyframe in their animation or +just step one keyframe back and forth at a time. + +## Class members + +=== "Gothic 1" + + - [zCVob](zCVob.md) + {: .sp-class} + - zCMoverControler + {: .sp-class} + - [triggerTarget](#triggertarget) = "" + {: .sp-string} + - [moverMessage](#movermessage) = GOTO_KEY_FIXED_DIRECTLY + {: .sp-enum} + - [gotoFixedKey](#gotofixedkey) = 0 + {: .sp-int} + +=== "Gothic 2" + + - [zCVob](zCVob.md) + {: .sp-class} + - zCMoverControler + {: .sp-class} + - [triggerTarget](#triggertarget) = "" + {: .sp-string} + - [moverMessage](#movermessage) = GOTO_KEY_FIXED_DIRECTLY + {: .sp-enum} + - [gotoFixedKey](#gotofixedkey) = 0 + {: .sp-int} + +=== "Gothic 1 (Save)" + + - [zCVob](zCVob.md) + {: .sp-class} + - zCMoverControler + {: .sp-class} + - [triggerTarget](#triggertarget) = "" + {: .sp-string} + - [moverMessage](#movermessage) = GOTO_KEY_FIXED_DIRECTLY + {: .sp-enum} + - [gotoFixedKey](#gotofixedkey) = 0 + {: .sp-int} + +=== "Gothic 2 (Save)" + + - [zCVob](zCVob.md) + {: .sp-class} + - zCMoverControler + {: .sp-class} + - [triggerTarget](#triggertarget) = "" + {: .sp-string} + - [moverMessage](#movermessage) = GOTO_KEY_FIXED_DIRECTLY + {: .sp-enum} + - [gotoFixedKey](#gotofixedkey) = 0 + {: .sp-int} + +## Class member overview + +### `triggerTarget` {: .sp-string} + +The name of the [`zCMover`](zCMover.md) VOject that is controlled by this `zCMoverControler`. + +### `moverMessage` {: .sp-enum} + +The type of event to emit to the [`triggerTarget`](#triggertarget) when this controller receives an `OnTrigger` event. + +**Accepted values:** + +* `GOTO_KEY_FIXED_DIRECTLY` — Make the target mover directly go to the keyframe specified + in [`gotoFixedKey`](#gotofixedkey), skipping all intermediate keyframes. +* `GOTO_KEY_FIXED_ORDER` — Make the target mover go to the keyframe specified in in [`gotoFixedKey`](#gotofixedkey) + while still going through all intermediate keyframes. +* `GOTO_KEY_NEXT` — Make the target mover go to the next keyframe in sequence. Wraps around to the first keyframe. +* `GOTO_KEY_PREV` — Make the target mover go to the previous keyframe in sequence. Wraps around to the last keyframe. + +### `gotoFixedKey` {: .sp-int} + +The keyframe of the mover referred to by [`triggerTarget`](#triggertarget) to move to. + +!!! warning + Only relevant if [`moverMessage`](#movermessage) is `GOTO_KEY_FIXED_DIRECTLY` or `GOTO_KEY_FIXED_ORDER`. From a7270d428c6763aad0faa415eab16238c7032f80 Mon Sep 17 00:00:00 2001 From: Luis Michaelis Date: Fri, 23 Feb 2024 14:23:39 +0100 Subject: [PATCH 27/61] Add documentation for `zCPFXControler` --- docs/zengin/worlds/Classes/zCPFXControler.md | 87 ++++++++++++++++++++ 1 file changed, 87 insertions(+) create mode 100644 docs/zengin/worlds/Classes/zCPFXControler.md diff --git a/docs/zengin/worlds/Classes/zCPFXControler.md b/docs/zengin/worlds/Classes/zCPFXControler.md new file mode 100644 index 0000000000..7bc89d9513 --- /dev/null +++ b/docs/zengin/worlds/Classes/zCPFXControler.md @@ -0,0 +1,87 @@ +# zCPFXController + +!!! abstract inline end "Quick Infos" + **Class Name:** `zCPFXControler`
+ **Version Identifiers:**
+ — Gothic I: `12289`
+ — Gothic II: `52224`
+ **Sources:**
+ — [spacerhilfedatei.sph](https://wiki.worldofgothic.de/doku.php?id=spacer:hilfedatei)
+ — [gothic-library.ru](http://www.gothic-library.ru/publ/zcpfxcontroler/1-1-0-518)
+ — [zk.gothickit.dev](https://zk.gothickit.dev/engine/objects/zCPFXController/) + +A particle system in virtual space. Its effect can be activated and deactivated using the `OnTrigger` and `OnUntrigger` +events. + +## Class members + +=== "Gothic 1" + + - [zCVob](zCVob.md) + {: .sp-class} + - zCPFXController + {: .sp-class} + - [pfxName](#pfxname) = "" + {: .sp-string} + - [killVobWhenDone](#killvobwhendone) = TRUE + {: .sp-bool} + - [pfxStartOn](#pfxstarton) = TRUE + {: .sp-bool} + +=== "Gothic 2" + + - [zCVob](zCVob.md) + {: .sp-class} + - zCPFXController + {: .sp-class} + - [pfxName](#pfxname) = "" + {: .sp-string} + - [killVobWhenDone](#killvobwhendone) = TRUE + {: .sp-bool} + - [pfxStartOn](#pfxstarton) = TRUE + {: .sp-bool} + +=== "Gothic 1 (Save)" + + - [zCVob](zCVob.md) + {: .sp-class} + - zCPFXController + {: .sp-class} + - [pfxName](#pfxname) = "" + {: .sp-string} + - [killVobWhenDone](#killvobwhendone) = TRUE + {: .sp-bool} + - [pfxStartOn](#pfxstarton) = TRUE + {: .sp-bool} + +=== "Gothic 2 (Save)" + + - [zCVob](zCVob.md) + {: .sp-class} + - zCPFXController + {: .sp-class} + - [pfxName](#pfxname) = "" + {: .sp-string} + - [killVobWhenDone](#killvobwhendone) = TRUE + {: .sp-bool} + - [pfxStartOn](#pfxstarton) = TRUE + {: .sp-bool} + +## Class member overview + +### `pfxName` {: .sp-string} + +The name of the particle effect. Corresponds to a `.ZEN` file containing the particle system definition. + +### `killVobWhenDone` {: .sp-bool} + +Disable the particle effect after it runs once. + +### `pfxStartOn` {: .sp-bool} + +Whether to start the particle effect when the level is loaded. + +**Accepted values:** + +* `TRUE` — Start the particle effect when loading the world. +* `FALSE` — Don't start the particle effect automatically. From 5c8d0987e0846a8e03c1d53eb112b794727f2694 Mon Sep 17 00:00:00 2001 From: Luis Michaelis Date: Fri, 23 Feb 2024 14:27:21 +0100 Subject: [PATCH 28/61] Add documentation for `zCTouchDamage` --- docs/zengin/worlds/Classes/zCTouchDamage.md | 242 ++++++++++++++++++++ 1 file changed, 242 insertions(+) create mode 100644 docs/zengin/worlds/Classes/zCTouchDamage.md diff --git a/docs/zengin/worlds/Classes/zCTouchDamage.md b/docs/zengin/worlds/Classes/zCTouchDamage.md new file mode 100644 index 0000000000..96ed9cba63 --- /dev/null +++ b/docs/zengin/worlds/Classes/zCTouchDamage.md @@ -0,0 +1,242 @@ +# zCTouchDamage + +!!! abstract inline end "Quick Infos" + **Class Name:** `zCTouchDamage`
+ **Version Identifiers:**
+ — Gothic I: `36865`
+ — Gothic II: `36865`
+ **Source:**
+ — [spacerhilfedatei.sph](https://wiki.worldofgothic.de/doku.php?id=spacer:hilfedatei)
+ — [gothic-library.ru](http://www.gothic-library.ru/publ/octouchdamage/1-1-0-522#damage)
+ — [zk.gothickit.dev](https://zk.gothickit.dev/engine/objects/zCTouchDamage/) + +A VObject which damages other VObjects colliding with it. + +## Class members + +=== "Gothic 1" + + - [zCVob](zCVob.md) + {: .sp-class} + - zCTouchDamage + {: .sp-class} + - TouchDamage + {: .sp-folder} + - [damage](#damage) = 0 + {: .sp-float} + - DamageType + {: .sp-folder} + - [Barrier](#barrier) = TRUE + {: .sp-bool} + - [Blunt](#blunt) = FALSE + {: .sp-bool} + - [Edge](#edge) = FALSE + {: .sp-bool} + - [Fire](#fire) = FALSE + {: .sp-bool} + - [Fly](#fly) = FALSE + {: .sp-bool} + - [Magic](#magic) = FALSE + {: .sp-bool} + - [Point](#point) = FALSE + {: .sp-bool} + - [Fall](#fall) = FALSE + {: .sp-bool} + - [damageRepeatDelaySec](#damagerepeatdelaysec) = 0 + {: .sp-float} + - [damageVolDownScale](#damagevoldownscale) = 0 + {: .sp-float} + - [damageCollType](#damagecolltype) = BOX + {: .sp-enum} + +=== "Gothic 2" + + - [zCVob](zCVob.md) + {: .sp-class} + - zCTouchDamage + {: .sp-class} + - TouchDamage + {: .sp-folder} + - [damage](#damage) = 0 + {: .sp-float} + - DamageType + {: .sp-folder} + - [Barrier](#barrier) = TRUE + {: .sp-bool} + - [Blunt](#blunt) = FALSE + {: .sp-bool} + - [Edge](#edge) = FALSE + {: .sp-bool} + - [Fire](#fire) = FALSE + {: .sp-bool} + - [Fly](#fly) = FALSE + {: .sp-bool} + - [Magic](#magic) = FALSE + {: .sp-bool} + - [Point](#point) = FALSE + {: .sp-bool} + - [Fall](#fall) = FALSE + {: .sp-bool} + - [damageRepeatDelaySec](#damagerepeatdelaysec) = 0 + {: .sp-float} + - [damageVolDownScale](#damagevoldownscale) = 0 + {: .sp-float} + - [damageCollType](#damagecolltype) = BOX + {: .sp-enum} + +=== "Gothic 1 (Save)" + + - [zCVob](zCVob.md) + {: .sp-class} + - zCTouchDamage + {: .sp-class} + - TouchDamage + {: .sp-folder} + - [damage](#damage) = 0 + {: .sp-float} + - DamageType + {: .sp-folder} + - [Barrier](#barrier) = TRUE + {: .sp-bool} + - [Blunt](#blunt) = FALSE + {: .sp-bool} + - [Edge](#edge) = FALSE + {: .sp-bool} + - [Fire](#fire) = FALSE + {: .sp-bool} + - [Fly](#fly) = FALSE + {: .sp-bool} + - [Magic](#magic) = FALSE + {: .sp-bool} + - [Point](#point) = FALSE + {: .sp-bool} + - [Fall](#fall) = FALSE + {: .sp-bool} + - [damageRepeatDelaySec](#damagerepeatdelaysec) = 0 + {: .sp-float} + - [damageVolDownScale](#damagevoldownscale) = 0 + {: .sp-float} + - [damageCollType](#damagecolltype) = BOX + {: .sp-enum} + +=== "Gothic 2 (Save)" + + - [zCVob](zCVob.md) + {: .sp-class} + - zCTouchDamage + {: .sp-class} + - TouchDamage + {: .sp-folder} + - [damage](#damage) = 0 + {: .sp-float} + - DamageType + {: .sp-folder} + - [Barrier](#barrier) = TRUE + {: .sp-bool} + - [Blunt](#blunt) = FALSE + {: .sp-bool} + - [Edge](#edge) = FALSE + {: .sp-bool} + - [Fire](#fire) = FALSE + {: .sp-bool} + - [Fly](#fly) = FALSE + {: .sp-bool} + - [Magic](#magic) = FALSE + {: .sp-bool} + - [Point](#point) = FALSE + {: .sp-bool} + - [Fall](#fall) = FALSE + {: .sp-bool} + - [damageRepeatDelaySec](#damagerepeatdelaysec) = 0 + {: .sp-float} + - [damageVolDownScale](#damagevoldownscale) = 0 + {: .sp-float} + - [damageCollType](#damagecolltype) = BOX + {: .sp-enum} + +## Class member overview + +### `damage` {: .sp-float} + +The amount of damage being dealt. + +### `Barrier` {: .sp-bool} + +**Accepted values:** + +* `TRUE` — Deal barrier damage +* `FALSE` — Do not deal barrier damage + +### `Blunt` {: .sp-bool} + +**Accepted values:** + +* `TRUE` — Deal blunt damage (blunt weapons) +* `FALSE` — Do not deal blunt damage + +### `Edge` {: .sp-bool} + +**Accepted values:** + +* `TRUE` — Deal edge damage (sharp weapons) +* `FALSE` — Do not deal edge damage + +### `Fire` {: .sp-bool} + +**Accepted values:** + +* `TRUE` — Deal fire damage +* `FALSE` — Do not deal fire damage + +### `Fly` {: .sp-bool} + +**Accepted values:** + +* `TRUE` — Deal knockout damage +* `FALSE` — Do not deal knockout damage + +### `Magic` {: .sp-bool} + +**Accepted values:** + +* `TRUE` — Deal magic damage +* `FALSE` — Do not deal magic damage + +### `Point` {: .sp-bool} + +**Accepted values:** + +* `TRUE` — Deal point damage (bows and crossbows) +* `FALSE` — Do not deal point damage + +### `Fall` {: .sp-bool} + +**Accepted values:** + +* `TRUE` — Deal fall damage +* `FALSE` — Do not deal fall damage + +### `damageRepeatDelaySec` {: .sp-float} + +The delay between damage ticks when applying continuous damage. If set to `0`, only deals the damage once per +collision. If set to a value greater than `0`, deals damage every `damageRepeatDelaySec` seconds. + +### `damageVolDownScale` {: .sp-float} + +A scale value used in conjunction with [`damageCollType`](#damagecolltype). Its function depends on the type of +collision detection used. + +### `damageCollType` {: .sp-enum} + +The type of collision detection to use for damage calculations. + +**Accepted values:** + +* `NONE` — Disable collision detection and thus damage application. +* `BOX` — Scale the [`bbox3dws`](zCVob.md#bbox3dws) of the `zCTouchDamage` object by + [`damageVolDownScale`](#damagevoldownscale) and use this new bounding box to calculate + collisions with other VObjects +* `POINT` — Scale the [`bbox3dws`](zCVob.md#bbox3dws) of the colliding object by + [`damageVolDownScale`](#damagevoldownscale) and only deal damage if it contains the center + point of the `zCTouchDamage` object. If the `visual` of the `zCTouchDamage` object is a particle effect, + test against every particle instead. From 33c8862053c35c90b208468afbd3be9c25b7c03d Mon Sep 17 00:00:00 2001 From: Luis Michaelis Date: Fri, 23 Feb 2024 14:46:47 +0100 Subject: [PATCH 29/61] Add documentation for `oCZoneMusic` --- docs/zengin/worlds/Classes/oCZoneMusic.md | 172 ++++++++++++++++++++++ 1 file changed, 172 insertions(+) create mode 100644 docs/zengin/worlds/Classes/oCZoneMusic.md diff --git a/docs/zengin/worlds/Classes/oCZoneMusic.md b/docs/zengin/worlds/Classes/oCZoneMusic.md new file mode 100644 index 0000000000..f0626442e7 --- /dev/null +++ b/docs/zengin/worlds/Classes/oCZoneMusic.md @@ -0,0 +1,172 @@ +# oCZoneMusic + +!!! abstract inline end "Quick Infos" + **Class Name:** `oCZoneMusic`
+ **Version Identifiers:**
+ — Gothic I: `0`
+ — Gothic II: `0`
+ **Sources:**
+ — [spacerhilfedatei.sph](https://wiki.worldofgothic.de/doku.php?id=spacer:hilfedatei)
+ — [gothic-library.ru](http://www.gothic-library.ru/publ/class_oczonemusic/1-1-0-700)
+ — [zk.gothickit.dev](https://zk.gothickit.dev/engine/objects/oCZoneMusic/) + +A VObject which defines the music to be played within its bounding box. Music zones may overlap; if they do, their +[`priority`](#priority) property determines which music zone should be used. The camera object is used to test which +music zone applies. If no music zone applies the music defined in the optional [`oCZoneMusicDefault`](oCZoneMusicDefault.md) +is used. + +The name of the music theme to be played is defined by the [`vobName`](zCVob.md#vobname). + +!!! tip + If the suffix `_NCI` or `_NCO` is added to the end of the zone name, it snows instead of rains in the zone. + +## Class members + +=== "Gothic 1" + + - [zCVob](zCVob.md) + {: .sp-class} + - oCZoneMusic + {: .sp-class} + - [enabled](#enabled) = TRUE + {: .sp-bool} + - [priority](#priority) = 0 + {: .sp-int} + - [ellipsoid](#ellipsoid) = FALSE + {: .sp-bool} + - [reverbLevel](#reverblevel) = 0 + {: .sp-float} + - [volumeLevel](#volumelevel) = 100 + {: .sp-float} + - [loop](#loop) = TRUE + {: .sp-bool} + +=== "Gothic 2" + + - [zCVob](zCVob.md) + {: .sp-class} + - oCZoneMusic + {: .sp-class} + - [enabled](#enabled) = TRUE + {: .sp-bool} + - [priority](#priority) = 0 + {: .sp-int} + - [ellipsoid](#ellipsoid) = FALSE + {: .sp-bool} + - [reverbLevel](#reverblevel) = 0 + {: .sp-float} + - [volumeLevel](#volumelevel) = 100 + {: .sp-float} + - [loop](#loop) = TRUE + {: .sp-bool} + +=== "Gothic 1 (Save)" + + - [zCVob](zCVob.md) + {: .sp-class} + - oCZoneMusic + {: .sp-class} + - [enabled](#enabled) = TRUE + {: .sp-bool} + - [priority](#priority) = 0 + {: .sp-int} + - [ellipsoid](#ellipsoid) = FALSE + {: .sp-bool} + - [reverbLevel](#reverblevel) = 0 + {: .sp-float} + - [volumeLevel](#volumelevel) = 100 + {: .sp-float} + - [loop](#loop) = TRUE + {: .sp-bool} + - [local_enabled](#local_enabled) = FALSE + {: .sp-bool} + - [dayEntranceDone](#dayentrancedone) = FALSE + {: .sp-bool} + - [nightEntranceDone](#nightentrancedone) = FALSE + {: .sp-bool} + +=== "Gothic 2 (Save)" + + - [zCVob](zCVob.md) + {: .sp-class} + - oCZoneMusic + {: .sp-class} + - [enabled](#enabled) = TRUE + {: .sp-bool} + - [priority](#priority) = 0 + {: .sp-int} + - [ellipsoid](#ellipsoid) = FALSE + {: .sp-bool} + - [reverbLevel](#reverblevel) = 0 + {: .sp-float} + - [volumeLevel](#volumelevel) = 100 + {: .sp-float} + - [loop](#loop) = TRUE + {: .sp-bool} + - [local_enabled](#local_enabled) = FALSE + {: .sp-bool} + - [dayEntranceDone](#dayentrancedone) = FALSE + {: .sp-bool} + - [nightEntranceDone](#nightentrancedone) = FALSE + {: .sp-bool} + +## Class member overview + +### `enabled` {: .sp-bool} + +Whether the music zone is enabled when loading the level. When disabled, no music will be played in the zone. + +**Accepted values:** + +* `TRUE` — Enable the music zone when loading the level +* `FALSE` — The not enable the zone + +### `priority` {: .sp-int} + +The priority of the music zone if two zones overlap. A higher number means a higher priority. `0` is the lowest +possible priority. + +!!! warning + Only relevant if two `zCZoneMusic` zones overlap. + +### `ellipsoid` {: .sp-bool} + +Determines the shape of the zone. + +**Accepted values:** + +* `TRUE` — The zone forms an ellipsoid within the bounding box. +* `FALSE` — The zone exactly mirrors the bounding box. + +### `reverbLevel` {: .sp-float} + +Unclear. + +### `volumeLevel` {: .sp-float} + +Unclear. + +### `loop` {: .sp-bool} + +Unclear. + +### `local_enabled` {: .sp-bool} + +Unknown. + +!!! warning + This property is only available in saved games. + +### `dayEntranceDone` {: .sp-bool} + +Unknown. + +!!! warning + This property is only available in saved games. + +### `nightEntranceDone` {: .sp-bool} + +Unknown. + +!!! warning + This property is only available in saved games. From 9fc5914145143d6b37066b6709d3764ca0c9e53b Mon Sep 17 00:00:00 2001 From: Luis Michaelis Date: Fri, 23 Feb 2024 14:46:50 +0100 Subject: [PATCH 30/61] Add documentation for `oCZoneMusicDefault` --- .../worlds/Classes/oCZoneMusicDefault.md | 59 +++++++++++++++++++ 1 file changed, 59 insertions(+) create mode 100644 docs/zengin/worlds/Classes/oCZoneMusicDefault.md diff --git a/docs/zengin/worlds/Classes/oCZoneMusicDefault.md b/docs/zengin/worlds/Classes/oCZoneMusicDefault.md new file mode 100644 index 0000000000..8dc231a2c0 --- /dev/null +++ b/docs/zengin/worlds/Classes/oCZoneMusicDefault.md @@ -0,0 +1,59 @@ +# oCZoneMusicDefault + +!!! abstract inline end "Quick Infos" + **Class Name:** `oCZoneMusicDefault`
+ **Version Identifiers:**
+ — Gothic I: `0`
+ — Gothic II: `0`
+ **Sources:**
+ — [spacerhilfedatei.sph](https://wiki.worldofgothic.de/doku.php?id=spacer:hilfedatei)
+ — [zk.gothickit.dev](https://zk.gothickit.dev/engine/objects/oCZoneMusicDefault/) + +Determines the default music to be played when the camera is outside any [`oCZoneMusic`](oCZoneMusic.md) zones. The +volume-related options of the zone are ignored. There may only be one `oCZoneMusicDefault` object in a world. + +## Class members + +=== "Gothic 1" + + - [zCVob](zCVob.md) + {: .sp-class} + - [oCZoneMusic](oCZoneMusic.md) + {: .sp-class} + - oCZoneMusicDefault + {: .sp-class} + - <empty> + {: .sp-none} + +=== "Gothic 2" + + - [zCVob](zCVob.md) + {: .sp-class} + - [oCZoneMusic](oCZoneMusic.md) + {: .sp-class} + - oCZoneMusicDefault + {: .sp-class} + - <empty> + {: .sp-none} + +=== "Gothic 1 (Save)" + + - [zCVob](zCVob.md) + {: .sp-class} + - [oCZoneMusic](oCZoneMusic.md) + {: .sp-class} + - oCZoneMusicDefault + {: .sp-class} + - <empty> + {: .sp-none} + +=== "Gothic 2 (Save)" + + - [zCVob](zCVob.md) + {: .sp-class} + - [oCZoneMusic](oCZoneMusic.md) + {: .sp-class} + - oCZoneMusicDefault + {: .sp-class} + - <empty> + {: .sp-none} From 3502ec088ad5ee11d54ded017958af12d9e3d8ee Mon Sep 17 00:00:00 2001 From: Luis Michaelis Date: Fri, 23 Feb 2024 14:46:57 +0100 Subject: [PATCH 31/61] Add documentation for `zCCodeMaster` --- docs/zengin/worlds/Classes/zCCodeMaster.md | 197 +++++++++++++++++++++ 1 file changed, 197 insertions(+) create mode 100644 docs/zengin/worlds/Classes/zCCodeMaster.md diff --git a/docs/zengin/worlds/Classes/zCCodeMaster.md b/docs/zengin/worlds/Classes/zCCodeMaster.md new file mode 100644 index 0000000000..d5b907f903 --- /dev/null +++ b/docs/zengin/worlds/Classes/zCCodeMaster.md @@ -0,0 +1,197 @@ +# zCCodeMaster + +!!! abstract inline end "Quick Infos" + **Class Name:** `zCCodeMaster`
+ **Version Identifiers:**
+ — Gothic I: `0`
+ — Gothic II: `0`
+ **Source:**
+ — [spacerhilfedatei.sph](https://wiki.worldofgothic.de/doku.php?id=spacer:hilfedatei)
+ — [gothic-library.ru](http://www.gothic-library.ru/publ/zccodemaster/1-1-0-526)
+ — [zk.gothickit.dev](https://zk.gothickit.dev/engine/objects/zCCodeMaster/) + +`zCCodeMaster` VObjects keep a list of 'slave' VObjects and keep track of events received by them. If the master +receives an `OnTrigger` event from a slave, it remembers that it did. After it has receives an `OnTrigger` message +from all slaves, it emits an `OnTrigger` event to the [`triggerTarget`](#triggertarget). Receiving or sending an +`OnTrigger` event is also referred to as an 'activation' for this purpose. + +=== "Gothic 1" + + - [zCVob](zCVob.md) + {: .sp-class} + - zCCodeMaster + {: .sp-class} + - [triggerTarget](#triggertarget) = "" + {: .sp-string} + - CodeMaster + {: .sp-folder} + - [orderRelevant](#orderrelevant) = FALSE + {: .sp-bool} + - OrderRelevant + {: .sp-folder} + - [firstFalseIsFailure](#firstfalseisfailure) = TRUE + {: .sp-bool} + - [triggerTargetFailure](#triggertargetfailure) = "" + {: .sp-string} + - OrderNotRelevant + {: .sp-folder} + - [untriggerCancels](#untriggercancels) = FALSE + {: .sp-bool} + - [slaveVobName0](#slavevobname) = "" + {: .sp-string} + - [slaveVobName1](#slavevobname) = "" + {: .sp-string} + - [slaveVobName2](#slavevobname) = "" + {: .sp-string} + +=== "Gothic 2" + + - [zCVob](zCVob.md) + {: .sp-class} + - zCCodeMaster + {: .sp-class} + - [triggerTarget](#triggertarget) = "" + {: .sp-string} + - CodeMaster + {: .sp-folder} + - [orderRelevant](#orderrelevant) = FALSE + {: .sp-bool} + - OrderRelevant + {: .sp-folder} + - [firstFalseIsFailure](#firstfalseisfailure) = TRUE + {: .sp-bool} + - [triggerTargetFailure](#triggertargetfailure) = "" + {: .sp-string} + - OrderNotRelevant + {: .sp-folder} + - [untriggerCancels](#untriggercancels) = FALSE + {: .sp-bool} + - [slaveVobName0](#slavevobname) = "" + {: .sp-string} + - [slaveVobName1](#slavevobname) = "" + {: .sp-string} + - [slaveVobName2](#slavevobname) = "" + {: .sp-string} + +=== "Gothic 1 (Save)" + + - [zCVob](zCVob.md) + {: .sp-class} + - zCCodeMaster + {: .sp-class} + - [triggerTarget](#triggertarget) = "" + {: .sp-string} + - CodeMaster + {: .sp-folder} + - [orderRelevant](#orderrelevant) = FALSE + {: .sp-bool} + - OrderRelevant + {: .sp-folder} + - [firstFalseIsFailure](#firstfalseisfailure) = TRUE + {: .sp-bool} + - [triggerTargetFailure](#triggertargetfailure) = "" + {: .sp-string} + - OrderNotRelevant + {: .sp-folder} + - [untriggerCancels](#untriggercancels) = FALSE + {: .sp-bool} + - [slaveVobName0](#slavevobname) = "" + {: .sp-string} + - [slaveVobName1](#slavevobname) = "" + {: .sp-string} + - [slaveVobName2](#slavevobname) = "" + {: .sp-string} + +=== "Gothic 2 (Save)" + + - [zCVob](zCVob.md) + {: .sp-class} + - zCCodeMaster + {: .sp-class} + - [triggerTarget](#triggertarget) = "" + {: .sp-string} + - CodeMaster + {: .sp-folder} + - [orderRelevant](#orderrelevant) = FALSE + {: .sp-bool} + - OrderRelevant + {: .sp-folder} + - [firstFalseIsFailure](#firstfalseisfailure) = TRUE + {: .sp-bool} + - [triggerTargetFailure](#triggertargetfailure) = "" + {: .sp-string} + - OrderNotRelevant + {: .sp-folder} + - [untriggerCancels](#untriggercancels) = FALSE + {: .sp-bool} + - [slaveVobName0](#slavevobname) = "" + {: .sp-string} + - [slaveVobName1](#slavevobname) = "" + {: .sp-string} + - [slaveVobName2](#slavevobname) = "" + {: .sp-string} + - [numSlavesTriggered](#numslavestriggered) + {: .sp-int} + - slaveTriggered0 + {: .sp-type} + - slaveTriggered1 + {: .sp-type} + +## Class member overview + +### `triggerTarget` {: .sp-string} + +The name of the VObject to send an `OnTrigger` event to after all slaves have fired in the correct order. + +### `orderRelevant` {: .sp-bool} + +Controls whether the master should keep track of the order it receives messages from its slaves. + +**Accepted values:** + +* `TRUE` — Only send an `OnTrigger` event to the [`triggerTarget`](#triggertarget) if the slaves have fired in + the exact order they are configured here. Also counts multiple activations. +* `FALSE` — Send an `OnTrigger` event to the [`triggerTarget`](#triggertarget) after all slaves have fired at least + once, regardless of order. + +### `firstFalseIsFailure` {: .sp-bool} + +Controls when the slave activation sequence is considered to be incorrect. After the sequence is marked as +incorrect an `OnTrigger` event is sent to [`triggerTargetFailure`](#triggertargetfailure). + +**Accepted values:** + +* `TRUE` — The sequence is considered to be incorrect as soon as one slave is activated out-of-order. +* `FALSE` — The sequence is considered to be incorrect only after all slaves have been activated at least once and + they were activated out-of-order. + +!!! warning + Only relevant if [`orderRelevant`](#orderrelevant) is set to `TRUE`. + +### `triggerTargetFailure` {: .sp-string} + +The name of the VObject to emit an `OnTrigger` event to if the activation sequence fails. This is controlled by +[`firstFalseIsFailure`](#firstfalseisfailure). + +!!! warning + Only relevant if [`orderRelevant`](#orderrelevant) is set to `TRUE`. + +### `untriggerCancels` {: .sp-bool} + +Controls whether slaves can emit `OnUntrigger` events to the master VObject to mark themselves as deactivated. + +**Accepted values:** + +* `TRUE` — When the master receives an `OnUntrigger` event from the slave, it marks it as not having been activated. +* `FALSE` — The master ignore `OnUntrigger` events from its slaves. + +!!! warning + Only relevant if [`orderRelevant`](#orderrelevant) is set to `FALSE`. + +### `slaveVobName` {: .sp-string} + +The name of a slave VObject. + +### `numSlavesTriggered` {: .sp-int} + +Unknown. From c0ac8739c23b8196fcc86d4f162b562ae8c639a9 Mon Sep 17 00:00:00 2001 From: Luis Michaelis Date: Fri, 23 Feb 2024 15:02:05 +0100 Subject: [PATCH 32/61] Add documentation for `oCVob` --- docs/zengin/worlds/Classes/oCVob.md | 45 +++++++++++++++++++++++++++++ 1 file changed, 45 insertions(+) create mode 100644 docs/zengin/worlds/Classes/oCVob.md diff --git a/docs/zengin/worlds/Classes/oCVob.md b/docs/zengin/worlds/Classes/oCVob.md new file mode 100644 index 0000000000..8bfe8813b6 --- /dev/null +++ b/docs/zengin/worlds/Classes/oCVob.md @@ -0,0 +1,45 @@ +# oCVob + +!!! abstract inline end "Quick Infos" + **Class Name:** `oCVob`
+ **Version Identifiers:**
+ — Gothic I: `12289`
+ — Gothic II: *Unused*
+ **Sources:**
+ — [zk.gothickit.dev](https://zk.gothickit.dev/engine/objects/oCVob/) + +=== "Gothic 1" + + - [zCVob](zCVob.md) + {: .sp-class} + - oCVob + {: .sp-class} + - <empty> + {: .sp-none} + +=== "Gothic 2" + + - [zCVob](zCVob.md) + {: .sp-class} + - oCVob + {: .sp-class} + - <empty> + {: .sp-none} + +=== "Gothic 1 (Save)" + + - [zCVob](zCVob.md) + {: .sp-class} + - oCVob + {: .sp-class} + - <empty> + {: .sp-none} + +=== "Gothic 2 (Save)" + + - [zCVob](zCVob.md) + {: .sp-class} + - oCVob + {: .sp-class} + - <empty> + {: .sp-none} From 75ae3bf4325e3184d4a6d485b146c5d0c6a1a366 Mon Sep 17 00:00:00 2001 From: Luis Michaelis Date: Fri, 23 Feb 2024 15:02:11 +0100 Subject: [PATCH 33/61] Add documentation for `oCCSTrigger` --- docs/zengin/worlds/Classes/oCCSTrigger.md | 61 +++++++++++++++++++++++ 1 file changed, 61 insertions(+) create mode 100644 docs/zengin/worlds/Classes/oCCSTrigger.md diff --git a/docs/zengin/worlds/Classes/oCCSTrigger.md b/docs/zengin/worlds/Classes/oCCSTrigger.md new file mode 100644 index 0000000000..4d264613ab --- /dev/null +++ b/docs/zengin/worlds/Classes/oCCSTrigger.md @@ -0,0 +1,61 @@ +# oCCSTrigger + +!!! abstract inline end "Quick Infos" + **Class Name:** `oCCSTrigger`
+ **Version Identifiers:**
+ — Gothic I: `24577`
+ — Gothic II: `24577`
+ **Sources:**
+ — [spacerhilfedatei.sph](https://wiki.worldofgothic.de/doku.php?id=spacer:hilfedatei)
+ — [gothic-library.ru](http://www.gothic-library.ru/publ/class_occstrigger/1-1-0-530)
+ — [zk.gothickit.dev](https://zk.gothickit.dev/engine/objects/oCCSTrigger/) + +A special trigger VObject which can start a cutscene. The [`triggerTarget`](zCTrigger.md#triggertarget) must be the +name of the cutscene (without the extension) to be started. For this to work, the cutscene must already be loaded. +`OnUntrigger` events are ignored by `oCCSTrigger`s. + +## Class members + +=== "Gothic 1" + + - [zCVob](zCVob.md) + {: .sp-class} + - [zCTrigger](zCTrigger.md) + {: .sp-class} + - oCCSTrigger + {: .sp-class} + - <empty> + {: .sp-none} + +=== "Gothic 2" + + - [zCVob](zCVob.md) + {: .sp-class} + - [zCTrigger](zCTrigger.md) + {: .sp-class} + - oCCSTrigger + {: .sp-class} + - <empty> + {: .sp-none} + +=== "Gothic 1 (Save)" + + - [zCVob](zCVob.md) + {: .sp-class} + - [zCTrigger](zCTrigger.md) + {: .sp-class} + - oCCSTrigger + {: .sp-class} + - <empty> + {: .sp-none} + +=== "Gothic 2 (Save)" + + - [zCVob](zCVob.md) + {: .sp-class} + - [zCTrigger](zCTrigger.md) + {: .sp-class} + - oCCSTrigger + {: .sp-class} + - <empty> + {: .sp-none} From 16b4ccba15a53b0abcb5e00f9a07b25ef94b39c4 Mon Sep 17 00:00:00 2001 From: Luis Michaelis Date: Fri, 23 Feb 2024 15:02:15 +0100 Subject: [PATCH 34/61] Add documentation for `oCItem` --- docs/zengin/worlds/Classes/oCItem.md | 87 ++++++++++++++++++++++++++++ 1 file changed, 87 insertions(+) create mode 100644 docs/zengin/worlds/Classes/oCItem.md diff --git a/docs/zengin/worlds/Classes/oCItem.md b/docs/zengin/worlds/Classes/oCItem.md new file mode 100644 index 0000000000..b7f41fc1a8 --- /dev/null +++ b/docs/zengin/worlds/Classes/oCItem.md @@ -0,0 +1,87 @@ +# oCItem + +!!! abstract inline end "Quick Infos" + **Class Name:** `oCItem`
+ **Version Identifiers:**
+ — Gothic I: `0`
+ — Gothic II: `0`
+ **Sources:**
+ — [gothic-library.ru](http://www.gothic-library.ru/publ/class_occstrigger/1-1-0-530)
+ — [zk.gothickit.dev](https://zk.gothickit.dev/engine/objects/oCItem/) + +Represents an item in the game world. Items are special VObjects which are tied to a script instance which defines +their attributes. They have physics enabled and can be targeted and picked up by the player. + +## Class members + +=== "Gothic 1" + + - [zCVob](zCVob.md) + {: .sp-class} + - [oCVob](oCVob.md) + {: .sp-class} + - oCItem + {: .sp-class} + - [itemInstance](#iteminstance) = "" + {: .sp-string} + +=== "Gothic 2" + + - [zCVob](zCVob.md) + {: .sp-class} + - [oCVob](oCVob.md) + {: .sp-class} + - oCItem + {: .sp-class} + - [itemInstance](#iteminstance) = "" + {: .sp-string} + +=== "Gothic 1 (Save)" + + - [zCVob](zCVob.md) + {: .sp-class} + - [oCVob](oCVob.md) + {: .sp-class} + - oCItem + {: .sp-class} + - [itemInstance](#iteminstance) = "" + {: .sp-string} + - [amount](#amount) = 0 + {: .sp-int} + - [flags](#flags) = 0 + {: .sp-int} + +=== "Gothic 2 (Save)" + + - [zCVob](zCVob.md) + {: .sp-class} + - [oCVob](oCVob.md) + {: .sp-class} + - oCItem + {: .sp-class} + - [itemInstance](#iteminstance) = "" + {: .sp-string} + - [amount](#amount) = 0 + {: .sp-int} + - [flags](#flags) = 0 + {: .sp-int} + +## Class member overview + +### `itemInstance` {: .sp-string} + +The name of the script instance representing the item. + +### `amount` {: .sp-int} + +Unknown. + +!!! warning + This property is only available in saved games. + +### `flags` {: .sp-int} + +Unknown. + +!!! warning + This property is only available in saved games. From 39d5c4d92834af2b460dcd7e2e5833f8d67cfd3f Mon Sep 17 00:00:00 2001 From: Luis Michaelis Date: Fri, 23 Feb 2024 15:02:21 +0100 Subject: [PATCH 35/61] Add documentation for `oCMOB` --- docs/zengin/worlds/Classes/oCMOB.md | 213 ++++++++++++++++++++++++++++ 1 file changed, 213 insertions(+) create mode 100644 docs/zengin/worlds/Classes/oCMOB.md diff --git a/docs/zengin/worlds/Classes/oCMOB.md b/docs/zengin/worlds/Classes/oCMOB.md new file mode 100644 index 0000000000..fa390635a4 --- /dev/null +++ b/docs/zengin/worlds/Classes/oCMOB.md @@ -0,0 +1,213 @@ +# oCMOB + +!!! abstract inline end "Quick Infos" + **Class Name:** `oCMOB`
+ **Version Identifiers:**
+ — Gothic I: `47105`
+ — Gothic II: `47105`
+ **Sources:**
+ — [spacerhilfedatei.sph](https://wiki.worldofgothic.de/doku.php?id=spacer:hilfedatei)
+ — [gothic-library.ru](http://www.gothic-library.ru/publ/ocmob_class/1-1-0-503)
+ — [zk.gothickit.dev](https://zk.gothickit.dev/engine/objects/oCMOB/) + +A VObject which can optionally be moved and/or carried. + +## Class members + +=== "Gothic 1" + + - [zCVob](zCVob.md) + {: .sp-class} + - [oCVob](oCVob.md) + {: .sp-class} + - oCMOB + {: .sp-class} + - MOB + {: .sp-folder} + - [focusName](#focusName) = "" + {: .sp-string} + - [hitpoints](#hitpoints) = 0 + {: .sp-int} + - [damage](#damage) = 0 + {: .sp-int} + - [moveable](#moveable) = FALSE + {: .sp-bool} + - [takeable](#takeable) = FALSE + {: .sp-bool} + - [focusOverride](#focusOverride) = FALSE + {: .sp-bool} + - [soundMaterial](#soundMaterial) = WOOD + {: .sp-enum} + - [visualDestroyed](#visualDestroyed) = "" + {: .sp-string} + - [owner](#owner) = "" + {: .sp-string} + - [ownerGuild](#ownerGuild) = "" + {: .sp-string} + - [isDestroyed](#isDestroyed) = "" + {: .sp-bool} + +=== "Gothic 2" + + - [zCVob](zCVob.md) + {: .sp-class} + - [oCVob](oCVob.md) + {: .sp-class} + - oCMOB + {: .sp-class} + - MOB + {: .sp-folder} + - [focusName](#focusName) = "" + {: .sp-string} + - [hitpoints](#hitpoints) = 0 + {: .sp-int} + - [damage](#damage) = 0 + {: .sp-int} + - [moveable](#moveable) = FALSE + {: .sp-bool} + - [takeable](#takeable) = FALSE + {: .sp-bool} + - [focusOverride](#focusOverride) = FALSE + {: .sp-bool} + - [soundMaterial](#soundMaterial) = WOOD + {: .sp-enum} + - [visualDestroyed](#visualDestroyed) = "" + {: .sp-string} + - [owner](#owner) = "" + {: .sp-string} + - [ownerGuild](#ownerGuild) = "" + {: .sp-string} + - [isDestroyed](#isDestroyed) = "" + {: .sp-bool} + +=== "Gothic 1 (Save)" + + - [zCVob](zCVob.md) + {: .sp-class} + - [oCVob](oCVob.md) + {: .sp-class} + - oCMOB + {: .sp-class} + - MOB + {: .sp-folder} + - [focusName](#focusName) = "" + {: .sp-string} + - [hitpoints](#hitpoints) = 0 + {: .sp-int} + - [damage](#damage) = 0 + {: .sp-int} + - [moveable](#moveable) = FALSE + {: .sp-bool} + - [takeable](#takeable) = FALSE + {: .sp-bool} + - [focusOverride](#focusOverride) = FALSE + {: .sp-bool} + - [soundMaterial](#soundMaterial) = WOOD + {: .sp-enum} + - [visualDestroyed](#visualDestroyed) = "" + {: .sp-string} + - [owner](#owner) = "" + {: .sp-string} + - [ownerGuild](#ownerGuild) = "" + {: .sp-string} + - [isDestroyed](#isDestroyed) = "" + {: .sp-bool} + +=== "Gothic 2 (Save)" + + - [zCVob](zCVob.md) + {: .sp-class} + - [oCVob](oCVob.md) + {: .sp-class} + - oCMOB + {: .sp-class} + - MOB + {: .sp-folder} + - [focusName](#focusName) = "" + {: .sp-string} + - [hitpoints](#hitpoints) = 0 + {: .sp-int} + - [damage](#damage) = 0 + {: .sp-int} + - [moveable](#moveable) = FALSE + {: .sp-bool} + - [takeable](#takeable) = FALSE + {: .sp-bool} + - [focusOverride](#focusOverride) = FALSE + {: .sp-bool} + - [soundMaterial](#soundMaterial) = WOOD + {: .sp-enum} + - [visualDestroyed](#visualDestroyed) = "" + {: .sp-string} + - [owner](#owner) = "" + {: .sp-string} + - [ownerGuild](#ownerGuild) = "" + {: .sp-string} + - [isDestroyed](#isDestroyed) = "" + {: .sp-bool} + +## Class member overview + +### `focusName` {: .sp-string} + +The name of the object as seen in-game when focusing it. + +### `hitpoints` {: .sp-int} + +The number of hitpoints of the object. + +### `damage` {: .sp-int} + +The damage dealt by the object when being used. + +### `moveable` {: .sp-bool} + +Whether the object can be moved by the player. + +**Accepted values:** + +* `TRUE` — The object can be moved +* `FALSE` — The object can not be moved + +### `takeable` {: .sp-bool} + +Whether the object can be carried by the player. + +**Accepted values:** + +* `TRUE` — The object can be carried +* `FALSE` — The object can not be carried + +### `focusOverride` {: .sp-bool} + +Unknown. + +### `soundMaterial` {: .sp-enum} + +The sound to play when the object is hit. + +**Accepted values:** + +* `WOOD` — Wood. +* `STONE` — Stone. +* `METAL` — Metal. +* `LEATHER` — Leather. +* `CLAY` — Clay. +* `GLAS` — Glass. + +### `visualDestroyed` {: .sp-string} + +The name of the visual to use when the object is destroyed. Behaves like [zCVob.visual](zCVob.md#visual). + +### `owner` {: .sp-string} + +The name of the script instance of the NPC who is the owner of this object. + +### `ownerGuild` {: .sp-string} + +The name of the guild this object belongs to. This name corresponds to the script constant for +each guild (i.e. `GIL_BAU`), found in `Constants.d`. + +### `isDestroyed` {: .sp-bool} + +Unknown. From ab339fc8fac0bcb9a63072e14baf4ed5ddb2cb88 Mon Sep 17 00:00:00 2001 From: Luis Michaelis Date: Fri, 23 Feb 2024 15:02:25 +0100 Subject: [PATCH 36/61] Add documentation for `oCMobBed` --- docs/zengin/worlds/Classes/oCMobBed.md | 80 ++++++++++++++++++++++++++ 1 file changed, 80 insertions(+) create mode 100644 docs/zengin/worlds/Classes/oCMobBed.md diff --git a/docs/zengin/worlds/Classes/oCMobBed.md b/docs/zengin/worlds/Classes/oCMobBed.md new file mode 100644 index 0000000000..628a00614e --- /dev/null +++ b/docs/zengin/worlds/Classes/oCMobBed.md @@ -0,0 +1,80 @@ +# oCMobBed + +!!! abstract inline end "Quick Infos" + **Type:** Virtual Object
+ **Format Name:** ZenGin Archive
+ **File Extension:** `.ZEN`
+ **Class Name:** `oCMobBed`
+ **Version Identifiers:**
+ — Gothic I: `35585`
+ — Gothic II: `35585`
+ **ZenKit Class:** `VBed`
+ **Sources:**
+ — [spacerhilfedatei.sph](https://wiki.worldofgothic.de/doku.php?id=spacer:hilfedatei)
+ — [zk.gothickit.dev](https://zk.gothickit.dev/engine/objects/oCMobBed/) + +VObject marking beds for NPCs and the player to sleep on. In the original Gothic I, there is a bug which prevents +`oCMobBed`s from working correctly, so it is recommended to instead use [`oCMobDoor`](oCMobDoor.md) and attach the +visual of a bed when targeting that platform. + +## Class members + +=== "Gothic 1" + + - [zCVob](zCVob.md) + {: .sp-class} + - [oCVob](oCVob.md) + {: .sp-class} + - [oCMOB](oCMOB.md) + {: .sp-class} + - [oCMobInter](oCMobInter.md) + {: .sp-class} + - oCMobBed + {: .sp-class} + - <empty> + {: .sp-none} + +=== "Gothic 2" + + - [zCVob](zCVob.md) + {: .sp-class} + - [oCVob](oCVob.md) + {: .sp-class} + - [oCMOB](oCMOB.md) + {: .sp-class} + - [oCMobInter](oCMobInter.md) + {: .sp-class} + - oCMobBed + {: .sp-class} + - <empty> + {: .sp-none} + +=== "Gothic 1 (Save)" + + - [zCVob](zCVob.md) + {: .sp-class} + - [oCVob](oCVob.md) + {: .sp-class} + - [oCMOB](oCMOB.md) + {: .sp-class} + - [oCMobInter](oCMobInter.md) + {: .sp-class} + - oCMobBed + {: .sp-class} + - <empty> + {: .sp-none} + +=== "Gothic 2 (Save)" + + - [zCVob](zCVob.md) + {: .sp-class} + - [oCVob](oCVob.md) + {: .sp-class} + - [oCMOB](oCMOB.md) + {: .sp-class} + - [oCMobInter](oCMobInter.md) + {: .sp-class} + - oCMobBed + {: .sp-class} + - <empty> + {: .sp-none} From 355f60c037a40f6e865eab464b000a52683be869 Mon Sep 17 00:00:00 2001 From: Luis Michaelis Date: Fri, 23 Feb 2024 15:02:29 +0100 Subject: [PATCH 37/61] Add documentation for `oCMobContainer` --- docs/zengin/worlds/Classes/oCMobContainer.md | 164 +++++++++++++++++++ 1 file changed, 164 insertions(+) create mode 100644 docs/zengin/worlds/Classes/oCMobContainer.md diff --git a/docs/zengin/worlds/Classes/oCMobContainer.md b/docs/zengin/worlds/Classes/oCMobContainer.md new file mode 100644 index 0000000000..25bdb503ea --- /dev/null +++ b/docs/zengin/worlds/Classes/oCMobContainer.md @@ -0,0 +1,164 @@ +# oCMobContainer + +!!! abstract inline end "Quick Infos" + **Class Name:** `oCMobContainer`
+ **Version Identifiers:**
+ — Gothic I: `64513`
+ — Gothic II: `64513`
+ **Sources:**
+ — [spacerhilfedatei.sph](https://wiki.worldofgothic.de/doku.php?id=spacer:hilfedatei)
+ — [gothic-library.ru](http://www.gothic-library.ru/publ/ocmobcontainer/1-1-0-509)
+ — [zk.gothickit.dev](https://zk.gothickit.dev/engine/objects/oCMobContainer/) + +An object which contains items. + +## Class members + +=== "Gothic 1" + + - [zCVob](zCVob.md) + {: .sp-class} + - [oCVob](oCVob.md) + {: .sp-class} + - [oCMOB](oCMOB.md) + {: .sp-class} + - [oCMobInter](oCMobInter.md) + {: .sp-class} + - oCMobContainer + {: .sp-class} + - Lockable + {: .sp-folder} + - [locked](#locked) = FALSE + {: .sp-bool} + - [keyInstance](#keyinstance) = "" + {: .sp-string} + - [pickLockStr](#picklockstr) = "" + {: .sp-string} + - Container + {: .sp-folder} + - [contains](#contains) = "" + {: .sp-string} + +=== "Gothic 2" + + - [zCVob](zCVob.md) + {: .sp-class} + - [oCVob](oCVob.md) + {: .sp-class} + - [oCMOB](oCMOB.md) + {: .sp-class} + - [oCMobInter](oCMobInter.md) + {: .sp-class} + - oCMobContainer + {: .sp-class} + - Lockable + {: .sp-folder} + - [locked](#locked) = FALSE + {: .sp-bool} + - [keyInstance](#keyinstance) = "" + {: .sp-string} + - [pickLockStr](#picklockstr) = "" + {: .sp-string} + - Container + {: .sp-folder} + - [contains](#contains) = "" + {: .sp-string} + +=== "Gothic 1 (Save)" + + - [zCVob](zCVob.md) + {: .sp-class} + - [oCVob](oCVob.md) + {: .sp-class} + - [oCMOB](oCMOB.md) + {: .sp-class} + - [oCMobInter](oCMobInter.md) + {: .sp-class} + - oCMobContainer + {: .sp-class} + - Lockable + {: .sp-folder} + - [locked](#locked) = FALSE + {: .sp-bool} + - [keyInstance](#keyinstance) = "" + {: .sp-string} + - [pickLockStr](#picklockstr) = "" + {: .sp-string} + - Container + {: .sp-folder} + - [contains](#contains) = "" + {: .sp-string} + - [NumOfEntries](#numofentries) = 0 + {: .sp-int} + - [oCItem](oCItem.md) ... = NULL + {: .sp-class} + +=== "Gothic 2 (Save)" + + - [zCVob](zCVob.md) + {: .sp-class} + - [oCVob](oCVob.md) + {: .sp-class} + - [oCMOB](oCMOB.md) + {: .sp-class} + - [oCMobInter](oCMobInter.md) + {: .sp-class} + - oCMobContainer + {: .sp-class} + - Lockable + {: .sp-folder} + - [locked](#locked) = FALSE + {: .sp-bool} + - [keyInstance](#keyinstance) = "" + {: .sp-string} + - [pickLockStr](#picklockstr) = "" + {: .sp-string} + - Container + {: .sp-folder} + - [contains](#contains) = "" + {: .sp-string} + - [NumOfEntries](#numofentries) = 0 + {: .sp-int} + - [oCItem](oCItem.md) ... = NULL + {: .sp-class} + +## Class member overview + +### `locked` {: .sp-bool} + +Determines whether the container is locked. + +**Accepted values:** + +* `TRUE` — The container is locked +* `FALSE` — The container is not locked + +### `keyInstance` {: .sp-string} + +The name of the item script instance which unlocks the container. + +!!! tip + Only relevant if the container is locked. + +### `pickLockStr` {: .sp-string} + +The combination which unlocks this container when picking the lock. Each character of the string is either `R` or +`L` where `R` stands for "Right" and `L` stands for "Left". If empty, the lock can not be picked. +
Example: `LRRLLRL`. + +!!! tip + Only relevant if the container is locked. + +### `contains` {: .sp-string} + +The items found inside the container as a comma-separated list. Each element of the list starts with the name of the +item script instance and is optionally followed by a colon and a number, indicating the number of that item to be +found inside. +
Example: `ItMi_Gold:75, ItFo_Fish:2, ItMi_Quartz`. + +### `NumOfEntries` {: .sp-int} + +The number of items in the container. + +!!! warning + This property is only available in saved games. From be5b05e2a245e3f7e0731e1f3bffbfedb3a32e94 Mon Sep 17 00:00:00 2001 From: Luis Michaelis Date: Fri, 23 Feb 2024 15:02:33 +0100 Subject: [PATCH 38/61] Add documentation for `oCMobDoor` --- docs/zengin/worlds/Classes/oCMobDoor.md | 125 ++++++++++++++++++++++++ 1 file changed, 125 insertions(+) create mode 100644 docs/zengin/worlds/Classes/oCMobDoor.md diff --git a/docs/zengin/worlds/Classes/oCMobDoor.md b/docs/zengin/worlds/Classes/oCMobDoor.md new file mode 100644 index 0000000000..11e7fbb85c --- /dev/null +++ b/docs/zengin/worlds/Classes/oCMobDoor.md @@ -0,0 +1,125 @@ +# oCMobDoor + +!!! abstract inline end "Quick Infos" + **Class Name:** `oCMobDoor`
+ **Version Identifiers:**
+ — Gothic I: `64513`
+ — Gothic II: `64513`
+ **Sources:**
+ — [gothic-library.ru](http://www.gothic-library.ru/publ/ocmobdoor/1-1-0-510)
+ — [zk.gothickit.dev](https://zk.gothickit.dev/engine/objects/oCMobDoor/) + +A VObject representing a door. This is also used for NPCs navigating the waynet. + +## Class members + +=== "Gothic 1" + + - [zCVob](zCVob.md) + {: .sp-class} + - [oCVob](oCVob.md) + {: .sp-class} + - [oCMOB](oCMOB.md) + {: .sp-class} + - [oCMobInter](oCMobInter.md) + {: .sp-class} + - oCMobContainer + {: .sp-class} + - Lockable + {: .sp-folder} + - [locked](#locked) = FALSE + {: .sp-bool} + - [keyInstance](#keyinstance) = "" + {: .sp-string} + - [pickLockStr](#picklockstr) = "" + {: .sp-string} + +=== "Gothic 2" + + - [zCVob](zCVob.md) + {: .sp-class} + - [oCVob](oCVob.md) + {: .sp-class} + - [oCMOB](oCMOB.md) + {: .sp-class} + - [oCMobInter](oCMobInter.md) + {: .sp-class} + - oCMobContainer + {: .sp-class} + - Lockable + {: .sp-folder} + - [locked](#locked) = FALSE + {: .sp-bool} + - [keyInstance](#keyinstance) = "" + {: .sp-string} + - [pickLockStr](#picklockstr) = "" + {: .sp-string} + +=== "Gothic 1 (Save)" + + - [zCVob](zCVob.md) + {: .sp-class} + - [oCVob](oCVob.md) + {: .sp-class} + - [oCMOB](oCMOB.md) + {: .sp-class} + - [oCMobInter](oCMobInter.md) + {: .sp-class} + - oCMobContainer + {: .sp-class} + - Lockable + {: .sp-folder} + - [locked](#locked) = FALSE + {: .sp-bool} + - [keyInstance](#keyinstance) = "" + {: .sp-string} + - [pickLockStr](#picklockstr) = "" + {: .sp-string} + +=== "Gothic 2 (Save)" + + - [zCVob](zCVob.md) + {: .sp-class} + - [oCVob](oCVob.md) + {: .sp-class} + - [oCMOB](oCMOB.md) + {: .sp-class} + - [oCMobInter](oCMobInter.md) + {: .sp-class} + - oCMobContainer + {: .sp-class} + - Lockable + {: .sp-folder} + - [locked](#locked) = FALSE + {: .sp-bool} + - [keyInstance](#keyinstance) = "" + {: .sp-string} + - [pickLockStr](#picklockstr) = "" + {: .sp-string} + +## Class member overview + +### `locked` {: .sp-bool} + +Determines whether the container is locked. + +**Accepted values:** + +* `TRUE` — The container is locked +* `FALSE` — The container is not locked + +### `keyInstance` {: .sp-string} + +The name of the item script instance which unlocks the container. + +!!! tip + Only relevant if the container is locked. + +### `pickLockStr` {: .sp-string} + +The combination which unlocks this container when picking the lock. Each character of the string is either `R` or +`L` where `R` stands for "Right" and `L` stands for "Left". If empty, the lock can not be picked. +
Example: `LRRLLRL`. + +!!! tip + Only relevant if the container is locked. From d5285907ae2ee9ce8b9c2e81a93c9b1cde8ff086 Mon Sep 17 00:00:00 2001 From: Luis Michaelis Date: Fri, 23 Feb 2024 15:02:40 +0100 Subject: [PATCH 39/61] Add documentation for `oCMobFire` --- docs/zengin/worlds/Classes/oCMobFire.md | 92 +++++++++++++++++++++++++ 1 file changed, 92 insertions(+) create mode 100644 docs/zengin/worlds/Classes/oCMobFire.md diff --git a/docs/zengin/worlds/Classes/oCMobFire.md b/docs/zengin/worlds/Classes/oCMobFire.md new file mode 100644 index 0000000000..eb6146ad01 --- /dev/null +++ b/docs/zengin/worlds/Classes/oCMobFire.md @@ -0,0 +1,92 @@ +# oCMobFire + +!!! abstract inline end "Quick Infos" + **Class Name:** `oCMobFire`
+ **Version Identifiers:**
+ — Gothic I: `18433`
+ — Gothic II: `18433`
+ **Sources:**
+ — [gothic-library.ru](http://www.gothic-library.ru/publ/ocmobfire/1-1-0-506)
+ — [zk.gothickit.dev](https://zk.gothickit.dev/engine/objects/oCMobFire/) + +An object with an integrated fire effect. Only supports rigged models as visuals. + +## Class members + +=== "Gothic 1" + + - [zCVob](zCVob.md) + {: .sp-class} + - [oCVob](oCVob.md) + {: .sp-class} + - [oCMOB](oCMOB.md) + {: .sp-class} + - [oCMobInter](oCMobInter.md) + {: .sp-class} + - oCMobFire + {: .sp-class} + - [fireSlot](#fireslot) = "" + {: .sp-string} + - [fireVobtreeName](#firevobtreename) = "" + {: .sp-string} + +=== "Gothic 2" + + - [zCVob](zCVob.md) + {: .sp-class} + - [oCVob](oCVob.md) + {: .sp-class} + - [oCMOB](oCMOB.md) + {: .sp-class} + - [oCMobInter](oCMobInter.md) + {: .sp-class} + - oCMobFire + {: .sp-class} + - [fireSlot](#fireslot) = "" + {: .sp-string} + - [fireVobtreeName](#firevobtreename) = "" + {: .sp-string} + +=== "Gothic 1 (Save)" + + - [zCVob](zCVob.md) + {: .sp-class} + - [oCVob](oCVob.md) + {: .sp-class} + - [oCMOB](oCMOB.md) + {: .sp-class} + - [oCMobInter](oCMobInter.md) + {: .sp-class} + - oCMobFire + {: .sp-class} + - [fireSlot](#fireslot) = "" + {: .sp-string} + - [fireVobtreeName](#firevobtreename) = "" + {: .sp-string} + +=== "Gothic 2 (Save)" + + - [zCVob](zCVob.md) + {: .sp-class} + - [oCVob](oCVob.md) + {: .sp-class} + - [oCMOB](oCMOB.md) + {: .sp-class} + - [oCMobInter](oCMobInter.md) + {: .sp-class} + - oCMobFire + {: .sp-class} + - [fireSlot](#fireslot) = "" + {: .sp-string} + - [fireVobtreeName](#firevobtreename) = "" + {: .sp-string} + +## Class member overview + +### `fireSlot` {: .sp-string} + +The bone of the rigged model to place the fire effect at. + +### `fireVobtreeName` {: .sp-string} + +The name of the template file which contains the configuration of the fire effect. For example: `FIRETREE_MEDIUM.ZEN`. From e20e669f26a5df066d577bb09723e5a6e70ab2fa Mon Sep 17 00:00:00 2001 From: Luis Michaelis Date: Fri, 23 Feb 2024 15:02:48 +0100 Subject: [PATCH 40/61] Add documentation for `oCMobInter` --- docs/zengin/worlds/Classes/oCMobInter.md | 143 +++++++++++++++++++++++ 1 file changed, 143 insertions(+) create mode 100644 docs/zengin/worlds/Classes/oCMobInter.md diff --git a/docs/zengin/worlds/Classes/oCMobInter.md b/docs/zengin/worlds/Classes/oCMobInter.md new file mode 100644 index 0000000000..e5c04b92a8 --- /dev/null +++ b/docs/zengin/worlds/Classes/oCMobInter.md @@ -0,0 +1,143 @@ +# oCMobInter + +!!! abstract inline end "Quick Infos" + **Class Name:** `oCMobInter`
+ **Version Identifiers:**
+ — Gothic I: `35585`
+ — Gothic II: `35585`
+ **Sources:**
+ — [spacerhilfedatei.sph](https://wiki.worldofgothic.de/doku.php?id=spacer:hilfedatei)
+ — [gothic-library.ru](http://www.gothic-library.ru/publ/class_ocmobinter/1-1-0-504)
+ — [zk.gothickit.dev](https://zk.gothickit.dev/engine/objects/oCMobInter/) + + +Interactive objects can be interacted with by NPCs and the player. Every time the object is interacted with, an +`OnTrigger` event is sent to the [`triggerTarget`](#triggertarget) object. + +## Class members + +=== "Gothic 1" + + - [zCVob](zCVob.md) + {: .sp-class} + - [oCVob](oCVob.md) + {: .sp-class} + - [oCMOB](oCMOB.md) + {: .sp-class} + - [oCMobInter](oCMobInter.md) + {: .sp-class} + - [stateNum](#statenum) = 0 + {: .sp-int} + - [triggerTarget](#triggertarget) = "" + {: .sp-string} + - [useWithItem](#usewithitem) = "" + {: .sp-string} + - [conditionFunc](#conditionfunc) = "" + {: .sp-string} + - [onStateFunc](#onstatefunc) = "" + {: .sp-string} + - [rewind](#rewind) = FALSE + {: .sp-bool} + +=== "Gothic 2" + + - [zCVob](zCVob.md) + {: .sp-class} + - [oCVob](oCVob.md) + {: .sp-class} + - [oCMOB](oCMOB.md) + {: .sp-class} + - [oCMobInter](oCMobInter.md) + {: .sp-class} + - [stateNum](#statenum) = 0 + {: .sp-int} + - [triggerTarget](#triggertarget) = "" + {: .sp-string} + - [useWithItem](#usewithitem) = "" + {: .sp-string} + - [conditionFunc](#conditionfunc) = "" + {: .sp-string} + - [onStateFunc](#onstatefunc) = "" + {: .sp-string} + - [rewind](#rewind) = FALSE + {: .sp-bool} + +=== "Gothic 1 (Save)" + + - [zCVob](zCVob.md) + {: .sp-class} + - [oCVob](oCVob.md) + {: .sp-class} + - [oCMOB](oCMOB.md) + {: .sp-class} + - [oCMobInter](oCMobInter.md) + {: .sp-class} + - [stateNum](#statenum) = 0 + {: .sp-int} + - [triggerTarget](#triggertarget) = "" + {: .sp-string} + - [useWithItem](#usewithitem) = "" + {: .sp-string} + - [conditionFunc](#conditionfunc) = "" + {: .sp-string} + - [onStateFunc](#onstatefunc) = "" + {: .sp-string} + - [rewind](#rewind) = FALSE + {: .sp-bool} + +=== "Gothic 2 (Save)" + + - [zCVob](zCVob.md) + {: .sp-class} + - [oCVob](oCVob.md) + {: .sp-class} + - [oCMOB](oCMOB.md) + {: .sp-class} + - [oCMobInter](oCMobInter.md) + {: .sp-class} + - [stateNum](#statenum) = 0 + {: .sp-int} + - [triggerTarget](#triggertarget) = "" + {: .sp-string} + - [useWithItem](#usewithitem) = "" + {: .sp-string} + - [conditionFunc](#conditionfunc) = "" + {: .sp-string} + - [onStateFunc](#onstatefunc) = "" + {: .sp-string} + - [rewind](#rewind) = FALSE + {: .sp-bool} + +## Class member overview + +### `stateNum` {: .sp-int} + +Unknown. + +### `triggerTarget` {: .sp-string} + +The name of the VObject(s) to send an `OnTrigger` event to when this object is interacted with. Controlled by +the [`rewind`](#rewind) property. + +### `useWithItem` {: .sp-string} + +The name of the item which the player or NPC must have in their inventory in order to interact with the object. +Corresponds to the name of the item instance in the scripts. + +### `conditionFunc` {: .sp-string} + +The name of a script function which, when called, determines whether the object can be interacted with. The script +function returns an int which is either `0`, if the object should be disabled and `1` if it should be enabled. + +### `onStateFunc` {: .sp-string} + +The name of a script function to be called when the object is being used. + +### `rewind` {: .sp-bool} + +Determines whether an `OnTrigger` event should be sent every time the object is interacted with or only the first time. + +**Accepted values:** + +* `TRUE` — Send `OnTrigger` events multiple times +* `FALSE` — Only send the event once From a6f3fd4d7293003da12c807d122dc48b651b5b25 Mon Sep 17 00:00:00 2001 From: Luis Michaelis Date: Fri, 23 Feb 2024 15:02:54 +0100 Subject: [PATCH 41/61] Add documentation for `oCMobLadder` --- docs/zengin/worlds/Classes/oCMobLadder.md | 76 +++++++++++++++++++++++ 1 file changed, 76 insertions(+) create mode 100644 docs/zengin/worlds/Classes/oCMobLadder.md diff --git a/docs/zengin/worlds/Classes/oCMobLadder.md b/docs/zengin/worlds/Classes/oCMobLadder.md new file mode 100644 index 0000000000..3071fa0db2 --- /dev/null +++ b/docs/zengin/worlds/Classes/oCMobLadder.md @@ -0,0 +1,76 @@ +# oCMobDoor + +!!! abstract inline end "Quick Infos" + **Class Name:** `oCMobLadder`
+ **Version Identifiers:**
+ — Gothic I: `35585`
+ — Gothic II: `35585`
+ **Sources:**
+ — [spacerhilfedatei.sph](https://wiki.worldofgothic.de/doku.php?id=spacer:hilfedatei)
+ — [gothic-library.ru](http://www.gothic-library.ru/publ/ocmobladder/1-1-0-508)
+ — [zk.gothickit.dev](https://zk.gothickit.dev/engine/objects/oCMobLadder/) + +A VObject representing a ladder. NPCs can interact with ladders by climbing. + +## Class members + +=== "Gothic 1" + + - [zCVob](zCVob.md) + {: .sp-class} + - [oCVob](oCVob.md) + {: .sp-class} + - [oCMOB](oCMOB.md) + {: .sp-class} + - [oCMobInter](oCMobInter.md) + {: .sp-class} + - oCMobLadder + {: .sp-class} + - <empty> + {: .sp-none} + +=== "Gothic 2" + + - [zCVob](zCVob.md) + {: .sp-class} + - [oCVob](oCVob.md) + {: .sp-class} + - [oCMOB](oCMOB.md) + {: .sp-class} + - [oCMobInter](oCMobInter.md) + {: .sp-class} + - oCMobLadder + {: .sp-class} + - <empty> + {: .sp-none} + +=== "Gothic 1 (Save)" + + - [zCVob](zCVob.md) + {: .sp-class} + - [oCVob](oCVob.md) + {: .sp-class} + - [oCMOB](oCMOB.md) + {: .sp-class} + - [oCMobInter](oCMobInter.md) + {: .sp-class} + - oCMobLadder + {: .sp-class} + - <empty> + {: .sp-none} + +=== "Gothic 2 (Save)" + + - [zCVob](zCVob.md) + {: .sp-class} + - [oCVob](oCVob.md) + {: .sp-class} + - [oCMOB](oCMOB.md) + {: .sp-class} + - [oCMobInter](oCMobInter.md) + {: .sp-class} + - oCMobLadder + {: .sp-class} + - <empty> + {: .sp-none} + From 58a03d9a07e2996adeda14971c19d1ca3d49ec8d Mon Sep 17 00:00:00 2001 From: Luis Michaelis Date: Fri, 23 Feb 2024 15:02:59 +0100 Subject: [PATCH 42/61] Add documentation for `oCMobSwitch` --- docs/zengin/worlds/Classes/oCMobSwitch.md | 74 +++++++++++++++++++++++ 1 file changed, 74 insertions(+) create mode 100644 docs/zengin/worlds/Classes/oCMobSwitch.md diff --git a/docs/zengin/worlds/Classes/oCMobSwitch.md b/docs/zengin/worlds/Classes/oCMobSwitch.md new file mode 100644 index 0000000000..001b0cea88 --- /dev/null +++ b/docs/zengin/worlds/Classes/oCMobSwitch.md @@ -0,0 +1,74 @@ +# oCMobSwitch + +!!! abstract inline end "Quick Infos" + **Class Name:** `oCMobSwitch`
+ **Version Identifiers:**
+ — Gothic I: `35585`
+ — Gothic II: `35585`
+ **Sources:**
+ — [spacerhilfedatei.sph](https://wiki.worldofgothic.de/doku.php?id=spacer:hilfedatei)
+ — [zk.gothickit.dev](https://zk.gothickit.dev/engine/objects/oCMobSwitch/) + +A VObject representing a switch with two states. + +## Class members + +=== "Gothic 1" + + - [zCVob](zCVob.md) + {: .sp-class} + - [oCVob](oCVob.md) + {: .sp-class} + - [oCMOB](oCMOB.md) + {: .sp-class} + - [oCMobInter](oCMobInter.md) + {: .sp-class} + - oCMobSwitch + {: .sp-class} + - <empty> + {: .sp-none} + +=== "Gothic 2" + + - [zCVob](zCVob.md) + {: .sp-class} + - [oCVob](oCVob.md) + {: .sp-class} + - [oCMOB](oCMOB.md) + {: .sp-class} + - [oCMobInter](oCMobInter.md) + {: .sp-class} + - oCMobSwitch + {: .sp-class} + - <empty> + {: .sp-none} + +=== "Gothic 1 (Save)" + + - [zCVob](zCVob.md) + {: .sp-class} + - [oCVob](oCVob.md) + {: .sp-class} + - [oCMOB](oCMOB.md) + {: .sp-class} + - [oCMobInter](oCMobInter.md) + {: .sp-class} + - oCMobSwitch + {: .sp-class} + - <empty> + {: .sp-none} + +=== "Gothic 2 (Save)" + + - [zCVob](zCVob.md) + {: .sp-class} + - [oCVob](oCVob.md) + {: .sp-class} + - [oCMOB](oCMOB.md) + {: .sp-class} + - [oCMobInter](oCMobInter.md) + {: .sp-class} + - oCMobSwitch + {: .sp-class} + - <empty> + {: .sp-none} From 1b74de6297f86166b82f260b3c32ad7d823c4181 Mon Sep 17 00:00:00 2001 From: Luis Michaelis Date: Fri, 23 Feb 2024 15:03:04 +0100 Subject: [PATCH 43/61] Add documentation for `oCMobWheel` --- docs/zengin/worlds/Classes/oCMobWheel.md | 74 ++++++++++++++++++++++++ 1 file changed, 74 insertions(+) create mode 100644 docs/zengin/worlds/Classes/oCMobWheel.md diff --git a/docs/zengin/worlds/Classes/oCMobWheel.md b/docs/zengin/worlds/Classes/oCMobWheel.md new file mode 100644 index 0000000000..086dadc04d --- /dev/null +++ b/docs/zengin/worlds/Classes/oCMobWheel.md @@ -0,0 +1,74 @@ +# oCMobWheel + +!!! abstract inline end "Quick Infos" + **Class Name:** `oCMobWheel`
+ **Version Identifiers:**
+ — Gothic I: `35585`
+ — Gothic II: `35585`
+ **Sources:**
+ — [spacerhilfedatei.sph](https://wiki.worldofgothic.de/doku.php?id=spacer:hilfedatei)
+ — [zk.gothickit.dev](https://zk.gothickit.dev/engine/objects/oCMobWheel/) + +A wheel with four different states. For example, this is used for the gates of the old camp in Gothic I. + +## Class members + +=== "Gothic 1" + + - [zCVob](zCVob.md) + {: .sp-class} + - [oCVob](oCVob.md) + {: .sp-class} + - [oCMOB](oCMOB.md) + {: .sp-class} + - [oCMobInter](oCMobInter.md) + {: .sp-class} + - oCMobWheel + {: .sp-class} + - <empty> + {: .sp-none} + +=== "Gothic 2" + + - [zCVob](zCVob.md) + {: .sp-class} + - [oCVob](oCVob.md) + {: .sp-class} + - [oCMOB](oCMOB.md) + {: .sp-class} + - [oCMobInter](oCMobInter.md) + {: .sp-class} + - oCMobWheel + {: .sp-class} + - <empty> + {: .sp-none} + +=== "Gothic 1 (Save)" + + - [zCVob](zCVob.md) + {: .sp-class} + - [oCVob](oCVob.md) + {: .sp-class} + - [oCMOB](oCMOB.md) + {: .sp-class} + - [oCMobInter](oCMobInter.md) + {: .sp-class} + - oCMobWheel + {: .sp-class} + - <empty> + {: .sp-none} + +=== "Gothic 2 (Save)" + + - [zCVob](zCVob.md) + {: .sp-class} + - [oCVob](oCVob.md) + {: .sp-class} + - [oCMOB](oCMOB.md) + {: .sp-class} + - [oCMobInter](oCMobInter.md) + {: .sp-class} + - oCMobWheel + {: .sp-class} + - <empty> + {: .sp-none} From edf725eaebc08459159e41a0afef3d9a92e6d8b3 Mon Sep 17 00:00:00 2001 From: Luis Michaelis Date: Fri, 23 Feb 2024 15:03:10 +0100 Subject: [PATCH 44/61] Add documentation for `oCTouchDamage` --- docs/zengin/worlds/Classes/oCTouchDamage.md | 56 +++++++++++++++++++++ 1 file changed, 56 insertions(+) create mode 100644 docs/zengin/worlds/Classes/oCTouchDamage.md diff --git a/docs/zengin/worlds/Classes/oCTouchDamage.md b/docs/zengin/worlds/Classes/oCTouchDamage.md new file mode 100644 index 0000000000..351532fe2f --- /dev/null +++ b/docs/zengin/worlds/Classes/oCTouchDamage.md @@ -0,0 +1,56 @@ +# oCTouchDamage + +!!! abstract inline end "Quick Infos" + **Class Name:** `oCTouchDamage`
+ **Version Identifiers:**
+ — Gothic I: `36865`
+ — Gothic II: `36865`
+ **ZenKit Class:** `VTouchDamage`
+ **Sources:**
+ — [zk.gothickit.dev](https://zk.gothickit.dev/engine/objects/oCTouchDamage/) + +## Class members + +=== "Gothic 1" + + - [zCVob](zCVob.md) + {: .sp-class} + - [zCTouchDamage](zCTouchDamage.md) + {: .sp-class} + - oCTouchDamage + {: .sp-class} + - <empty> + {: .sp-none} + +=== "Gothic 2" + + - [zCVob](zCVob.md) + {: .sp-class} + - [zCTouchDamage](zCTouchDamage.md) + {: .sp-class} + - oCTouchDamage + {: .sp-class} + - <empty> + {: .sp-none} + +=== "Gothic 1 (Save)" + + - [zCVob](zCVob.md) + {: .sp-class} + - [zCTouchDamage](zCTouchDamage.md) + {: .sp-class} + - oCTouchDamage + {: .sp-class} + - <empty> + {: .sp-none} + +=== "Gothic 2 (Save)" + + - [zCVob](zCVob.md) + {: .sp-class} + - [zCTouchDamage](zCTouchDamage.md) + {: .sp-class} + - oCTouchDamage + {: .sp-class} + - <empty> + {: .sp-none} From aa2fdf831478b8ed6ba467a4689937d68cd04bcc Mon Sep 17 00:00:00 2001 From: Luis Michaelis Date: Fri, 23 Feb 2024 15:03:18 +0100 Subject: [PATCH 45/61] Add documentation for `oCTriggerChangeLevel` --- .../worlds/Classes/oCTriggerChangeLevel.md | 77 +++++++++++++++++++ 1 file changed, 77 insertions(+) create mode 100644 docs/zengin/worlds/Classes/oCTriggerChangeLevel.md diff --git a/docs/zengin/worlds/Classes/oCTriggerChangeLevel.md b/docs/zengin/worlds/Classes/oCTriggerChangeLevel.md new file mode 100644 index 0000000000..d56fb03f05 --- /dev/null +++ b/docs/zengin/worlds/Classes/oCTriggerChangeLevel.md @@ -0,0 +1,77 @@ +# oCTriggerChangeLevel + +!!! abstract inline end "Quick Infos" + **Class Name:** `oCTriggerChangeLevel`
+ **Version Identifiers:**
+ — Gothic I: `24577`
+ — Gothic II: `24577`
+ **Sources:**
+ — [spacerhilfedatei.sph](https://wiki.worldofgothic.de/doku.php?id=spacer:hilfedatei)
+ — [zk.gothickit.dev](https://zk.gothickit.dev/engine/objects/oCTouchDamage/) + +A special [`zCTrigger`](zCTrigger.md) which in addition to performing all other trigger actions also causes the engine +to load another level when activated. + +## Class members + +=== "Gothic 1" + + - [zCVob](zCVob.md) + {: .sp-class} + - [zCTrigger](zCTrigger.md) + {: .sp-class} + - oCTriggerChangeLevel + {: .sp-class} + - [levelName](#levelname) = "" + {: .sp-string} + - [startVobName](#startvobname) = "" + {: .sp-string} + +=== "Gothic 2" + + - [zCVob](zCVob.md) + {: .sp-class} + - [zCTrigger](zCTrigger.md) + {: .sp-class} + - oCTriggerChangeLevel + {: .sp-class} + - [levelName](#levelname) = "" + {: .sp-string} + - [startVobName](#startvobname) = "" + {: .sp-string} + +=== "Gothic 1 (Save)" + + - [zCVob](zCVob.md) + {: .sp-class} + - [zCTrigger](zCTrigger.md) + {: .sp-class} + - oCTriggerChangeLevel + {: .sp-class} + - [levelName](#levelname) = "" + {: .sp-string} + - [startVobName](#startvobname) = "" + {: .sp-string} + +=== "Gothic 2 (Save)" + + - [zCVob](zCVob.md) + {: .sp-class} + - [zCTrigger](zCTrigger.md) + {: .sp-class} + - oCTriggerChangeLevel + {: .sp-class} + - [levelName](#levelname) = "" + {: .sp-string} + - [startVobName](#startvobname) = "" + {: .sp-string} + +## Class member overview + +### `levelName` {: .sp-string} + +The name of the level to load including the file extension. + +### `startVobName` {: .sp-string} + +The name of the VObject in the new level to place the player at. From a51a52fbc8b70da7e9465555d08e01d380427213 Mon Sep 17 00:00:00 2001 From: Luis Michaelis Date: Fri, 23 Feb 2024 15:03:24 +0100 Subject: [PATCH 46/61] Add documentation for `oCTriggerScript` --- docs/zengin/worlds/Classes/oCTriggerScript.md | 65 +++++++++++++++++++ 1 file changed, 65 insertions(+) create mode 100644 docs/zengin/worlds/Classes/oCTriggerScript.md diff --git a/docs/zengin/worlds/Classes/oCTriggerScript.md b/docs/zengin/worlds/Classes/oCTriggerScript.md new file mode 100644 index 0000000000..072bdc78bd --- /dev/null +++ b/docs/zengin/worlds/Classes/oCTriggerScript.md @@ -0,0 +1,65 @@ +# oCTriggerScript + +!!! abstract inline end "Quick Infos" + **Class Name:** `oCTriggerScript`
+ **Version Identifiers:**
+ — Gothic I: `24577`
+ — Gothic II: `24577`
+ **Sources:**
+ — [spacerhilfedatei.sph](https://wiki.worldofgothic.de/doku.php?id=spacer:hilfedatei)
+ — [zk.gothickit.dev](https://zk.gothickit.dev/engine/objects/oCTriggerScript/) + +A special [`zCTrigger`](zCTrigger.md) which in addition to performing all other trigger actions also calls a script +function when the trigger is activated. `OnUntrigger` events do not result in the script function being called. + +## Class members + +=== "Gothic 1" + + - [zCVob](zCVob.md) + {: .sp-class} + - [zCTrigger](zCTrigger.md) + {: .sp-class} + - oCTriggerScript + {: .sp-class} + - [scriptFunc](#scriptfunc) = "" + {: .sp-string} + +=== "Gothic 2" + + - [zCVob](zCVob.md) + {: .sp-class} + - [zCTrigger](zCTrigger.md) + {: .sp-class} + - oCTriggerScript + {: .sp-class} + - [scriptFunc](#scriptfunc) = "" + {: .sp-string} + +=== "Gothic 1 (Save)" + + - [zCVob](zCVob.md) + {: .sp-class} + - [zCTrigger](zCTrigger.md) + {: .sp-class} + - oCTriggerScript + {: .sp-class} + - [scriptFunc](#scriptfunc) = "" + {: .sp-string} + +=== "Gothic 2 (Save)" + + - [zCVob](zCVob.md) + {: .sp-class} + - [zCTrigger](zCTrigger.md) + {: .sp-class} + - oCTriggerScript + {: .sp-class} + - [scriptFunc](#scriptfunc) = "" + {: .sp-string} + +## Class member overview + +### `scriptFunc` {: .sp-string} + +The name script function to call when the trigger successfully processes a message. From c1fa7ac20813cd438b5835665052322654846a1e Mon Sep 17 00:00:00 2001 From: Luis Michaelis Date: Fri, 23 Feb 2024 15:03:40 +0100 Subject: [PATCH 47/61] Fixup small formatting issues --- docs/zengin/worlds/Classes/zCVob.md | 9 ++------- docs/zengin/worlds/Classes/zCVobLight.md | 2 +- 2 files changed, 3 insertions(+), 8 deletions(-) diff --git a/docs/zengin/worlds/Classes/zCVob.md b/docs/zengin/worlds/Classes/zCVob.md index 44f0431054..efd3403175 100644 --- a/docs/zengin/worlds/Classes/zCVob.md +++ b/docs/zengin/worlds/Classes/zCVob.md @@ -7,7 +7,8 @@ — Gothic II: `52224`
**Sources:**
— [spacerhilfedatei.sph](https://wiki.worldofgothic.de/doku.php?id=spacer:hilfedatei)
- — [gothic-library.ru](http://www.gothic-library.ru/publ/class_zcvob/1-1-0-467) + — [gothic-library.ru](http://www.gothic-library.ru/publ/class_zcvob/1-1-0-467)
+ — [zk.gothickit.dev](https://zk.gothickit.dev/engine/objects/zCVob/) Represents so-called virtual objects which appear in the game world. `zCVob` is the base class for all virtual objects which include everything from static models like boxes to interactive elements like doors and chests and invisible trigger objects. @@ -362,9 +363,3 @@ Unknown. !!! warning This property is only available in saved games. - -[^1]: - Heavily inspired by the zCVob article at [gothic-library](http://www.gothic-library.ru/publ/class_zcvob/1-1-0-467). - -[^2]: - Corrected with information found in [ZenKit ZenGin Reference](https://zk.gothickit.dev/engine/objects/zCVob/). diff --git a/docs/zengin/worlds/Classes/zCVobLight.md b/docs/zengin/worlds/Classes/zCVobLight.md index c1d508a351..44a139bd6d 100644 --- a/docs/zengin/worlds/Classes/zCVobLight.md +++ b/docs/zengin/worlds/Classes/zCVobLight.md @@ -313,7 +313,7 @@ Whether the color animation should smoothly interpolate between keyframes. !!! warning This value is only valid for dynamic lights. Check [`lightStatic`](#lightstatic) before use. -#### `canMove` {: .sp-bool} +### `canMove` {: .sp-bool} Unknown. From f0d138bf3b1661274af318fcc6125262cc3033dc Mon Sep 17 00:00:00 2001 From: Luis Michaelis Date: Fri, 23 Feb 2024 15:24:21 +0100 Subject: [PATCH 48/61] Link and page title fixes --- docs/zengin/worlds/Classes/oCMobLadder.md | 2 +- .../worlds/Classes/oCTriggerChangeLevel.md | 2 +- docs/zengin/worlds/Classes/zCCodeMaster.md | 35 ++++++------------- docs/zengin/worlds/Classes/zCMover.md | 2 +- .../worlds/Classes/zCTriggerWorldStart.md | 2 +- docs/zengin/worlds/Classes/zCVobAnimate.md | 7 ++-- .../Classes/zCZoneVobFarPlaneDefault.md | 2 +- 7 files changed, 18 insertions(+), 34 deletions(-) diff --git a/docs/zengin/worlds/Classes/oCMobLadder.md b/docs/zengin/worlds/Classes/oCMobLadder.md index 3071fa0db2..f401f06465 100644 --- a/docs/zengin/worlds/Classes/oCMobLadder.md +++ b/docs/zengin/worlds/Classes/oCMobLadder.md @@ -1,4 +1,4 @@ -# oCMobDoor +# oCMobLadder !!! abstract inline end "Quick Infos" **Class Name:** `oCMobLadder`
diff --git a/docs/zengin/worlds/Classes/oCTriggerChangeLevel.md b/docs/zengin/worlds/Classes/oCTriggerChangeLevel.md index d56fb03f05..e0c30fe76f 100644 --- a/docs/zengin/worlds/Classes/oCTriggerChangeLevel.md +++ b/docs/zengin/worlds/Classes/oCTriggerChangeLevel.md @@ -7,7 +7,7 @@ — Gothic II: `24577`
**Sources:**
— [spacerhilfedatei.sph](https://wiki.worldofgothic.de/doku.php?id=spacer:hilfedatei)
- — [zk.gothickit.dev](https://zk.gothickit.dev/engine/objects/oCTouchDamage/) + — [zk.gothickit.dev](https://zk.gothickit.dev/engine/objects/oCTriggerChangeLevel/) A special [`zCTrigger`](zCTrigger.md) which in addition to performing all other trigger actions also causes the engine to load another level when activated. diff --git a/docs/zengin/worlds/Classes/zCCodeMaster.md b/docs/zengin/worlds/Classes/zCCodeMaster.md index d5b907f903..20d6ab3a1e 100644 --- a/docs/zengin/worlds/Classes/zCCodeMaster.md +++ b/docs/zengin/worlds/Classes/zCCodeMaster.md @@ -37,11 +37,7 @@ from all slaves, it emits an `OnTrigger` event to the [`triggerTarget`](#trigger {: .sp-folder} - [untriggerCancels](#untriggercancels) = FALSE {: .sp-bool} - - [slaveVobName0](#slavevobname) = "" - {: .sp-string} - - [slaveVobName1](#slavevobname) = "" - {: .sp-string} - - [slaveVobName2](#slavevobname) = "" + - [slaveVobName](#slavevobname) ... = "" {: .sp-string} === "Gothic 2" @@ -66,11 +62,7 @@ from all slaves, it emits an `OnTrigger` event to the [`triggerTarget`](#trigger {: .sp-folder} - [untriggerCancels](#untriggercancels) = FALSE {: .sp-bool} - - [slaveVobName0](#slavevobname) = "" - {: .sp-string} - - [slaveVobName1](#slavevobname) = "" - {: .sp-string} - - [slaveVobName2](#slavevobname) = "" + - [slaveVobName](#slavevobname) ... = "" {: .sp-string} === "Gothic 1 (Save)" @@ -95,11 +87,7 @@ from all slaves, it emits an `OnTrigger` event to the [`triggerTarget`](#trigger {: .sp-folder} - [untriggerCancels](#untriggercancels) = FALSE {: .sp-bool} - - [slaveVobName0](#slavevobname) = "" - {: .sp-string} - - [slaveVobName1](#slavevobname) = "" - {: .sp-string} - - [slaveVobName2](#slavevobname) = "" + - [slaveVobName](#slavevobname) ... = "" {: .sp-string} === "Gothic 2 (Save)" @@ -124,18 +112,12 @@ from all slaves, it emits an `OnTrigger` event to the [`triggerTarget`](#trigger {: .sp-folder} - [untriggerCancels](#untriggercancels) = FALSE {: .sp-bool} - - [slaveVobName0](#slavevobname) = "" - {: .sp-string} - - [slaveVobName1](#slavevobname) = "" - {: .sp-string} - - [slaveVobName2](#slavevobname) = "" + - [slaveVobName](#slavevobname) ... = "" {: .sp-string} - - [numSlavesTriggered](#numslavestriggered) + - [numSlavesTriggered](#numslavestriggered) = 0 {: .sp-int} - - slaveTriggered0 - {: .sp-type} - - slaveTriggered1 - {: .sp-type} + - slaveTriggered ... = NULL + {: .sp-class} ## Class member overview @@ -195,3 +177,6 @@ The name of a slave VObject. ### `numSlavesTriggered` {: .sp-int} Unknown. + +!!! warning + This property is only available in saved games. diff --git a/docs/zengin/worlds/Classes/zCMover.md b/docs/zengin/worlds/Classes/zCMover.md index e67f728917..b344522c23 100644 --- a/docs/zengin/worlds/Classes/zCMover.md +++ b/docs/zengin/worlds/Classes/zCMover.md @@ -284,7 +284,7 @@ Controls how the mover behaves in response to events ("activation"). to the "closed" state after a fixed amount of time specified by [`stayOpenTimeSec`](#stayopentimesec). * `NSTATE_LOOP` — The mover opens and closes in a loop indefinitely. * `NSTATE_SINGLE_KEYS` — The mover can transition to each keyframe separately. Often used in conjunction - with a [`zCMoverController`](zCMoverControler). + with a [`zCMoverControler`](zCMoverControler.md). ### `touchBlockerDamage` {: .sp-float} diff --git a/docs/zengin/worlds/Classes/zCTriggerWorldStart.md b/docs/zengin/worlds/Classes/zCTriggerWorldStart.md index 1927ed2377..911364610e 100644 --- a/docs/zengin/worlds/Classes/zCTriggerWorldStart.md +++ b/docs/zengin/worlds/Classes/zCTriggerWorldStart.md @@ -7,7 +7,7 @@ — Gothic II: `52224`
**Sources:**
— [spacerhilfedatei.sph](https://wiki.worldofgothic.de/doku.php?id=spacer:hilfedatei)
- — [zk.gothickit.dev](https://zk.gothickit.dev/engine/objects/zCTriggerUntouch/) + — [zk.gothickit.dev](https://zk.gothickit.dev/engine/objects/zCTriggerWorldStart/) A special trigger which fires an `OnTrigger` event to its [target](#triggertarget) when the world is loaded and started. diff --git a/docs/zengin/worlds/Classes/zCVobAnimate.md b/docs/zengin/worlds/Classes/zCVobAnimate.md index 16fdcbb050..7259544f04 100644 --- a/docs/zengin/worlds/Classes/zCVobAnimate.md +++ b/docs/zengin/worlds/Classes/zCVobAnimate.md @@ -11,10 +11,9 @@ — [zk.gothickit.dev](https://zk.gothickit.dev/engine/objects/zCVobAnimate/) -A VObject used to create animated models. The visual of such objects can either be a -[morph mesh](../../engine/formats/morph-mesh.md) or a model with a skeletal animation -(i.e. a [model script](../../engine/formats/model-script.md)). The animation of these objects can be started -and stopped using `OnTrigger` and `OnUntrigger` events. +A VObject used to create animated models. The visual of such objects can either be a morph mesh or a model with a +skeletal animation (i.e. a model script). The animation of these objects can be started and stopped using `OnTrigger` +and `OnUntrigger` events. ## Class members diff --git a/docs/zengin/worlds/Classes/zCZoneVobFarPlaneDefault.md b/docs/zengin/worlds/Classes/zCZoneVobFarPlaneDefault.md index 8dd65a1be5..9cd86c7fd3 100644 --- a/docs/zengin/worlds/Classes/zCZoneVobFarPlaneDefault.md +++ b/docs/zengin/worlds/Classes/zCZoneVobFarPlaneDefault.md @@ -6,7 +6,7 @@ — Gothic I: `12289`
— Gothic II: `52224`
**Sources:**
- — [gothic-library.ru](http://www.gothic-library.ru/publ/class_zczonevobfarplane/1-1-0-706)
+ — [gothic-library.ru](http://www.gothic-library.ru/publ/class_zczonevobfarplanedefault/1-1-0-707)
— [zk.gothickit.dev](https://zk.gothickit.dev/engine/objects/zCZoneVobFarPlaneDefault/) From 666b51e0859f698473f967d8aca9a6d38c603a2f Mon Sep 17 00:00:00 2001 From: Luis Michaelis Date: Fri, 23 Feb 2024 16:20:25 +0100 Subject: [PATCH 49/61] Add documentation for `zCCamTrj_KeyFrame` --- .../worlds/Classes/zCCamTrj_KeyFrame.md | 255 ++++++++++++++++++ 1 file changed, 255 insertions(+) create mode 100644 docs/zengin/worlds/Classes/zCCamTrj_KeyFrame.md diff --git a/docs/zengin/worlds/Classes/zCCamTrj_KeyFrame.md b/docs/zengin/worlds/Classes/zCCamTrj_KeyFrame.md new file mode 100644 index 0000000000..c6315ffec0 --- /dev/null +++ b/docs/zengin/worlds/Classes/zCCamTrj_KeyFrame.md @@ -0,0 +1,255 @@ +# zCCamTrj_KeyFrame + +!!! abstract inline end "Quick Infos" + **Type:** Virtual Object
+ **Format Name:** ZenGin Archive
+ **File Extension:** `.ZEN`
+ **Class Name:** `zCCamTrj_KeyFrame`
+ **Version Identifiers:**
+ — Gothic I: `12289`
+ — Gothic II: `52224`
+ **ZenKit Class:** `VCameraTrajectoryFrame`
+ **Sources:**
+ — [gothic-library.ru](http://www.gothic-library.ru/publ/zccamtrj_keyframe/1-1-0-495)
+ — [zk.gothickit.dev](https://zk.gothickit.dev/engine/objects/zCCamTrj_KeyFrame/) + +## Class members + +=== "Gothic 1" + + - [zCVob](zCVob.md) + {: .sp-class} + - zCCamTrj_KeyFrame + {: .sp-class} + - [time](#time) = -1.0 + {: .sp-float} + - [angleRollDeg](#anglerolldeg) = 0.0 + {: .sp-float} + - [camFOVScale](#camfovscale) = 0.0 + {: .sp-float} + - [motionType](#motiontype) = SMOOTH + {: .sp-enum} + - [motionTypeFOV](#motiontypefov) = SMOOTH + {: .sp-enum} + - [motionTypeRoll](#motiontyperoll) = SMOOTH + {: .sp-enum} + - [motionTypeTimeScale](#motiontypetimescale) = SMOOTH + {: .sp-enum} + - Details + {: .sp-folder} + - [tension](#tension) = 0.0 + {: .sp-float} + - [bias](#bias) = 0.0 + {: .sp-float} + - [continuity](#continuity) = 0.0 + {: .sp-float} + - [timeScale](#timescale) = 1.0 + {: .sp-float} + - [timeIsFixed](#timeisfixed) = FALSE + {: .sp-bool} + - [originalPose](#originalpose) = 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 + {: .sp-misc} + +=== "Gothic 2" + + - [zCVob](zCVob.md) + {: .sp-class} + - zCCamTrj_KeyFrame + {: .sp-class} + - [time](#time) = -1.0 + {: .sp-float} + - [angleRollDeg](#anglerolldeg) = 0.0 + {: .sp-float} + - [camFOVScale](#camfovscale) = 0.0 + {: .sp-float} + - [motionType](#motiontype) = SMOOTH + {: .sp-enum} + - [motionTypeFOV](#motiontypefov) = SMOOTH + {: .sp-enum} + - [motionTypeRoll](#motiontyperoll) = SMOOTH + {: .sp-enum} + - [motionTypeTimeScale](#motiontypetimescale) = SMOOTH + {: .sp-enum} + - Details + {: .sp-folder} + - [tension](#tension) = 0.0 + {: .sp-float} + - [bias](#bias) = 0.0 + {: .sp-float} + - [continuity](#continuity) = 0.0 + {: .sp-float} + - [timeScale](#timescale) = 1.0 + {: .sp-float} + - [timeIsFixed](#timeisfixed) = FALSE + {: .sp-bool} + - [originalPose](#originalpose) = 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 + {: .sp-misc} + +=== "Gothic 1 (Save)" + + - [zCVob](zCVob.md) + {: .sp-class} + - zCCamTrj_KeyFrame + {: .sp-class} + - [time](#time) = -1.0 + {: .sp-float} + - [angleRollDeg](#anglerolldeg) = 0.0 + {: .sp-float} + - [camFOVScale](#camfovscale) = 0.0 + {: .sp-float} + - [motionType](#motiontype) = SMOOTH + {: .sp-enum} + - [motionTypeFOV](#motiontypefov) = SMOOTH + {: .sp-enum} + - [motionTypeRoll](#motiontyperoll) = SMOOTH + {: .sp-enum} + - [motionTypeTimeScale](#motiontypetimescale) = SMOOTH + {: .sp-enum} + - Details + {: .sp-folder} + - [tension](#tension) = 0.0 + {: .sp-float} + - [bias](#bias) = 0.0 + {: .sp-float} + - [continuity](#continuity) = 0.0 + {: .sp-float} + - [timeScale](#timescale) = 1.0 + {: .sp-float} + - [timeIsFixed](#timeisfixed) = FALSE + {: .sp-bool} + - [originalPose](#originalpose) = 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 + {: .sp-misc} + +=== "Gothic 2 (Save)" + + - [zCVob](zCVob.md) + {: .sp-class} + - zCCamTrj_KeyFrame + {: .sp-class} + - [time](#time) = -1.0 + {: .sp-float} + - [angleRollDeg](#anglerolldeg) = 0.0 + {: .sp-float} + - [camFOVScale](#camfovscale) = 0.0 + {: .sp-float} + - [motionType](#motiontype) = SMOOTH + {: .sp-enum} + - [motionTypeFOV](#motiontypefov) = SMOOTH + {: .sp-enum} + - [motionTypeRoll](#motiontyperoll) = SMOOTH + {: .sp-enum} + - [motionTypeTimeScale](#motiontypetimescale) = SMOOTH + {: .sp-enum} + - Details + {: .sp-folder} + - [tension](#tension) = 0.0 + {: .sp-float} + - [bias](#bias) = 0.0 + {: .sp-float} + - [continuity](#continuity) = 0.0 + {: .sp-float} + - [timeScale](#timescale) = 1.0 + {: .sp-float} + - [timeIsFixed](#timeisfixed) = FALSE + {: .sp-bool} + - [originalPose](#originalpose) = 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 + {: .sp-misc} + +## Class member overview + +### `time` {: .sp-float} + +Unclear. + +### `angleRollDeg` {: .sp-float} + +The camera rotation angle of the frame along the Z axis. + +### `camFOVScale` {: .sp-float} + +Focal zoom of the camera's field of view (FOV) of the frame. Use reasonable values to avoid dizzying effects. + +### `motionType` {: .sp-enum} + +The type of camera movement for the frame. + +**Accepted values:** + +* `SMOOTH` — The movement method is calculated taking into account nearby frames. +* `LINEAR` — Constant speed in the current frame. +* `STEP` - Step by step. Movement is jerky. +* `SLOW` - The camera movement slows down in the current frame. +* `FAST` - The camera movement accelerates in the current frame. +* `CUSTOM` - Not implemented. + +### `motionTypeFOV` {: .sp-enum} + +The type of focus change for the frame. + +**Accepted values:** + +* `SMOOTH` — The movement method is calculated taking into account nearby frames. +* `LINEAR` — Constant speed in the current frame. +* `STEP` - Step by step. Movement is jerky. +* `SLOW` - The camera movement slows down in the current frame. +* `FAST` - The camera movement accelerates in the current frame. +* `CUSTOM` - Not implemented. + +### `motionTypeRoll` {: .sp-enum} + +The type of rotation for the frame. + +**Accepted values:** + +* `SMOOTH` — The movement method is calculated taking into account nearby frames. +* `LINEAR` — Constant speed in the current frame. +* `STEP` - Step by step. Movement is jerky. +* `SLOW` - The camera movement slows down in the current frame. +* `FAST` - The camera movement accelerates in the current frame. +* `CUSTOM` - Not implemented. + +### `motionTypeTimeScale` {: .sp-enum} + +Unclear. + +**Accepted values:** + +* `SMOOTH` — The movement method is calculated taking into account nearby frames. +* `LINEAR` — Constant speed in the current frame. +* `STEP` - Step by step. Movement is jerky. +* `SLOW` - The camera movement slows down in the current frame. +* `FAST` - The camera movement accelerates in the current frame. +* `CUSTOM` - Not implemented. + +### `tension` {: .sp-float} + +Defines the bend of the camera motion curve at the specified key. Larger values result in a sharper bend. + +### `bias` {: .sp-float} + +Determines the slope of a line in one direction. The direction of the slope is determined by the sign, and the +steepness by the value. + +### `continuity` {: .sp-float} + +Determines the amount of curve discontinuity at this animation key. + +### `timeScale` {: .sp-float} + +Unknown. + +### `timeIsFixed` {: .sp-bool} + +An auxiliary flag indicating the time of the key frame, which cannot be changed automatically. + +**Accepted values:** + +* `TRUE` — The time of this frame is set manually and cannot be changed automatically. +* `FALSE` — The frame time is calculated from the total specified animation playback time. + +### `originalPose` {: .sp-misc} + +Unknown. + +!!! warning + This property is not available in the Spacer. From 23e99f2cb0cf629e59154594fd653529ba4d33ef Mon Sep 17 00:00:00 2001 From: Luis Michaelis Date: Fri, 23 Feb 2024 16:20:42 +0100 Subject: [PATCH 50/61] Add documentation for `zCCSCamera` --- docs/zengin/worlds/Classes/zCCSCamera.md | 364 +++++++++++++++++++++++ 1 file changed, 364 insertions(+) create mode 100644 docs/zengin/worlds/Classes/zCCSCamera.md diff --git a/docs/zengin/worlds/Classes/zCCSCamera.md b/docs/zengin/worlds/Classes/zCCSCamera.md new file mode 100644 index 0000000000..1d846c54cf --- /dev/null +++ b/docs/zengin/worlds/Classes/zCCSCamera.md @@ -0,0 +1,364 @@ +# zCCSCamera + +!!! abstract inline end "Quick Infos" + **Type:** Virtual Object
+ **Format Name:** ZenGin Archive
+ **File Extension:** `.ZEN`
+ **Class Name:** `zCCSCamera`
+ **Version Identifiers:**
+ — Gothic I: `30720`
+ — Gothic II: `33793`
+ **ZenKit Class:** `VCutsceneCamera`
+ **Sources:**
+ — [gothic-library.ru](http://www.gothic-library.ru/publ/zccscamera/1-1-0-494)
+ — [zk.gothickit.dev](https://zk.gothickit.dev/engine/objects/zCCSCamera/) + +## Class members + +=== "Gothic 1" + + - [zCVob](zCVob.md) + {: .sp-class} + - zCCSCamera + {: .sp-class} + - [camTrjFOR](#camtrjfor) = WORLD + {: .sp-enum} + - [targetTrjFOR](#targettrjfor) = WORLD + {: .sp-enum} + - [loopMode](#loopmode) = NONE + {: .sp-enum} + - [splLerpMode](#spllerpmode) = PATH + {: .sp-enum} + - [ignoreFORVobRotCam](#ignoreforvobrotcam) = FALSE + {: .sp-bool} + - [ignoreFORVobRotTarget](#ignoreforvobrottarget) = FALSE + {: .sp-bool} + - [adaptToSurroundings](#adapttosurroundings) = FALSE + {: .sp-bool} + - [easeToFirstKey](#easetofirstkey) = FALSE + {: .sp-bool} + - [easeFromLastKey](#easefromlastkey) = FALSE + {: .sp-bool} + - [totalTime](#totaltime) = 10.0 + {: .sp-float} + - [autoCamFocusVobName](#autocamfocusvobname) = "" + {: .sp-string} + - [autoCamPlayerMovable](#autocamplayermovable) = TRUE + {: .sp-bool} + - [autoCamUntriggerOnLastKey](#autocamuntriggeronlastkey) = TRUE + {: .sp-bool} + - [autoCamUntriggerOnLastKeyDelay](#autocamuntriggeronlastkeydelay) = 0.0 + {: .sp-float} + - [numPos](#numpos) = 0 + {: .sp-int} + - [numTargets](#numtargets) = 0 + {: .sp-int} + - [zCCamTrj_KeyFrame](zCCamTrj_KeyFrame.md) ...[^1] = NULL + {: .sp-class} + - [zCCamTrj_KeyFrame](zCCamTrj_KeyFrame.md) ...[^2] = NULL + {: .sp-class} + +=== "Gothic 2" + + - [zCVob](zCVob.md) + {: .sp-class} + - zCCSCamera + {: .sp-class} + - [camTrjFOR](#camtrjfor) = WORLD + {: .sp-enum} + - [targetTrjFOR](#targettrjfor) = WORLD + {: .sp-enum} + - [loopMode](#loopmode) = NONE + {: .sp-enum} + - [splLerpMode](#spllerpmode) = PATH + {: .sp-enum} + - [ignoreFORVobRotCam](#ignoreforvobrotcam) = FALSE + {: .sp-bool} + - [ignoreFORVobRotTarget](#ignoreforvobrottarget) = FALSE + {: .sp-bool} + - [adaptToSurroundings](#adapttosurroundings) = FALSE + {: .sp-bool} + - [easeToFirstKey](#easetofirstkey) = FALSE + {: .sp-bool} + - [easeFromLastKey](#easefromlastkey) = FALSE + {: .sp-bool} + - [totalTime](#totaltime) = 10.0 + {: .sp-float} + - [autoCamFocusVobName](#autocamfocusvobname) = "" + {: .sp-string} + - [autoCamPlayerMovable](#autocamplayermovable) = TRUE + {: .sp-bool} + - [autoCamUntriggerOnLastKey](#autocamuntriggeronlastkey) = TRUE + {: .sp-bool} + - [autoCamUntriggerOnLastKeyDelay](#autocamuntriggeronlastkeydelay) = 0.0 + {: .sp-float} + - [numPos](#numpos) = 0 + {: .sp-int} + - [numTargets](#numtargets) = 0 + {: .sp-int} + - [zCCamTrj_KeyFrame](zCCamTrj_KeyFrame.md) ...[^1] = NULL + {: .sp-class} + - [zCCamTrj_KeyFrame](zCCamTrj_KeyFrame.md) ...[^2] = NULL + {: .sp-class} + +=== "Gothic 1 (Save)" + + - [zCVob](zCVob.md) + {: .sp-class} + - zCCSCamera + {: .sp-class} + - [camTrjFOR](#camtrjfor) = WORLD + {: .sp-enum} + - [targetTrjFOR](#targettrjfor) = WORLD + {: .sp-enum} + - [loopMode](#loopmode) = NONE + {: .sp-enum} + - [splLerpMode](#spllerpmode) = PATH + {: .sp-enum} + - [ignoreFORVobRotCam](#ignoreforvobrotcam) = FALSE + {: .sp-bool} + - [ignoreFORVobRotTarget](#ignoreforvobrottarget) = FALSE + {: .sp-bool} + - [adaptToSurroundings](#adapttosurroundings) = FALSE + {: .sp-bool} + - [easeToFirstKey](#easetofirstkey) = FALSE + {: .sp-bool} + - [easeFromLastKey](#easefromlastkey) = FALSE + {: .sp-bool} + - [totalTime](#totaltime) = 10.0 + {: .sp-float} + - [autoCamFocusVobName](#autocamfocusvobname) = "" + {: .sp-string} + - [autoCamPlayerMovable](#autocamplayermovable) = TRUE + {: .sp-bool} + - [autoCamUntriggerOnLastKey](#autocamuntriggeronlastkey) = TRUE + {: .sp-bool} + - [autoCamUntriggerOnLastKeyDelay](#autocamuntriggeronlastkeydelay) = 0.0 + {: .sp-float} + - [numPos](#numpos) = 0 + {: .sp-int} + - [numTargets](#numtargets) = 0 + {: .sp-int} + - [zCCamTrj_KeyFrame](zCCamTrj_KeyFrame.md) ...[^1] = NULL + {: .sp-class} + - [zCCamTrj_KeyFrame](zCCamTrj_KeyFrame.md) ...[^2] = NULL + {: .sp-class} + +=== "Gothic 2 (Save)" + + - [zCVob](zCVob.md) + {: .sp-class} + - zCCSCamera + {: .sp-class} + - [camTrjFOR](#camtrjfor) = WORLD + {: .sp-enum} + - [targetTrjFOR](#targettrjfor) = WORLD + {: .sp-enum} + - [loopMode](#loopmode) = NONE + {: .sp-enum} + - [splLerpMode](#spllerpmode) = PATH + {: .sp-enum} + - [ignoreFORVobRotCam](#ignoreforvobrotcam) = FALSE + {: .sp-bool} + - [ignoreFORVobRotTarget](#ignoreforvobrottarget) = FALSE + {: .sp-bool} + - [adaptToSurroundings](#adapttosurroundings) = FALSE + {: .sp-bool} + - [easeToFirstKey](#easetofirstkey) = FALSE + {: .sp-bool} + - [easeFromLastKey](#easefromlastkey) = FALSE + {: .sp-bool} + - [totalTime](#totaltime) = 10.0 + {: .sp-float} + - [autoCamFocusVobName](#autocamfocusvobname) = "" + {: .sp-string} + - [autoCamPlayerMovable](#autocamplayermovable) = TRUE + {: .sp-bool} + - [autoCamUntriggerOnLastKey](#autocamuntriggeronlastkey) = TRUE + {: .sp-bool} + - [autoCamUntriggerOnLastKeyDelay](#autocamuntriggeronlastkeydelay) = 0.0 + {: .sp-float} + - [numPos](#numpos) = 0 + {: .sp-int} + - [numTargets](#numtargets) = 0 + {: .sp-int} + - [zCCamTrj_KeyFrame](zCCamTrj_KeyFrame.md) ...[^1] = NULL + {: .sp-class} + - [zCCamTrj_KeyFrame](zCCamTrj_KeyFrame.md) ...[^2] = NULL + {: .sp-class} + - [paused](#paused) = FALSE + {: .sp-bool} + - [started](#started) = FALSE + {: .sp-bool} + - [gotoTimeMode](#gototimemode) = FALSE + {: .sp-bool} + - [csTime](#cstime) = 0.0 + {: .sp-float} + +## Class member overview + +### `camTrjFOR` {: .sp-enum} + +The coordinate system of the key frames of the camera trajectory. + +**Accepted values:** + +* `WORLD` — Positions are relative to the global world coordinate system. +* `OBJECT` — Positions are relative to the position of the camera object in the previous frame. Essentially, when + the camera travels along the keyframes each subsequent keyframe's position is relative to the position of the + previous keyframe. The position of the first keyframe is relative to the initial position of the camera. + +### `targetTrjFOR` {: .sp-enum} + +The keyframe coordinate system of the target camera trajectory. + +**Accepted values:** + +* `WORLD` — Positions are relative to the global world coordinate system. +* `OBJECT` — Positions are relative to the position of the camera object in the previous frame. Essentially, when + the camera travels along the keyframes each subsequent keyframe's position is relative to the position of the + previous keyframe. The position of the first keyframe is relative to the initial position of the camera. + +### `loopMode` {: .sp-enum} + +The repetition mode of the camera animation. + +**Accepted values:** + +* `NONE` — The camera animation stops after the last frame is reached. +* `RESTART` — The camera animation starts from the beginning after the last frame is reached. The ModKit states, + that this is only useful if the animation is to be interrupted by scripts or triggers. +* `PINGPONG` — The camera animation re-plays the keyframes in reverse order after reaching the last frame. + +### `splLerpMode` {: .sp-enum} + +Adjust camera orientation while moving. + +**Accepted values:** + +* `UNDEF` — Unset. +* `PATH` — The camera's orientation is specified by the slope of the target path spline. +* `PATH_IGNOREROLL` — The camera's orientation is similar to `PATH` with the only difference being that the + camera's XZ plane is always parallel to the world's XZ plane. +* `PATH_ROT_SAMPLES` — The camera's orientation is based on the keyframes. + +### `ignoreFORVobRotCam` {: .sp-bool} + +Determines whether the orientation to reference VOB objects should be taken into account when passing +through key frames. + +**Accepted values:** + +* `TRUE` — Orientation to VOB reference objects is ignored. This can be useful if VOB objects appear that are + calculated by the rotation animation. After this, the orientation is taken into account only once at the + beginning of the movement. +* `FALSE` — Orientation is not ignored. + +### `ignoreFORVobRotTarget` {: .sp-bool} + +Determines the need to take into account the orientation of target key frames to reference VOB objects. + +**Accepted values:** + +* `TRUE` — Orientation to VOB reference objects is ignored. Orientation to VOB reference objects is ignored. + May be necessary when rotation of reference VOBs defines animation. After this, the orientation is taken + into account only once at the beginning of the movement. +* `FALSE` — Orientation is not ignored. + +### `adaptToSurroundings` {: .sp-bool} + +Indicates the need for dynamic adaptation to the environment. + +**Accepted values:** + +* `TRUE` — Enable adaptation. +* `FALSE` — Disable adaptation. The camera will not adapt to its environment. Useful in cases where the keyframes + in the world have taken an absolute position (i.e. the [camTrjFOR](#camtrjfor) parameter is set to `WORLD`). + +### `easeToFirstKey` {: .sp-bool} + +Gives a smooth transition of camera position from the first keyframe to the last, if possible. + +**Accepted values:** + +* `TRUE` — Smooth transition if possible. +* `FALSE` — No smooth transition. + +### `easeFromLastKey` {: .sp-bool} + +Gives a smooth transition of camera position from the last keyframe to the first, if possible. + +**Accepted values:** + +* `TRUE` — Smooth transition if possible. +* `FALSE` — No smooth transition. + +### `totalTime` {: .sp-float} + +The duration of the camera animation in seconds. + +### `autoCamFocusVobName` {: .sp-string} + +The name of the VOB object which the camera will automatically focus. + +### `autoCamPlayerMovable` {: .sp-bool} + +Indicates whether the player will be able to move when moving the camera animation. + +**Accepted values:** + +* `TRUE` — The player will be able to move. +* `FALSE` — The player is motionless. + +### `autoCamUntriggerOnLastKey` {: .sp-bool} + +Emit an `OnUntrigger` event after reaching the last animation frame. + +### `autoCamUntriggerOnLastKeyDelay` {: .sp-float} + +Unclear. + +### `numPos` {: .sp-int} + +The number of position key frames for the camera animation. + +!!! warning + This property is not available in the Spacer. + +### `numTargets` {: .sp-int} + +The number of target key frames for the camera animation. + +!!! warning + This property is not available in the Spacer. + +### `paused` {: .sp-bool} + +Unknown. + +!!! warning + This property is only available in saved games made using Gothic II. + +### `started` {: .sp-bool} + +Unknown. + +!!! warning + This property is only available in saved games made using Gothic II. + +### `gotoTimeMode` {: .sp-bool} + +Unknown. + +!!! warning + This property is only available in saved games made using Gothic II. + +### `csTime` {: .sp-float} + +Unknown. + +!!! warning + This property is only available in saved games made using Gothic II. + +[^1]: A list of position key frames. The number of items is indicated by the [`numPos`](#numpos) property. +[^2]: A list of target key frames. The number of items is indicated by the [`numTargets`](#numtargets) property. From 7ea46dd3e11e5ac659213b82d7f75e6a5878cf33 Mon Sep 17 00:00:00 2001 From: Luis Michaelis Date: Fri, 23 Feb 2024 16:44:50 +0100 Subject: [PATCH 51/61] Add documentation for `zCEffect` --- docs/zengin/worlds/Classes/zCEffect.md | 45 ++++++++++++++++++++ docs/zengin/worlds/Classes/zCPFXControler.md | 8 ++++ docs/zengin/worlds/Classes/zCTouchDamage.md | 8 ++++ docs/zengin/worlds/Classes/zCVobAnimate.md | 8 ++++ docs/zengin/worlds/Classes/zCVobLensFlare.md | 8 ++++ docs/zengin/worlds/Classes/zCVobScreenFX.md | 8 ++++ 6 files changed, 85 insertions(+) create mode 100644 docs/zengin/worlds/Classes/zCEffect.md diff --git a/docs/zengin/worlds/Classes/zCEffect.md b/docs/zengin/worlds/Classes/zCEffect.md new file mode 100644 index 0000000000..11a98530b8 --- /dev/null +++ b/docs/zengin/worlds/Classes/zCEffect.md @@ -0,0 +1,45 @@ +# zCEffect + +!!! abstract inline end "Quick Infos" + **Class Name:** `zCEffect`
+ **Version Identifiers:**
+ — Gothic I: `12289`
+ — Gothic II: `52224` + +The base class for many visual and sound effects. + +=== "Gothic 1" + + - [zCVob](zCVob.md) + {: .sp-class} + - zCEffect + {: .sp-class} + - <empty> + {: .sp-empty} + +=== "Gothic 2" + + - [zCVob](zCVob.md) + {: .sp-class} + - zCEffect + {: .sp-class} + - <empty> + {: .sp-empty} + +=== "Gothic 1 (Save)" + + - [zCVob](zCVob.md) + {: .sp-class} + - zCEffect + {: .sp-class} + - <empty> + {: .sp-empty} + +=== "Gothic 2 (Save)" + + - [zCVob](zCVob.md) + {: .sp-class} + - zCEffect + {: .sp-class} + - <empty> + {: .sp-empty} diff --git a/docs/zengin/worlds/Classes/zCPFXControler.md b/docs/zengin/worlds/Classes/zCPFXControler.md index 7bc89d9513..5cb101b564 100644 --- a/docs/zengin/worlds/Classes/zCPFXControler.md +++ b/docs/zengin/worlds/Classes/zCPFXControler.md @@ -19,6 +19,8 @@ events. - [zCVob](zCVob.md) {: .sp-class} + - [zCEffect](zCEffect.md) + {: .sp-class} - zCPFXController {: .sp-class} - [pfxName](#pfxname) = "" @@ -32,6 +34,8 @@ events. - [zCVob](zCVob.md) {: .sp-class} + - [zCEffect](zCEffect.md) + {: .sp-class} - zCPFXController {: .sp-class} - [pfxName](#pfxname) = "" @@ -45,6 +49,8 @@ events. - [zCVob](zCVob.md) {: .sp-class} + - [zCEffect](zCEffect.md) + {: .sp-class} - zCPFXController {: .sp-class} - [pfxName](#pfxname) = "" @@ -58,6 +64,8 @@ events. - [zCVob](zCVob.md) {: .sp-class} + - [zCEffect](zCEffect.md) + {: .sp-class} - zCPFXController {: .sp-class} - [pfxName](#pfxname) = "" diff --git a/docs/zengin/worlds/Classes/zCTouchDamage.md b/docs/zengin/worlds/Classes/zCTouchDamage.md index 96ed9cba63..d1c6f0fdcd 100644 --- a/docs/zengin/worlds/Classes/zCTouchDamage.md +++ b/docs/zengin/worlds/Classes/zCTouchDamage.md @@ -18,6 +18,8 @@ A VObject which damages other VObjects colliding with it. - [zCVob](zCVob.md) {: .sp-class} + - [zCEffect](zCEffect.md) + {: .sp-class} - zCTouchDamage {: .sp-class} - TouchDamage @@ -53,6 +55,8 @@ A VObject which damages other VObjects colliding with it. - [zCVob](zCVob.md) {: .sp-class} + - [zCEffect](zCEffect.md) + {: .sp-class} - zCTouchDamage {: .sp-class} - TouchDamage @@ -88,6 +92,8 @@ A VObject which damages other VObjects colliding with it. - [zCVob](zCVob.md) {: .sp-class} + - [zCEffect](zCEffect.md) + {: .sp-class} - zCTouchDamage {: .sp-class} - TouchDamage @@ -123,6 +129,8 @@ A VObject which damages other VObjects colliding with it. - [zCVob](zCVob.md) {: .sp-class} + - [zCEffect](zCEffect.md) + {: .sp-class} - zCTouchDamage {: .sp-class} - TouchDamage diff --git a/docs/zengin/worlds/Classes/zCVobAnimate.md b/docs/zengin/worlds/Classes/zCVobAnimate.md index 7259544f04..1f1d5ff725 100644 --- a/docs/zengin/worlds/Classes/zCVobAnimate.md +++ b/docs/zengin/worlds/Classes/zCVobAnimate.md @@ -21,6 +21,8 @@ and `OnUntrigger` events. - [zCVob](zCVob.md) {: .sp-class} + - [zCEffect](zCEffect.md) + {: .sp-class} - zCVobAnimate {: .sp-class} - [startOn](#starton) = "" @@ -30,6 +32,8 @@ and `OnUntrigger` events. - [zCVob](zCVob.md) {: .sp-class} + - [zCEffect](zCEffect.md) + {: .sp-class} - zCVobAnimate {: .sp-class} - [startOn](#starton) = "" @@ -39,6 +43,8 @@ and `OnUntrigger` events. - [zCVob](zCVob.md) {: .sp-class} + - [zCEffect](zCEffect.md) + {: .sp-class} - zCVobAnimate {: .sp-class} - [startOn](#starton) = "" @@ -50,6 +56,8 @@ and `OnUntrigger` events. - [zCVob](zCVob.md) {: .sp-class} + - [zCEffect](zCEffect.md) + {: .sp-class} - zCVobAnimate {: .sp-class} - [startOn](#starton) = "" diff --git a/docs/zengin/worlds/Classes/zCVobLensFlare.md b/docs/zengin/worlds/Classes/zCVobLensFlare.md index 553e15b167..a077ac319d 100644 --- a/docs/zengin/worlds/Classes/zCVobLensFlare.md +++ b/docs/zengin/worlds/Classes/zCVobLensFlare.md @@ -18,6 +18,8 @@ Represents a lens flare effect. Behaves exactly like the base [`zCVob`](zCVob.md - [zCVob](zCVob.md) {: .sp-class} + - [zCEffect](zCEffect.md) + {: .sp-class} - zCVobLensFlare {: .sp-class} - [lensflareFX](#lensflarefx) = "" @@ -27,6 +29,8 @@ Represents a lens flare effect. Behaves exactly like the base [`zCVob`](zCVob.md - [zCVob](zCVob.md) {: .sp-class} + - [zCEffect](zCEffect.md) + {: .sp-class} - zCVobLensFlare {: .sp-class} - [lensflareFX](#lensflarefx) = "" @@ -36,6 +40,8 @@ Represents a lens flare effect. Behaves exactly like the base [`zCVob`](zCVob.md - [zCVob](zCVob.md) {: .sp-class} + - [zCEffect](zCEffect.md) + {: .sp-class} - zCVobLensFlare {: .sp-class} - [lensflareFX](#lensflarefx) = "" @@ -45,6 +51,8 @@ Represents a lens flare effect. Behaves exactly like the base [`zCVob`](zCVob.md - [zCVob](zCVob.md) {: .sp-class} + - [zCEffect](zCEffect.md) + {: .sp-class} - zCVobLensFlare {: .sp-class} - [lensflareFX](#lensflarefx) = "" diff --git a/docs/zengin/worlds/Classes/zCVobScreenFX.md b/docs/zengin/worlds/Classes/zCVobScreenFX.md index 4e4b1ed066..01fbd7a8e0 100644 --- a/docs/zengin/worlds/Classes/zCVobScreenFX.md +++ b/docs/zengin/worlds/Classes/zCVobScreenFX.md @@ -19,6 +19,8 @@ for a cinematic feel to the game and other post-processing effects. - [zCVob](zCVob.md) {: .sp-class} + - [zCEffect](zCEffect.md) + {: .sp-class} - zCVobScreenFX {: .sp-class} - <empty> @@ -28,6 +30,8 @@ for a cinematic feel to the game and other post-processing effects. - [zCVob](zCVob.md) {: .sp-class} + - [zCEffect](zCEffect.md) + {: .sp-class} - zCVobScreenFX {: .sp-class} - <empty> @@ -37,6 +41,8 @@ for a cinematic feel to the game and other post-processing effects. - [zCVob](zCVob.md) {: .sp-class} + - [zCEffect](zCEffect.md) + {: .sp-class} - zCVobScreenFX {: .sp-class} - <empty> @@ -46,6 +52,8 @@ for a cinematic feel to the game and other post-processing effects. - [zCVob](zCVob.md) {: .sp-class} + - [zCEffect](zCEffect.md) + {: .sp-class} - zCVobScreenFX {: .sp-class} - <empty> From 2406b0b7706f55411d0b8c4d07ad10f1950f9345 Mon Sep 17 00:00:00 2001 From: Luis Michaelis Date: Fri, 23 Feb 2024 16:49:15 +0100 Subject: [PATCH 52/61] Add `zCEffect` as a base class of `zCEarthquake` --- docs/zengin/worlds/Classes/zCEarthquake.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/docs/zengin/worlds/Classes/zCEarthquake.md b/docs/zengin/worlds/Classes/zCEarthquake.md index f04cb1de22..da07f4111d 100644 --- a/docs/zengin/worlds/Classes/zCEarthquake.md +++ b/docs/zengin/worlds/Classes/zCEarthquake.md @@ -27,6 +27,8 @@ by a shaking camera. - [zCVob](zCVob.md) {: .sp-class} + - [zCEffect](zCEffect.md) + {: .sp-class} - zCEarthquake {: .sp-class} - Earthquake @@ -46,6 +48,8 @@ by a shaking camera. - [zCVob](zCVob.md) {: .sp-class} + - [zCEffect](zCEffect.md) + {: .sp-class} - zCEarthquake {: .sp-class} - Earthquake From b5e7072c7edd45b835e13fbc9e7437d736872639 Mon Sep 17 00:00:00 2001 From: Luis Michaelis Date: Fri, 23 Feb 2024 17:26:12 +0100 Subject: [PATCH 53/61] Add `zCEffect` as a base class of `oCTouchDamage` --- docs/zengin/worlds/Classes/oCTouchDamage.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/docs/zengin/worlds/Classes/oCTouchDamage.md b/docs/zengin/worlds/Classes/oCTouchDamage.md index 351532fe2f..f7094d8305 100644 --- a/docs/zengin/worlds/Classes/oCTouchDamage.md +++ b/docs/zengin/worlds/Classes/oCTouchDamage.md @@ -15,6 +15,8 @@ - [zCVob](zCVob.md) {: .sp-class} + - [zCEffect](zCEffect.md) + {: .sp-class} - [zCTouchDamage](zCTouchDamage.md) {: .sp-class} - oCTouchDamage From 2e9aac1887548a1c10912cf83201de131e522bc4 Mon Sep 17 00:00:00 2001 From: Luis Michaelis Date: Sat, 24 Feb 2024 07:45:58 +0100 Subject: [PATCH 54/61] Clearly mark `zCEffect` as abstract --- docs/zengin/worlds/Classes/oCTouchDamage.md | 8 +++++++- docs/zengin/worlds/Classes/zCEarthquake.md | 4 ++-- docs/zengin/worlds/Classes/zCEffect.md | 5 +++++ docs/zengin/worlds/Classes/zCPFXControler.md | 8 ++++---- docs/zengin/worlds/Classes/zCTouchDamage.md | 8 ++++---- docs/zengin/worlds/Classes/zCVobAnimate.md | 8 ++++---- docs/zengin/worlds/Classes/zCVobLensFlare.md | 8 ++++---- docs/zengin/worlds/Classes/zCVobScreenFX.md | 8 ++++---- 8 files changed, 34 insertions(+), 23 deletions(-) diff --git a/docs/zengin/worlds/Classes/oCTouchDamage.md b/docs/zengin/worlds/Classes/oCTouchDamage.md index f7094d8305..8f2a92df97 100644 --- a/docs/zengin/worlds/Classes/oCTouchDamage.md +++ b/docs/zengin/worlds/Classes/oCTouchDamage.md @@ -15,7 +15,7 @@ - [zCVob](zCVob.md) {: .sp-class} - - [zCEffect](zCEffect.md) + - [*zCEffect*](zCEffect.md) {: .sp-class} - [zCTouchDamage](zCTouchDamage.md) {: .sp-class} @@ -28,6 +28,8 @@ - [zCVob](zCVob.md) {: .sp-class} + - [*zCEffect*](zCEffect.md) + {: .sp-class} - [zCTouchDamage](zCTouchDamage.md) {: .sp-class} - oCTouchDamage @@ -39,6 +41,8 @@ - [zCVob](zCVob.md) {: .sp-class} + - [*zCEffect*](zCEffect.md) + {: .sp-class} - [zCTouchDamage](zCTouchDamage.md) {: .sp-class} - oCTouchDamage @@ -50,6 +54,8 @@ - [zCVob](zCVob.md) {: .sp-class} + - [*zCEffect*](zCEffect.md) + {: .sp-class} - [zCTouchDamage](zCTouchDamage.md) {: .sp-class} - oCTouchDamage diff --git a/docs/zengin/worlds/Classes/zCEarthquake.md b/docs/zengin/worlds/Classes/zCEarthquake.md index da07f4111d..081470d432 100644 --- a/docs/zengin/worlds/Classes/zCEarthquake.md +++ b/docs/zengin/worlds/Classes/zCEarthquake.md @@ -27,7 +27,7 @@ by a shaking camera. - [zCVob](zCVob.md) {: .sp-class} - - [zCEffect](zCEffect.md) + - [*zCEffect*](zCEffect.md) {: .sp-class} - zCEarthquake {: .sp-class} @@ -48,7 +48,7 @@ by a shaking camera. - [zCVob](zCVob.md) {: .sp-class} - - [zCEffect](zCEffect.md) + - [*zCEffect*](zCEffect.md) {: .sp-class} - zCEarthquake {: .sp-class} diff --git a/docs/zengin/worlds/Classes/zCEffect.md b/docs/zengin/worlds/Classes/zCEffect.md index 11a98530b8..46537e2d71 100644 --- a/docs/zengin/worlds/Classes/zCEffect.md +++ b/docs/zengin/worlds/Classes/zCEffect.md @@ -8,6 +8,11 @@ The base class for many visual and sound effects. +!!! warning + This object is an abstract base class and cannot be instantiated by itself. + +## Class members + === "Gothic 1" - [zCVob](zCVob.md) diff --git a/docs/zengin/worlds/Classes/zCPFXControler.md b/docs/zengin/worlds/Classes/zCPFXControler.md index 5cb101b564..e3600878f5 100644 --- a/docs/zengin/worlds/Classes/zCPFXControler.md +++ b/docs/zengin/worlds/Classes/zCPFXControler.md @@ -19,7 +19,7 @@ events. - [zCVob](zCVob.md) {: .sp-class} - - [zCEffect](zCEffect.md) + - [*zCEffect*](zCEffect.md) {: .sp-class} - zCPFXController {: .sp-class} @@ -34,7 +34,7 @@ events. - [zCVob](zCVob.md) {: .sp-class} - - [zCEffect](zCEffect.md) + - [*zCEffect*](zCEffect.md) {: .sp-class} - zCPFXController {: .sp-class} @@ -49,7 +49,7 @@ events. - [zCVob](zCVob.md) {: .sp-class} - - [zCEffect](zCEffect.md) + - [*zCEffect*](zCEffect.md) {: .sp-class} - zCPFXController {: .sp-class} @@ -64,7 +64,7 @@ events. - [zCVob](zCVob.md) {: .sp-class} - - [zCEffect](zCEffect.md) + - [*zCEffect*](zCEffect.md) {: .sp-class} - zCPFXController {: .sp-class} diff --git a/docs/zengin/worlds/Classes/zCTouchDamage.md b/docs/zengin/worlds/Classes/zCTouchDamage.md index d1c6f0fdcd..da29666ae6 100644 --- a/docs/zengin/worlds/Classes/zCTouchDamage.md +++ b/docs/zengin/worlds/Classes/zCTouchDamage.md @@ -18,7 +18,7 @@ A VObject which damages other VObjects colliding with it. - [zCVob](zCVob.md) {: .sp-class} - - [zCEffect](zCEffect.md) + - [*zCEffect*](zCEffect.md) {: .sp-class} - zCTouchDamage {: .sp-class} @@ -55,7 +55,7 @@ A VObject which damages other VObjects colliding with it. - [zCVob](zCVob.md) {: .sp-class} - - [zCEffect](zCEffect.md) + - [*zCEffect*](zCEffect.md) {: .sp-class} - zCTouchDamage {: .sp-class} @@ -92,7 +92,7 @@ A VObject which damages other VObjects colliding with it. - [zCVob](zCVob.md) {: .sp-class} - - [zCEffect](zCEffect.md) + - [*zCEffect*](zCEffect.md) {: .sp-class} - zCTouchDamage {: .sp-class} @@ -129,7 +129,7 @@ A VObject which damages other VObjects colliding with it. - [zCVob](zCVob.md) {: .sp-class} - - [zCEffect](zCEffect.md) + - [*zCEffect*](zCEffect.md) {: .sp-class} - zCTouchDamage {: .sp-class} diff --git a/docs/zengin/worlds/Classes/zCVobAnimate.md b/docs/zengin/worlds/Classes/zCVobAnimate.md index 1f1d5ff725..1f6dc23efd 100644 --- a/docs/zengin/worlds/Classes/zCVobAnimate.md +++ b/docs/zengin/worlds/Classes/zCVobAnimate.md @@ -21,7 +21,7 @@ and `OnUntrigger` events. - [zCVob](zCVob.md) {: .sp-class} - - [zCEffect](zCEffect.md) + - [*zCEffect*](zCEffect.md) {: .sp-class} - zCVobAnimate {: .sp-class} @@ -32,7 +32,7 @@ and `OnUntrigger` events. - [zCVob](zCVob.md) {: .sp-class} - - [zCEffect](zCEffect.md) + - [*zCEffect*](zCEffect.md) {: .sp-class} - zCVobAnimate {: .sp-class} @@ -43,7 +43,7 @@ and `OnUntrigger` events. - [zCVob](zCVob.md) {: .sp-class} - - [zCEffect](zCEffect.md) + - [*zCEffect*](zCEffect.md) {: .sp-class} - zCVobAnimate {: .sp-class} @@ -56,7 +56,7 @@ and `OnUntrigger` events. - [zCVob](zCVob.md) {: .sp-class} - - [zCEffect](zCEffect.md) + - [*zCEffect*](zCEffect.md) {: .sp-class} - zCVobAnimate {: .sp-class} diff --git a/docs/zengin/worlds/Classes/zCVobLensFlare.md b/docs/zengin/worlds/Classes/zCVobLensFlare.md index a077ac319d..0991d1e19f 100644 --- a/docs/zengin/worlds/Classes/zCVobLensFlare.md +++ b/docs/zengin/worlds/Classes/zCVobLensFlare.md @@ -18,7 +18,7 @@ Represents a lens flare effect. Behaves exactly like the base [`zCVob`](zCVob.md - [zCVob](zCVob.md) {: .sp-class} - - [zCEffect](zCEffect.md) + - [*zCEffect*](zCEffect.md) {: .sp-class} - zCVobLensFlare {: .sp-class} @@ -29,7 +29,7 @@ Represents a lens flare effect. Behaves exactly like the base [`zCVob`](zCVob.md - [zCVob](zCVob.md) {: .sp-class} - - [zCEffect](zCEffect.md) + - [*zCEffect*](zCEffect.md) {: .sp-class} - zCVobLensFlare {: .sp-class} @@ -40,7 +40,7 @@ Represents a lens flare effect. Behaves exactly like the base [`zCVob`](zCVob.md - [zCVob](zCVob.md) {: .sp-class} - - [zCEffect](zCEffect.md) + - [*zCEffect*](zCEffect.md) {: .sp-class} - zCVobLensFlare {: .sp-class} @@ -51,7 +51,7 @@ Represents a lens flare effect. Behaves exactly like the base [`zCVob`](zCVob.md - [zCVob](zCVob.md) {: .sp-class} - - [zCEffect](zCEffect.md) + - [*zCEffect*](zCEffect.md) {: .sp-class} - zCVobLensFlare {: .sp-class} diff --git a/docs/zengin/worlds/Classes/zCVobScreenFX.md b/docs/zengin/worlds/Classes/zCVobScreenFX.md index 01fbd7a8e0..8b20f38873 100644 --- a/docs/zengin/worlds/Classes/zCVobScreenFX.md +++ b/docs/zengin/worlds/Classes/zCVobScreenFX.md @@ -19,7 +19,7 @@ for a cinematic feel to the game and other post-processing effects. - [zCVob](zCVob.md) {: .sp-class} - - [zCEffect](zCEffect.md) + - [*zCEffect*](zCEffect.md) {: .sp-class} - zCVobScreenFX {: .sp-class} @@ -30,7 +30,7 @@ for a cinematic feel to the game and other post-processing effects. - [zCVob](zCVob.md) {: .sp-class} - - [zCEffect](zCEffect.md) + - [*zCEffect*](zCEffect.md) {: .sp-class} - zCVobScreenFX {: .sp-class} @@ -41,7 +41,7 @@ for a cinematic feel to the game and other post-processing effects. - [zCVob](zCVob.md) {: .sp-class} - - [zCEffect](zCEffect.md) + - [*zCEffect*](zCEffect.md) {: .sp-class} - zCVobScreenFX {: .sp-class} @@ -52,7 +52,7 @@ for a cinematic feel to the game and other post-processing effects. - [zCVob](zCVob.md) {: .sp-class} - - [zCEffect](zCEffect.md) + - [*zCEffect*](zCEffect.md) {: .sp-class} - zCVobScreenFX {: .sp-class} From 2f2cda33f82a463d0806ad9a73ab3f6e9245d144 Mon Sep 17 00:00:00 2001 From: Luis Michaelis Date: Sat, 24 Feb 2024 08:06:24 +0100 Subject: [PATCH 55/61] Add the abstract `zCTriggerBase` --- docs/zengin/worlds/Classes/oCCSTrigger.md | 8 +++ .../worlds/Classes/oCTriggerChangeLevel.md | 8 +++ docs/zengin/worlds/Classes/oCTriggerScript.md | 8 +++ docs/zengin/worlds/Classes/zCCodeMaster.md | 26 ++++----- docs/zengin/worlds/Classes/zCMessageFilter.md | 27 ++++----- docs/zengin/worlds/Classes/zCMover.md | 8 +++ .../zengin/worlds/Classes/zCMoverControler.md | 29 +++++----- docs/zengin/worlds/Classes/zCTrigger.md | 20 +++---- docs/zengin/worlds/Classes/zCTriggerBase.md | 58 +++++++++++++++++++ docs/zengin/worlds/Classes/zCTriggerList.md | 14 ++++- .../zengin/worlds/Classes/zCTriggerUntouch.md | 34 ++++++----- .../worlds/Classes/zCTriggerWorldStart.md | 23 ++++---- 12 files changed, 173 insertions(+), 90 deletions(-) create mode 100644 docs/zengin/worlds/Classes/zCTriggerBase.md diff --git a/docs/zengin/worlds/Classes/oCCSTrigger.md b/docs/zengin/worlds/Classes/oCCSTrigger.md index 4d264613ab..3ae775de09 100644 --- a/docs/zengin/worlds/Classes/oCCSTrigger.md +++ b/docs/zengin/worlds/Classes/oCCSTrigger.md @@ -20,6 +20,8 @@ name of the cutscene (without the extension) to be started. For this to work, th - [zCVob](zCVob.md) {: .sp-class} + - [*zCTriggerBase*](zCTriggerBase.md) + {: .sp-class} - [zCTrigger](zCTrigger.md) {: .sp-class} - oCCSTrigger @@ -31,6 +33,8 @@ name of the cutscene (without the extension) to be started. For this to work, th - [zCVob](zCVob.md) {: .sp-class} + - [*zCTriggerBase*](zCTriggerBase.md) + {: .sp-class} - [zCTrigger](zCTrigger.md) {: .sp-class} - oCCSTrigger @@ -42,6 +46,8 @@ name of the cutscene (without the extension) to be started. For this to work, th - [zCVob](zCVob.md) {: .sp-class} + - [*zCTriggerBase*](zCTriggerBase.md) + {: .sp-class} - [zCTrigger](zCTrigger.md) {: .sp-class} - oCCSTrigger @@ -53,6 +59,8 @@ name of the cutscene (without the extension) to be started. For this to work, th - [zCVob](zCVob.md) {: .sp-class} + - [*zCTriggerBase*](zCTriggerBase.md) + {: .sp-class} - [zCTrigger](zCTrigger.md) {: .sp-class} - oCCSTrigger diff --git a/docs/zengin/worlds/Classes/oCTriggerChangeLevel.md b/docs/zengin/worlds/Classes/oCTriggerChangeLevel.md index e0c30fe76f..2591848046 100644 --- a/docs/zengin/worlds/Classes/oCTriggerChangeLevel.md +++ b/docs/zengin/worlds/Classes/oCTriggerChangeLevel.md @@ -18,6 +18,8 @@ to load another level when activated. - [zCVob](zCVob.md) {: .sp-class} + - [*zCTriggerBase*](zCTriggerBase.md) + {: .sp-class} - [zCTrigger](zCTrigger.md) {: .sp-class} - oCTriggerChangeLevel @@ -31,6 +33,8 @@ to load another level when activated. - [zCVob](zCVob.md) {: .sp-class} + - [*zCTriggerBase*](zCTriggerBase.md) + {: .sp-class} - [zCTrigger](zCTrigger.md) {: .sp-class} - oCTriggerChangeLevel @@ -44,6 +48,8 @@ to load another level when activated. - [zCVob](zCVob.md) {: .sp-class} + - [*zCTriggerBase*](zCTriggerBase.md) + {: .sp-class} - [zCTrigger](zCTrigger.md) {: .sp-class} - oCTriggerChangeLevel @@ -57,6 +63,8 @@ to load another level when activated. - [zCVob](zCVob.md) {: .sp-class} + - [*zCTriggerBase*](zCTriggerBase.md) + {: .sp-class} - [zCTrigger](zCTrigger.md) {: .sp-class} - oCTriggerChangeLevel diff --git a/docs/zengin/worlds/Classes/oCTriggerScript.md b/docs/zengin/worlds/Classes/oCTriggerScript.md index 072bdc78bd..5c69d06fd4 100644 --- a/docs/zengin/worlds/Classes/oCTriggerScript.md +++ b/docs/zengin/worlds/Classes/oCTriggerScript.md @@ -18,6 +18,8 @@ function when the trigger is activated. `OnUntrigger` events do not result in th - [zCVob](zCVob.md) {: .sp-class} + - [*zCTriggerBase*](zCTriggerBase.md) + {: .sp-class} - [zCTrigger](zCTrigger.md) {: .sp-class} - oCTriggerScript @@ -29,6 +31,8 @@ function when the trigger is activated. `OnUntrigger` events do not result in th - [zCVob](zCVob.md) {: .sp-class} + - [*zCTriggerBase*](zCTriggerBase.md) + {: .sp-class} - [zCTrigger](zCTrigger.md) {: .sp-class} - oCTriggerScript @@ -40,6 +44,8 @@ function when the trigger is activated. `OnUntrigger` events do not result in th - [zCVob](zCVob.md) {: .sp-class} + - [*zCTriggerBase*](zCTriggerBase.md) + {: .sp-class} - [zCTrigger](zCTrigger.md) {: .sp-class} - oCTriggerScript @@ -51,6 +57,8 @@ function when the trigger is activated. `OnUntrigger` events do not result in th - [zCVob](zCVob.md) {: .sp-class} + - [*zCTriggerBase*](zCTriggerBase.md) + {: .sp-class} - [zCTrigger](zCTrigger.md) {: .sp-class} - oCTriggerScript diff --git a/docs/zengin/worlds/Classes/zCCodeMaster.md b/docs/zengin/worlds/Classes/zCCodeMaster.md index 20d6ab3a1e..f77391504a 100644 --- a/docs/zengin/worlds/Classes/zCCodeMaster.md +++ b/docs/zengin/worlds/Classes/zCCodeMaster.md @@ -12,17 +12,17 @@ `zCCodeMaster` VObjects keep a list of 'slave' VObjects and keep track of events received by them. If the master receives an `OnTrigger` event from a slave, it remembers that it did. After it has receives an `OnTrigger` message -from all slaves, it emits an `OnTrigger` event to the [`triggerTarget`](#triggertarget). Receiving or sending an +from all slaves, it emits an `OnTrigger` event to the [`triggerTarget`](zCTriggerBase.md#triggertarget). Receiving or sending an `OnTrigger` event is also referred to as an 'activation' for this purpose. === "Gothic 1" - [zCVob](zCVob.md) {: .sp-class} + - [*zCTriggerBase*](zCTriggerBase.md) + {: .sp-class} - zCCodeMaster {: .sp-class} - - [triggerTarget](#triggertarget) = "" - {: .sp-string} - CodeMaster {: .sp-folder} - [orderRelevant](#orderrelevant) = FALSE @@ -44,10 +44,10 @@ from all slaves, it emits an `OnTrigger` event to the [`triggerTarget`](#trigger - [zCVob](zCVob.md) {: .sp-class} + - [*zCTriggerBase*](zCTriggerBase.md) + {: .sp-class} - zCCodeMaster {: .sp-class} - - [triggerTarget](#triggertarget) = "" - {: .sp-string} - CodeMaster {: .sp-folder} - [orderRelevant](#orderrelevant) = FALSE @@ -69,10 +69,10 @@ from all slaves, it emits an `OnTrigger` event to the [`triggerTarget`](#trigger - [zCVob](zCVob.md) {: .sp-class} + - [*zCTriggerBase*](zCTriggerBase.md) + {: .sp-class} - zCCodeMaster {: .sp-class} - - [triggerTarget](#triggertarget) = "" - {: .sp-string} - CodeMaster {: .sp-folder} - [orderRelevant](#orderrelevant) = FALSE @@ -94,10 +94,10 @@ from all slaves, it emits an `OnTrigger` event to the [`triggerTarget`](#trigger - [zCVob](zCVob.md) {: .sp-class} + - [*zCTriggerBase*](zCTriggerBase.md) + {: .sp-class} - zCCodeMaster {: .sp-class} - - [triggerTarget](#triggertarget) = "" - {: .sp-string} - CodeMaster {: .sp-folder} - [orderRelevant](#orderrelevant) = FALSE @@ -121,19 +121,15 @@ from all slaves, it emits an `OnTrigger` event to the [`triggerTarget`](#trigger ## Class member overview -### `triggerTarget` {: .sp-string} - -The name of the VObject to send an `OnTrigger` event to after all slaves have fired in the correct order. - ### `orderRelevant` {: .sp-bool} Controls whether the master should keep track of the order it receives messages from its slaves. **Accepted values:** -* `TRUE` — Only send an `OnTrigger` event to the [`triggerTarget`](#triggertarget) if the slaves have fired in +* `TRUE` — Only send an `OnTrigger` event to the [`triggerTarget`](zCTriggerBase.md#triggertarget) if the slaves have fired in the exact order they are configured here. Also counts multiple activations. -* `FALSE` — Send an `OnTrigger` event to the [`triggerTarget`](#triggertarget) after all slaves have fired at least +* `FALSE` — Send an `OnTrigger` event to the [`triggerTarget`](zCTriggerBase.md#triggertarget) after all slaves have fired at least once, regardless of order. ### `firstFalseIsFailure` {: .sp-bool} diff --git a/docs/zengin/worlds/Classes/zCMessageFilter.md b/docs/zengin/worlds/Classes/zCMessageFilter.md index d53f948679..d10e66ad89 100644 --- a/docs/zengin/worlds/Classes/zCMessageFilter.md +++ b/docs/zengin/worlds/Classes/zCMessageFilter.md @@ -9,7 +9,10 @@ — [spacerhilfedatei.sph](https://wiki.worldofgothic.de/doku.php?id=spacer:hilfedatei)
— [zk.gothickit.dev](https://zk.gothickit.dev/engine/objects/zCMessageFilter/) -Transforms any incoming `OnTrigger` and `OnUntrigger` events before passing them on to the trigger target. +Transforms any incoming `OnTrigger` and `OnUntrigger` events before passing them on to the trigger target. All +`OnTrigger` and `OnUntrigger` messages received by this `zCMessageFilter` VObject are transformed according to +[`onTrigger`](#ontrigger) and [`onUntrigger`](#onuntrigger) and then passed on to the VObject with the name specified +in the [`triggerTarget`](zCTriggerBase.md#triggertarget). ## Class members @@ -17,10 +20,10 @@ Transforms any incoming `OnTrigger` and `OnUntrigger` events before passing them - [zCVob](zCVob.md) {: .sp-class} + - [*zCTriggerBase*](zCTriggerBase.md) + {: .sp-class} - zCMessageFilter {: .sp-class} - - [triggerTarget](#triggertarget) = "" - {: .sp-string} - [onTrigger](#ontrigger) = MT_TRIGGER {: .sp-enum} - [onUntrigger](#onuntrigger) = MT_UNTRIGGER @@ -30,10 +33,10 @@ Transforms any incoming `OnTrigger` and `OnUntrigger` events before passing them - [zCVob](zCVob.md) {: .sp-class} + - [*zCTriggerBase*](zCTriggerBase.md) + {: .sp-class} - zCMessageFilter {: .sp-class} - - [triggerTarget](#triggertarget) = "" - {: .sp-string} - [onTrigger](#ontrigger) = MT_TRIGGER {: .sp-enum} - [onUntrigger](#onuntrigger) = MT_UNTRIGGER @@ -43,10 +46,10 @@ Transforms any incoming `OnTrigger` and `OnUntrigger` events before passing them - [zCVob](zCVob.md) {: .sp-class} + - [*zCTriggerBase*](zCTriggerBase.md) + {: .sp-class} - zCMessageFilter {: .sp-class} - - [triggerTarget](#triggertarget) = "" - {: .sp-string} - [onTrigger](#ontrigger) = MT_TRIGGER {: .sp-enum} - [onUntrigger](#onuntrigger) = MT_UNTRIGGER @@ -56,10 +59,10 @@ Transforms any incoming `OnTrigger` and `OnUntrigger` events before passing them - [zCVob](zCVob.md) {: .sp-class} + - [*zCTriggerBase*](zCTriggerBase.md) + {: .sp-class} - zCMessageFilter {: .sp-class} - - [triggerTarget](#triggertarget) = "" - {: .sp-string} - [onTrigger](#ontrigger) = MT_TRIGGER {: .sp-enum} - [onUntrigger](#onuntrigger) = MT_UNTRIGGER @@ -67,12 +70,6 @@ Transforms any incoming `OnTrigger` and `OnUntrigger` events before passing them ## Class member overview -### `triggerTarget` {: .sp-string} - -The name of the target VObject. All `OnTrigger` and `OnUntrigger` messages received by this `zCMessageFilter` -VObject are transformed according to [`onTrigger`](#ontrigger) and [`onUntrigger`](#onuntrigger) and then -passed on to the VObject with the name specified in this field. - ### `onTrigger` {: .sp-enum} The type of event to emit to the [`triggerTarget`](#triggertarget) if this VObject receives an `OnTrigger` message. diff --git a/docs/zengin/worlds/Classes/zCMover.md b/docs/zengin/worlds/Classes/zCMover.md index b344522c23..1b8063f5df 100644 --- a/docs/zengin/worlds/Classes/zCMover.md +++ b/docs/zengin/worlds/Classes/zCMover.md @@ -36,6 +36,8 @@ Movers can be enabled and disabled using the `OnEnable`, `OnDisable` and `OnTogg - [zCVob](zCVob.md) {: .sp-class} + - [*zCTriggerBase*](zCTriggerBase.md) + {: .sp-class} - [zCTrigger](zCTrigger.md) {: .sp-class} - zCMover @@ -85,6 +87,8 @@ Movers can be enabled and disabled using the `OnEnable`, `OnDisable` and `OnTogg - [zCVob](zCVob.md) {: .sp-class} + - [*zCTriggerBase*](zCTriggerBase.md) + {: .sp-class} - [zCTrigger](zCTrigger.md) {: .sp-class} - zCMover @@ -136,6 +140,8 @@ Movers can be enabled and disabled using the `OnEnable`, `OnDisable` and `OnTogg - [zCVob](zCVob.md) {: .sp-class} + - [*zCTriggerBase*](zCTriggerBase.md) + {: .sp-class} - [zCTrigger](zCTrigger.md) {: .sp-class} - zCMover @@ -203,6 +209,8 @@ Movers can be enabled and disabled using the `OnEnable`, `OnDisable` and `OnTogg - [zCVob](zCVob.md) {: .sp-class} + - [*zCTriggerBase*](zCTriggerBase.md) + {: .sp-class} - [zCTrigger](zCTrigger.md) {: .sp-class} - zCMover diff --git a/docs/zengin/worlds/Classes/zCMoverControler.md b/docs/zengin/worlds/Classes/zCMoverControler.md index a1f982aa7c..9958e1ed93 100644 --- a/docs/zengin/worlds/Classes/zCMoverControler.md +++ b/docs/zengin/worlds/Classes/zCMoverControler.md @@ -12,8 +12,9 @@ A VObject used to control [`zCMover`](zCMover.md) objects of type `NSTATE_SINGLE_KEYS` specifically. `zCMoverControler` objects react to incoming `OnTrigger` events to send a pre-configured event to the target mover -object, controlling its animation. Mover controllers can make movers go to a specific keyframe in their animation or -just step one keyframe back and forth at a time. +object named by the [`triggerTarget`](zCTriggerBase.md#triggertarget) propery, controlling its animation. Mover +controllers can make movers go to a specific keyframe in their animation or just step one keyframe back and forth +at a time. ## Class members @@ -21,10 +22,10 @@ just step one keyframe back and forth at a time. - [zCVob](zCVob.md) {: .sp-class} + - [*zCTriggerBase*](zCTriggerBase.md) + {: .sp-class} - zCMoverControler {: .sp-class} - - [triggerTarget](#triggertarget) = "" - {: .sp-string} - [moverMessage](#movermessage) = GOTO_KEY_FIXED_DIRECTLY {: .sp-enum} - [gotoFixedKey](#gotofixedkey) = 0 @@ -34,10 +35,10 @@ just step one keyframe back and forth at a time. - [zCVob](zCVob.md) {: .sp-class} + - [*zCTriggerBase*](zCTriggerBase.md) + {: .sp-class} - zCMoverControler {: .sp-class} - - [triggerTarget](#triggertarget) = "" - {: .sp-string} - [moverMessage](#movermessage) = GOTO_KEY_FIXED_DIRECTLY {: .sp-enum} - [gotoFixedKey](#gotofixedkey) = 0 @@ -47,10 +48,10 @@ just step one keyframe back and forth at a time. - [zCVob](zCVob.md) {: .sp-class} + - [*zCTriggerBase*](zCTriggerBase.md) + {: .sp-class} - zCMoverControler {: .sp-class} - - [triggerTarget](#triggertarget) = "" - {: .sp-string} - [moverMessage](#movermessage) = GOTO_KEY_FIXED_DIRECTLY {: .sp-enum} - [gotoFixedKey](#gotofixedkey) = 0 @@ -60,10 +61,10 @@ just step one keyframe back and forth at a time. - [zCVob](zCVob.md) {: .sp-class} + - [*zCTriggerBase*](zCTriggerBase.md) + {: .sp-class} - zCMoverControler {: .sp-class} - - [triggerTarget](#triggertarget) = "" - {: .sp-string} - [moverMessage](#movermessage) = GOTO_KEY_FIXED_DIRECTLY {: .sp-enum} - [gotoFixedKey](#gotofixedkey) = 0 @@ -71,13 +72,9 @@ just step one keyframe back and forth at a time. ## Class member overview -### `triggerTarget` {: .sp-string} - -The name of the [`zCMover`](zCMover.md) VOject that is controlled by this `zCMoverControler`. - ### `moverMessage` {: .sp-enum} -The type of event to emit to the [`triggerTarget`](#triggertarget) when this controller receives an `OnTrigger` event. +The type of event to emit to the [`triggerTarget`](zCTriggerBase.md#triggertarget) when this controller receives an `OnTrigger` event. **Accepted values:** @@ -90,7 +87,7 @@ The type of event to emit to the [`triggerTarget`](#triggertarget) when this con ### `gotoFixedKey` {: .sp-int} -The keyframe of the mover referred to by [`triggerTarget`](#triggertarget) to move to. +The keyframe of the mover referred to by [`triggerTarget`](zCTriggerBase.md#triggertarget) to move to. !!! warning Only relevant if [`moverMessage`](#movermessage) is `GOTO_KEY_FIXED_DIRECTLY` or `GOTO_KEY_FIXED_ORDER`. diff --git a/docs/zengin/worlds/Classes/zCTrigger.md b/docs/zengin/worlds/Classes/zCTrigger.md index 1903c0573f..65f9559764 100644 --- a/docs/zengin/worlds/Classes/zCTrigger.md +++ b/docs/zengin/worlds/Classes/zCTrigger.md @@ -28,10 +28,10 @@ and disabled by firing `OnEnable`, `OnDisable` and `OnToggleEnabled` events at t - [zCVob](zCVob.md) {: .sp-class} + - [*zCTriggerBase*](zCTriggerBase.md) + {: .sp-class} - zCTrigger {: .sp-class} - - [triggerTarget](#triggerTarget) = "" - {: .sp-string} - Trigger {: .sp-folder} - ActivationFilter @@ -69,10 +69,10 @@ and disabled by firing `OnEnable`, `OnDisable` and `OnToggleEnabled` events at t - [zCVob](zCVob.md) {: .sp-class} + - [*zCTriggerBase*](zCTriggerBase.md) + {: .sp-class} - zCTrigger {: .sp-class} - - [triggerTarget](#triggerTarget) = "" - {: .sp-string} - Trigger {: .sp-folder} - ActivationFilter @@ -110,10 +110,10 @@ and disabled by firing `OnEnable`, `OnDisable` and `OnToggleEnabled` events at t - [zCVob](zCVob.md) {: .sp-class} + - [*zCTriggerBase*](zCTriggerBase.md) + {: .sp-class} - zCTrigger {: .sp-class} - - [triggerTarget](#triggerTarget) = "" - {: .sp-string} - Trigger {: .sp-folder} - ActivationFilter @@ -157,10 +157,10 @@ and disabled by firing `OnEnable`, `OnDisable` and `OnToggleEnabled` events at t - [zCVob](zCVob.md) {: .sp-class} + - [*zCTriggerBase*](zCTriggerBase.md) + {: .sp-class} - zCTrigger {: .sp-class} - - [triggerTarget](#triggerTarget) = "" - {: .sp-string} - Trigger {: .sp-folder} - ActivationFilter @@ -204,10 +204,6 @@ and disabled by firing `OnEnable`, `OnDisable` and `OnToggleEnabled` events at t ## Class member overview -### `triggerTarget` {: .sp-string} - -The name of VObject to send `OnTrigger` and `OnUntrigger` events to after processing. - ### `reactToOnTrigger` {: .sp-bool} Whether this trigger should react to `OnTrigger` events. diff --git a/docs/zengin/worlds/Classes/zCTriggerBase.md b/docs/zengin/worlds/Classes/zCTriggerBase.md new file mode 100644 index 0000000000..8b7c2c801e --- /dev/null +++ b/docs/zengin/worlds/Classes/zCTriggerBase.md @@ -0,0 +1,58 @@ +# zCTriggerBase + +!!! abstract inline end "Quick Infos" + **Class Name:** `zCTriggerBase`
+ **Version Identifiers:**
+ — Gothic I: `12289`
+ — Gothic II: `52224`
+ **Sources:**
+ — [zk.gothickit.dev](https://zk.gothickit.dev/engine/objects/zCTriggerBase/) + +The base class for many triggers. + +!!! warning + This object is an abstract base class and cannot be instantiated by itself. + +## Class members + +=== "Gothic 1" + + - [zCVob](zCVob.md) + {: .sp-class} + - zCTriggerBase + {: .sp-class} + - [triggerTarget](#triggerTarget) = "" + {: .sp-string} + +=== "Gothic 2" + + - [zCVob](zCVob.md) + {: .sp-class} + - zCTriggerBase + {: .sp-class} + - [triggerTarget](#triggerTarget) = "" + {: .sp-string} + +=== "Gothic 1 (Save)" + + - [zCVob](zCVob.md) + {: .sp-class} + - zCTriggerBase + {: .sp-class} + - [triggerTarget](#triggerTarget) = "" + {: .sp-string} + +=== "Gothic 2 (Save)" + + - [zCVob](zCVob.md) + {: .sp-class} + - zCTriggerBase + {: .sp-class} + - [triggerTarget](#triggerTarget) = "" + {: .sp-string} + +## Class member overview + +### `triggerTarget` {: .sp-string} + +The name of VObject to send `OnTrigger` and `OnUntrigger` events to after processing. diff --git a/docs/zengin/worlds/Classes/zCTriggerList.md b/docs/zengin/worlds/Classes/zCTriggerList.md index 9da269919d..dae5be2abd 100644 --- a/docs/zengin/worlds/Classes/zCTriggerList.md +++ b/docs/zengin/worlds/Classes/zCTriggerList.md @@ -12,7 +12,7 @@ A special trigger which emits the `OnTrigger` events emitted by the [`zCTrigger`](zCTrigger.md) to multiple targets. How the events are sent can be configured through [`listProcess`](#listprocess). The -[`triggerTarget`](zCTrigger.md#triggertarget) and [`fireDelaySec`](zCTrigger.md#firedelaysec) properties of +[`triggerTarget`](zCTriggerBase.md#triggertarget) and [`fireDelaySec`](zCTrigger.md#firedelaysec) properties of [`zCTrigger`](zCTrigger.md) should be ignored. `OnUntrigger` events sent to the trigger list are propagated to all targets in the list. @@ -23,6 +23,8 @@ How the events are sent can be configured through [`listProcess`](#listprocess). - [zCVob](zCVob.md) {: .sp-class} + - [*zCTriggerBase*](zCTriggerBase.md) + {: .sp-class} - [zCTrigger](zCTrigger.md) {: .sp-class} - zCTriggerList @@ -48,6 +50,8 @@ How the events are sent can be configured through [`listProcess`](#listprocess). - [zCVob](zCVob.md) {: .sp-class} + - [*zCTriggerBase*](zCTriggerBase.md) + {: .sp-class} - [zCTrigger](zCTrigger.md) {: .sp-class} - zCTriggerList @@ -73,6 +77,8 @@ How the events are sent can be configured through [`listProcess`](#listprocess). - [zCVob](zCVob.md) {: .sp-class} + - [*zCTriggerBase*](zCTriggerBase.md) + {: .sp-class} - [zCTrigger](zCTrigger.md) {: .sp-class} - zCTriggerList @@ -102,6 +108,8 @@ How the events are sent can be configured through [`listProcess`](#listprocess). - [zCVob](zCVob.md) {: .sp-class} + - [*zCTriggerBase*](zCTriggerBase.md) + {: .sp-class} - [zCTrigger](zCTrigger.md) {: .sp-class} - zCTriggerList @@ -142,11 +150,11 @@ Controls how events are sent to the targets. ### `triggerTarget` {: .sp-string} -The name of the VObject to send events to. Behaves like [`zCTrigger.triggerTarget`](zCTrigger.md#triggertarget). +The name of the VObject to send events to. Behaves like [`triggerTarget`](zCTriggerBase.md#triggertarget). ### `fireDelay` {: .sp-float} -The delay after which to fire the event to the target. Behaves like [`zCTrigger.fireDelaySec`](zCTrigger.md#firedelaysec). +The delay after which to fire the event to the target. Behaves like [`fireDelaySec`](zCTrigger.md#firedelaysec). ### `actTarget` {: .sp-int} diff --git a/docs/zengin/worlds/Classes/zCTriggerUntouch.md b/docs/zengin/worlds/Classes/zCTriggerUntouch.md index 9d0934884a..09a6e661c9 100644 --- a/docs/zengin/worlds/Classes/zCTriggerUntouch.md +++ b/docs/zengin/worlds/Classes/zCTriggerUntouch.md @@ -9,8 +9,8 @@ — [spacerhilfedatei.sph](https://wiki.worldofgothic.de/doku.php?id=spacer:hilfedatei)
— [zk.gothickit.dev](https://zk.gothickit.dev/engine/objects/zCTriggerUntouch/) -A trigger which fires an `OnTrigger` event to its [`triggerTarget`](#triggertarget) if any `OnUntouch` event is emitted -from an inanimate object within the object's bounding box. +A trigger which fires an `OnTrigger` event to its [`triggerTarget`](zCTriggerBase.md#triggertarget) if any `OnUntouch` +event is emitted from an inanimate object within the object's bounding box. ## Class members @@ -18,40 +18,42 @@ from an inanimate object within the object's bounding box. - [zCVob](zCVob.md) {: .sp-class} + - [*zCTriggerBase*](zCTriggerBase.md) + {: .sp-class} - zCTriggerUntouch {: .sp-class} - - [triggerTarget](#triggertarget) = "" - {: .sp-string} + - <empty> + {: .sp-none} === "Gothic 2" - [zCVob](zCVob.md) {: .sp-class} + - [*zCTriggerBase*](zCTriggerBase.md) + {: .sp-class} - zCTriggerUntouch {: .sp-class} - - [triggerTarget](#triggertarget) = "" - {: .sp-string} + - <empty> + {: .sp-none} === "Gothic 1 (Save)" - [zCVob](zCVob.md) {: .sp-class} + - [*zCTriggerBase*](zCTriggerBase.md) + {: .sp-class} - zCTriggerUntouch {: .sp-class} - - [triggerTarget](#triggertarget) = "" - {: .sp-string} + - <empty> + {: .sp-none} === "Gothic 2 (Save)" - [zCVob](zCVob.md) {: .sp-class} + - [*zCTriggerBase*](zCTriggerBase.md) + {: .sp-class} - zCTriggerUntouch {: .sp-class} - - [triggerTarget](#triggertarget) = "" - {: .sp-string} - -## Class member overview - -### `triggerTarget` {: .sp-string} - -The name of VObject to send the `OnTrigger` events to. + - <empty> + {: .sp-none} diff --git a/docs/zengin/worlds/Classes/zCTriggerWorldStart.md b/docs/zengin/worlds/Classes/zCTriggerWorldStart.md index 911364610e..e988a7872e 100644 --- a/docs/zengin/worlds/Classes/zCTriggerWorldStart.md +++ b/docs/zengin/worlds/Classes/zCTriggerWorldStart.md @@ -9,7 +9,8 @@ — [spacerhilfedatei.sph](https://wiki.worldofgothic.de/doku.php?id=spacer:hilfedatei)
— [zk.gothickit.dev](https://zk.gothickit.dev/engine/objects/zCTriggerWorldStart/) -A special trigger which fires an `OnTrigger` event to its [target](#triggertarget) when the world is loaded and started. +A special trigger which fires an `OnTrigger` event to its [`triggerTarget`](zCTriggerBase.md#triggertarget) when the +world is loaded and started. ## Class members @@ -17,10 +18,10 @@ A special trigger which fires an `OnTrigger` event to its [target](#triggertarge - [zCVob](zCVob.md) {: .sp-class} + - [*zCTriggerBase*](zCTriggerBase.md) + {: .sp-class} - zCTriggerWorldStart {: .sp-class} - - [triggerTarget](#triggertarget) = "" - {: .sp-string} - [fireOnlyFirstTime](#fireonlyfirsttime) = FALSE {: .sp-bool} @@ -28,10 +29,10 @@ A special trigger which fires an `OnTrigger` event to its [target](#triggertarge - [zCVob](zCVob.md) {: .sp-class} + - [*zCTriggerBase*](zCTriggerBase.md) + {: .sp-class} - zCTriggerWorldStart {: .sp-class} - - [triggerTarget](#triggertarget) = "" - {: .sp-string} - [fireOnlyFirstTime](#fireonlyfirsttime) = FALSE {: .sp-bool} @@ -39,10 +40,10 @@ A special trigger which fires an `OnTrigger` event to its [target](#triggertarge - [zCVob](zCVob.md) {: .sp-class} + - [*zCTriggerBase*](zCTriggerBase.md) + {: .sp-class} - zCTriggerWorldStart {: .sp-class} - - [triggerTarget](#triggertarget) = "" - {: .sp-string} - [fireOnlyFirstTime](#fireonlyfirsttime) = FALSE {: .sp-bool} @@ -50,19 +51,15 @@ A special trigger which fires an `OnTrigger` event to its [target](#triggertarge - [zCVob](zCVob.md) {: .sp-class} + - [*zCTriggerBase*](zCTriggerBase.md) + {: .sp-class} - zCTriggerWorldStart {: .sp-class} - - [triggerTarget](#triggertarget) = "" - {: .sp-string} - [fireOnlyFirstTime](#fireonlyfirsttime) = FALSE {: .sp-bool} ## Class member overview -### `triggerTarget` {: .sp-string} - -The name of VObject to send an `OnTrigger` event to when the world is loaded and started. - ### `fireOnlyFirstTime` {: .sp-bool} Determines whether to fire the `OnTrigger` event only the first time the world is loaded. From fdab11426cb0b9b42d676fcc6cd8b1839a3546b9 Mon Sep 17 00:00:00 2001 From: Luis Michaelis Date: Sat, 24 Feb 2024 08:19:47 +0100 Subject: [PATCH 56/61] Add the abstract `oCMobLockable` --- docs/zengin/worlds/Classes/oCMobContainer.md | 65 ++-------- docs/zengin/worlds/Classes/oCMobDoor.md | 85 +++---------- docs/zengin/worlds/Classes/oCMobLockable.md | 127 +++++++++++++++++++ 3 files changed, 156 insertions(+), 121 deletions(-) create mode 100644 docs/zengin/worlds/Classes/oCMobLockable.md diff --git a/docs/zengin/worlds/Classes/oCMobContainer.md b/docs/zengin/worlds/Classes/oCMobContainer.md index 25bdb503ea..de8fe53d76 100644 --- a/docs/zengin/worlds/Classes/oCMobContainer.md +++ b/docs/zengin/worlds/Classes/oCMobContainer.md @@ -24,16 +24,10 @@ An object which contains items. {: .sp-class} - [oCMobInter](oCMobInter.md) {: .sp-class} + - [*oCMobLockable*](oCMobLockable.md) + {: .sp-class} - oCMobContainer {: .sp-class} - - Lockable - {: .sp-folder} - - [locked](#locked) = FALSE - {: .sp-bool} - - [keyInstance](#keyinstance) = "" - {: .sp-string} - - [pickLockStr](#picklockstr) = "" - {: .sp-string} - Container {: .sp-folder} - [contains](#contains) = "" @@ -49,16 +43,10 @@ An object which contains items. {: .sp-class} - [oCMobInter](oCMobInter.md) {: .sp-class} + - [*oCMobLockable*](oCMobLockable.md) + {: .sp-class} - oCMobContainer {: .sp-class} - - Lockable - {: .sp-folder} - - [locked](#locked) = FALSE - {: .sp-bool} - - [keyInstance](#keyinstance) = "" - {: .sp-string} - - [pickLockStr](#picklockstr) = "" - {: .sp-string} - Container {: .sp-folder} - [contains](#contains) = "" @@ -74,16 +62,10 @@ An object which contains items. {: .sp-class} - [oCMobInter](oCMobInter.md) {: .sp-class} + - [*oCMobLockable*](oCMobLockable.md) + {: .sp-class} - oCMobContainer {: .sp-class} - - Lockable - {: .sp-folder} - - [locked](#locked) = FALSE - {: .sp-bool} - - [keyInstance](#keyinstance) = "" - {: .sp-string} - - [pickLockStr](#picklockstr) = "" - {: .sp-string} - Container {: .sp-folder} - [contains](#contains) = "" @@ -103,16 +85,10 @@ An object which contains items. {: .sp-class} - [oCMobInter](oCMobInter.md) {: .sp-class} + - [*oCMobLockable*](oCMobLockable.md) + {: .sp-class} - oCMobContainer {: .sp-class} - - Lockable - {: .sp-folder} - - [locked](#locked) = FALSE - {: .sp-bool} - - [keyInstance](#keyinstance) = "" - {: .sp-string} - - [pickLockStr](#picklockstr) = "" - {: .sp-string} - Container {: .sp-folder} - [contains](#contains) = "" @@ -124,31 +100,6 @@ An object which contains items. ## Class member overview -### `locked` {: .sp-bool} - -Determines whether the container is locked. - -**Accepted values:** - -* `TRUE` — The container is locked -* `FALSE` — The container is not locked - -### `keyInstance` {: .sp-string} - -The name of the item script instance which unlocks the container. - -!!! tip - Only relevant if the container is locked. - -### `pickLockStr` {: .sp-string} - -The combination which unlocks this container when picking the lock. Each character of the string is either `R` or -`L` where `R` stands for "Right" and `L` stands for "Left". If empty, the lock can not be picked. -
Example: `LRRLLRL`. - -!!! tip - Only relevant if the container is locked. - ### `contains` {: .sp-string} The items found inside the container as a comma-separated list. Each element of the list starts with the name of the diff --git a/docs/zengin/worlds/Classes/oCMobDoor.md b/docs/zengin/worlds/Classes/oCMobDoor.md index 11e7fbb85c..57709b0587 100644 --- a/docs/zengin/worlds/Classes/oCMobDoor.md +++ b/docs/zengin/worlds/Classes/oCMobDoor.md @@ -23,16 +23,12 @@ A VObject representing a door. This is also used for NPCs navigating the waynet. {: .sp-class} - [oCMobInter](oCMobInter.md) {: .sp-class} - - oCMobContainer - {: .sp-class} - - Lockable - {: .sp-folder} - - [locked](#locked) = FALSE - {: .sp-bool} - - [keyInstance](#keyinstance) = "" - {: .sp-string} - - [pickLockStr](#picklockstr) = "" - {: .sp-string} + - [*oCMobLockable*](oCMobLockable.md) + {: .sp-class} + - oCMobDoor + {: .sp-class} + - <empty> + {: .sp-empty} === "Gothic 2" @@ -44,16 +40,12 @@ A VObject representing a door. This is also used for NPCs navigating the waynet. {: .sp-class} - [oCMobInter](oCMobInter.md) {: .sp-class} - - oCMobContainer + - [*oCMobLockable*](oCMobLockable.md) {: .sp-class} - - Lockable - {: .sp-folder} - - [locked](#locked) = FALSE - {: .sp-bool} - - [keyInstance](#keyinstance) = "" - {: .sp-string} - - [pickLockStr](#picklockstr) = "" - {: .sp-string} + - oCMobDoor + {: .sp-class} + - <empty> + {: .sp-empty} === "Gothic 1 (Save)" @@ -65,16 +57,12 @@ A VObject representing a door. This is also used for NPCs navigating the waynet. {: .sp-class} - [oCMobInter](oCMobInter.md) {: .sp-class} - - oCMobContainer + - [*oCMobLockable*](oCMobLockable.md) + {: .sp-class} + - oCMobDoor {: .sp-class} - - Lockable - {: .sp-folder} - - [locked](#locked) = FALSE - {: .sp-bool} - - [keyInstance](#keyinstance) = "" - {: .sp-string} - - [pickLockStr](#picklockstr) = "" - {: .sp-string} + - <empty> + {: .sp-empty} === "Gothic 2 (Save)" @@ -86,40 +74,9 @@ A VObject representing a door. This is also used for NPCs navigating the waynet. {: .sp-class} - [oCMobInter](oCMobInter.md) {: .sp-class} - - oCMobContainer + - [*oCMobLockable*](oCMobLockable.md) {: .sp-class} - - Lockable - {: .sp-folder} - - [locked](#locked) = FALSE - {: .sp-bool} - - [keyInstance](#keyinstance) = "" - {: .sp-string} - - [pickLockStr](#picklockstr) = "" - {: .sp-string} - -## Class member overview - -### `locked` {: .sp-bool} - -Determines whether the container is locked. - -**Accepted values:** - -* `TRUE` — The container is locked -* `FALSE` — The container is not locked - -### `keyInstance` {: .sp-string} - -The name of the item script instance which unlocks the container. - -!!! tip - Only relevant if the container is locked. - -### `pickLockStr` {: .sp-string} - -The combination which unlocks this container when picking the lock. Each character of the string is either `R` or -`L` where `R` stands for "Right" and `L` stands for "Left". If empty, the lock can not be picked. -
Example: `LRRLLRL`. - -!!! tip - Only relevant if the container is locked. + - oCMobDoor + {: .sp-class} + - <empty> + {: .sp-empty} diff --git a/docs/zengin/worlds/Classes/oCMobLockable.md b/docs/zengin/worlds/Classes/oCMobLockable.md new file mode 100644 index 0000000000..6652a5774f --- /dev/null +++ b/docs/zengin/worlds/Classes/oCMobLockable.md @@ -0,0 +1,127 @@ +# oCMobLockable + +!!! abstract inline end "Quick Infos" + **Class Name:** `oCMobLockable`
+ **Version Identifiers:**
+ — Gothic I: `12289`
+ — Gothic II: `52224`
+ **Sources:**
+ — [zk.gothickit.dev](https://zk.gothickit.dev/engine/objects/oCMobLockable/) + +The base class for many lockable objects like [containers](oCMobContainer.md) and [doors](oCMobDoor.md). + +!!! warning + This object is an abstract base class and cannot be instantiated by itself. + +## Class members + +=== "Gothic 1" + + - [zCVob](zCVob.md) + {: .sp-class} + - [oCVob](oCVob.md) + {: .sp-class} + - [oCMOB](oCMOB.md) + {: .sp-class} + - [oCMobInter](oCMobInter.md) + {: .sp-class} + - oCMobContainer + {: .sp-class} + - Lockable + {: .sp-folder} + - [locked](#locked) = FALSE + {: .sp-bool} + - [keyInstance](#keyinstance) = "" + {: .sp-string} + - [pickLockStr](#picklockstr) = "" + {: .sp-string} + +=== "Gothic 2" + + - [zCVob](zCVob.md) + {: .sp-class} + - [oCVob](oCVob.md) + {: .sp-class} + - [oCMOB](oCMOB.md) + {: .sp-class} + - [oCMobInter](oCMobInter.md) + {: .sp-class} + - oCMobContainer + {: .sp-class} + - Lockable + {: .sp-folder} + - [locked](#locked) = FALSE + {: .sp-bool} + - [keyInstance](#keyinstance) = "" + {: .sp-string} + - [pickLockStr](#picklockstr) = "" + {: .sp-string} + +=== "Gothic 1 (Save)" + + - [zCVob](zCVob.md) + {: .sp-class} + - [oCVob](oCVob.md) + {: .sp-class} + - [oCMOB](oCMOB.md) + {: .sp-class} + - [oCMobInter](oCMobInter.md) + {: .sp-class} + - oCMobContainer + {: .sp-class} + - Lockable + {: .sp-folder} + - [locked](#locked) = FALSE + {: .sp-bool} + - [keyInstance](#keyinstance) = "" + {: .sp-string} + - [pickLockStr](#picklockstr) = "" + {: .sp-string} + +=== "Gothic 2 (Save)" + + - [zCVob](zCVob.md) + {: .sp-class} + - [oCVob](oCVob.md) + {: .sp-class} + - [oCMOB](oCMOB.md) + {: .sp-class} + - [oCMobInter](oCMobInter.md) + {: .sp-class} + - oCMobContainer + {: .sp-class} + - Lockable + {: .sp-folder} + - [locked](#locked) = FALSE + {: .sp-bool} + - [keyInstance](#keyinstance) = "" + {: .sp-string} + - [pickLockStr](#picklockstr) = "" + {: .sp-string} + +## Class member overview + +### `locked` {: .sp-bool} + +Determines whether the container is locked. + +**Accepted values:** + +* `TRUE` — The container is locked +* `FALSE` — The container is not locked + +### `keyInstance` {: .sp-string} + +The name of the item script instance which unlocks the container. + +!!! tip + Only relevant if the container is locked. + +### `pickLockStr` {: .sp-string} + +The combination which unlocks this container when picking the lock. Each character of the string is either `R` or +`L` where `R` stands for "Right" and `L` stands for "Left". If empty, the lock can not be picked. +
Example: `LRRLLRL`. + +!!! tip + Only relevant if the container is locked. From 2b9e501599c60b19b02ae3a35d613e45825a4b4e Mon Sep 17 00:00:00 2001 From: Luis Michaelis Date: Sat, 24 Feb 2024 08:20:07 +0100 Subject: [PATCH 57/61] Fixup `oCMobInter` class hierarchy --- docs/zengin/worlds/Classes/oCMobInter.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/docs/zengin/worlds/Classes/oCMobInter.md b/docs/zengin/worlds/Classes/oCMobInter.md index e5c04b92a8..8a33a0aa7e 100644 --- a/docs/zengin/worlds/Classes/oCMobInter.md +++ b/docs/zengin/worlds/Classes/oCMobInter.md @@ -24,7 +24,7 @@ Interactive objects can be interacted with by NPCs and the player. Every time th {: .sp-class} - [oCMOB](oCMOB.md) {: .sp-class} - - [oCMobInter](oCMobInter.md) + - oCMobInter {: .sp-class} - [stateNum](#statenum) = 0 {: .sp-int} @@ -47,7 +47,7 @@ Interactive objects can be interacted with by NPCs and the player. Every time th {: .sp-class} - [oCMOB](oCMOB.md) {: .sp-class} - - [oCMobInter](oCMobInter.md) + - oCMobInter {: .sp-class} - [stateNum](#statenum) = 0 {: .sp-int} @@ -70,7 +70,7 @@ Interactive objects can be interacted with by NPCs and the player. Every time th {: .sp-class} - [oCMOB](oCMOB.md) {: .sp-class} - - [oCMobInter](oCMobInter.md) + - oCMobInter {: .sp-class} - [stateNum](#statenum) = 0 {: .sp-int} @@ -93,7 +93,7 @@ Interactive objects can be interacted with by NPCs and the player. Every time th {: .sp-class} - [oCMOB](oCMOB.md) {: .sp-class} - - [oCMobInter](oCMobInter.md) + - oCMobInter {: .sp-class} - [stateNum](#statenum) = 0 {: .sp-int} From e0047e0fee1e3260ac94574bd5405bfff5f3c920 Mon Sep 17 00:00:00 2001 From: Luis Michaelis Date: Sat, 24 Feb 2024 08:20:27 +0100 Subject: [PATCH 58/61] Fixup `zCEffect` source link --- docs/zengin/worlds/Classes/zCEffect.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/docs/zengin/worlds/Classes/zCEffect.md b/docs/zengin/worlds/Classes/zCEffect.md index 46537e2d71..393b037f74 100644 --- a/docs/zengin/worlds/Classes/zCEffect.md +++ b/docs/zengin/worlds/Classes/zCEffect.md @@ -4,7 +4,9 @@ **Class Name:** `zCEffect`
**Version Identifiers:**
— Gothic I: `12289`
- — Gothic II: `52224` + — Gothic II: `52224`
+ **Sources:**
+ — [zk.gothickit.dev](https://zk.gothickit.dev/engine/objects/zCEffect/) The base class for many visual and sound effects. From 70f7baacdaa9b7106d4d2b010e13d1f97b573b2d Mon Sep 17 00:00:00 2001 From: Luis Michaelis Date: Sat, 24 Feb 2024 08:50:50 +0100 Subject: [PATCH 59/61] Move VOb docs in hierarchical form --- .../extenders/ikarus/functions/objects.md | 18 +++++++++--------- .../zparserextender/classes/helperclasses.md | 2 +- .../Classes/{zCVob.md => zCVob/index.md} | 10 +++++++--- .../Classes/{oCVob.md => zCVob/oCVob/index.md} | 0 .../worlds/Classes/{ => zCVob/oCVob}/oCItem.md | 0 .../{oCMOB.md => zCVob/oCVob/oCMOB/index.md} | 2 +- .../oCVob/oCMOB/oCMobInter/index.md} | 0 .../oCVob/oCMOB/oCMobInter}/oCMobBed.md | 2 +- .../oCVob/oCMOB/oCMobInter}/oCMobFire.md | 0 .../oCVob/oCMOB/oCMobInter}/oCMobLadder.md | 0 .../oCMOB/oCMobInter/oCMobLockable/index.md} | 0 .../oCMobLockable}/oCMobContainer.md | 0 .../oCMobInter/oCMobLockable}/oCMobDoor.md | 0 .../oCVob/oCMOB/oCMobInter}/oCMobSwitch.md | 0 .../oCVob/oCMOB/oCMobInter}/oCMobWheel.md | 0 .../oCZoneMusic/index.md} | 2 +- .../oCZoneMusic}/oCZoneMusicDefault.md | 2 +- .../worlds/Classes/{ => zCVob}/zCCSCamera.md | 0 .../Classes/{ => zCVob}/zCCamTrj_KeyFrame.md | 0 .../{zCEffect.md => zCVob/zCEffect/index.md} | 0 .../{ => zCVob/zCEffect}/zCEarthquake.md | 0 .../{ => zCVob/zCEffect}/zCPFXControler.md | 0 .../zCEffect/zCTouchDamage/index.md} | 4 ++-- .../zCEffect/zCTouchDamage}/oCTouchDamage.md | 0 .../{ => zCVob/zCEffect}/zCVobAnimate.md | 0 .../{ => zCVob/zCEffect}/zCVobLensFlare.md | 2 +- .../{ => zCVob/zCEffect}/zCVobScreenFX.md | 0 .../zCTriggerBase/index.md} | 0 .../{ => zCVob/zCTriggerBase}/zCCodeMaster.md | 6 +++--- .../zCTriggerBase}/zCMessageFilter.md | 2 +- .../zCTriggerBase}/zCMoverControler.md | 8 ++++---- .../zCTriggerBase/zCTrigger/index.md} | 0 .../zCTriggerBase/zCTrigger}/oCCSTrigger.md | 2 +- .../zCTrigger}/oCTriggerChangeLevel.md | 2 +- .../zCTrigger}/oCTriggerScript.md | 2 +- .../zCTriggerBase/zCTrigger}/zCMover.md | 6 +++--- .../zCTriggerBase/zCTrigger}/zCTriggerList.md | 10 +++++----- .../zCTriggerBase}/zCTriggerUntouch.md | 2 +- .../zCTriggerBase}/zCTriggerWorldStart.md | 2 +- .../Classes/{ => zCVob}/zCVobLevelCompo.md | 0 .../worlds/Classes/{ => zCVob}/zCVobLight.md | 0 .../zCVobSound/index.md} | 0 .../zCVobSound}/zCVobSoundDaytime.md | 0 .../worlds/Classes/{ => zCVob}/zCVobSpot.md | 0 .../worlds/Classes/{ => zCVob}/zCVobStair.md | 0 .../Classes/{ => zCVob}/zCVobStartpoint.md | 0 .../zCZoneVobFarPlane/index.md} | 0 .../zCZoneVobFarPlaneDefault.md | 2 +- .../zCZoneZFog/index.md} | 0 .../zCZoneZFog}/zCZoneZFogDefault.md | 2 +- docs/zengin/worlds/spacer.md | 2 +- 51 files changed, 48 insertions(+), 44 deletions(-) rename docs/zengin/worlds/Classes/{zCVob.md => zCVob/index.md} (95%) rename docs/zengin/worlds/Classes/{oCVob.md => zCVob/oCVob/index.md} (100%) rename docs/zengin/worlds/Classes/{ => zCVob/oCVob}/oCItem.md (100%) rename docs/zengin/worlds/Classes/{oCMOB.md => zCVob/oCVob/oCMOB/index.md} (99%) rename docs/zengin/worlds/Classes/{oCMobInter.md => zCVob/oCVob/oCMOB/oCMobInter/index.md} (100%) rename docs/zengin/worlds/Classes/{ => zCVob/oCVob/oCMOB/oCMobInter}/oCMobBed.md (96%) rename docs/zengin/worlds/Classes/{ => zCVob/oCVob/oCMOB/oCMobInter}/oCMobFire.md (100%) rename docs/zengin/worlds/Classes/{ => zCVob/oCVob/oCMOB/oCMobInter}/oCMobLadder.md (100%) rename docs/zengin/worlds/Classes/{oCMobLockable.md => zCVob/oCVob/oCMOB/oCMobInter/oCMobLockable/index.md} (100%) rename docs/zengin/worlds/Classes/{ => zCVob/oCVob/oCMOB/oCMobInter/oCMobLockable}/oCMobContainer.md (100%) rename docs/zengin/worlds/Classes/{ => zCVob/oCVob/oCMOB/oCMobInter/oCMobLockable}/oCMobDoor.md (100%) rename docs/zengin/worlds/Classes/{ => zCVob/oCVob/oCMOB/oCMobInter}/oCMobSwitch.md (100%) rename docs/zengin/worlds/Classes/{ => zCVob/oCVob/oCMOB/oCMobInter}/oCMobWheel.md (100%) rename docs/zengin/worlds/Classes/{oCZoneMusic.md => zCVob/oCZoneMusic/index.md} (99%) rename docs/zengin/worlds/Classes/{ => zCVob/oCZoneMusic}/oCZoneMusicDefault.md (96%) rename docs/zengin/worlds/Classes/{ => zCVob}/zCCSCamera.md (100%) rename docs/zengin/worlds/Classes/{ => zCVob}/zCCamTrj_KeyFrame.md (100%) rename docs/zengin/worlds/Classes/{zCEffect.md => zCVob/zCEffect/index.md} (100%) rename docs/zengin/worlds/Classes/{ => zCVob/zCEffect}/zCEarthquake.md (100%) rename docs/zengin/worlds/Classes/{ => zCVob/zCEffect}/zCPFXControler.md (100%) rename docs/zengin/worlds/Classes/{zCTouchDamage.md => zCVob/zCEffect/zCTouchDamage/index.md} (97%) rename docs/zengin/worlds/Classes/{ => zCVob/zCEffect/zCTouchDamage}/oCTouchDamage.md (100%) rename docs/zengin/worlds/Classes/{ => zCVob/zCEffect}/zCVobAnimate.md (100%) rename docs/zengin/worlds/Classes/{ => zCVob/zCEffect}/zCVobLensFlare.md (97%) rename docs/zengin/worlds/Classes/{ => zCVob/zCEffect}/zCVobScreenFX.md (100%) rename docs/zengin/worlds/Classes/{zCTriggerBase.md => zCVob/zCTriggerBase/index.md} (100%) rename docs/zengin/worlds/Classes/{ => zCVob/zCTriggerBase}/zCCodeMaster.md (96%) rename docs/zengin/worlds/Classes/{ => zCVob/zCTriggerBase}/zCMessageFilter.md (98%) rename docs/zengin/worlds/Classes/{ => zCVob/zCTriggerBase}/zCMoverControler.md (86%) rename docs/zengin/worlds/Classes/{zCTrigger.md => zCVob/zCTriggerBase/zCTrigger/index.md} (100%) rename docs/zengin/worlds/Classes/{ => zCVob/zCTriggerBase/zCTrigger}/oCCSTrigger.md (97%) rename docs/zengin/worlds/Classes/{ => zCVob/zCTriggerBase/zCTrigger}/oCTriggerChangeLevel.md (94%) rename docs/zengin/worlds/Classes/{ => zCVob/zCTriggerBase/zCTrigger}/oCTriggerScript.md (94%) rename docs/zengin/worlds/Classes/{ => zCVob/zCTriggerBase/zCTrigger}/zCMover.md (98%) rename docs/zengin/worlds/Classes/{ => zCVob/zCTriggerBase/zCTrigger}/zCTriggerList.md (94%) rename docs/zengin/worlds/Classes/{ => zCVob/zCTriggerBase}/zCTriggerUntouch.md (96%) rename docs/zengin/worlds/Classes/{ => zCVob/zCTriggerBase}/zCTriggerWorldStart.md (97%) rename docs/zengin/worlds/Classes/{ => zCVob}/zCVobLevelCompo.md (100%) rename docs/zengin/worlds/Classes/{ => zCVob}/zCVobLight.md (100%) rename docs/zengin/worlds/Classes/{zCVobSound.md => zCVob/zCVobSound/index.md} (100%) rename docs/zengin/worlds/Classes/{ => zCVob/zCVobSound}/zCVobSoundDaytime.md (100%) rename docs/zengin/worlds/Classes/{ => zCVob}/zCVobSpot.md (100%) rename docs/zengin/worlds/Classes/{ => zCVob}/zCVobStair.md (100%) rename docs/zengin/worlds/Classes/{ => zCVob}/zCVobStartpoint.md (100%) rename docs/zengin/worlds/Classes/{zCZoneVobFarPlane.md => zCVob/zCZoneVobFarPlane/index.md} (100%) rename docs/zengin/worlds/Classes/{ => zCVob/zCZoneVobFarPlane}/zCZoneVobFarPlaneDefault.md (97%) rename docs/zengin/worlds/Classes/{zCZoneZFog.md => zCVob/zCZoneZFog/index.md} (100%) rename docs/zengin/worlds/Classes/{ => zCVob/zCZoneZFog}/zCZoneZFogDefault.md (95%) diff --git a/docs/zengin/scripts/extenders/ikarus/functions/objects.md b/docs/zengin/scripts/extenders/ikarus/functions/objects.md index 708b515e83..d6435f5876 100644 --- a/docs/zengin/scripts/extenders/ikarus/functions/objects.md +++ b/docs/zengin/scripts/extenders/ikarus/functions/objects.md @@ -175,7 +175,7 @@ The classes used here all have one thing in common: there is a maximum of one ob Inserts a Vob with the visual `vis` at the waypoint `wp`. If the visual or waypoint does not exist, this is the behaviour this function undefined. !!! Note - The inserted Vob is even an `oCMob`, so it can be given a focus name, for example. But you can treat it like a [`zCVob`](../../../../worlds/Classes/zCVob.md)), if you don't need the additional properties. + The inserted Vob is even an `oCMob`, so it can be given a focus name, for example. But you can treat it like a [`zCVob`](../../../../worlds/Classes/zCVob/index.md)), if you don't need the additional properties. ```dae func int MEM_InsertVob(var string vis, var string wp) ``` @@ -199,7 +199,7 @@ The classes used here all have one thing in common: there is a maximum of one ob **Parameters** - `#!dae var int vobPtr` - Pointer to a [`zCVob`](../../../../worlds/Classes/zCVob.md) object to be deleted + Pointer to a [`zCVob`](../../../../worlds/Classes/zCVob/index.md) object to be deleted ### `MEM_RenameVob` !!! function "`MEM_RenameVob`" @@ -212,7 +212,7 @@ The classes used here all have one thing in common: there is a maximum of one ob **Parameters** - `#!dae var int vobPtr` - Pointer to a [`zCVob`](../../../../worlds/Classes/zCVob.md) object to be renamed + Pointer to a [`zCVob`](../../../../worlds/Classes/zCVob/index.md) object to be renamed - `#!dae var string newName` The new Name of the Vob @@ -227,7 +227,7 @@ The classes used here all have one thing in common: there is a maximum of one ob **Parameters** - `#!dae var int vobPtr` - Pointer to a triggered [`zCVob`](../../../../worlds/Classes/zCVob.md) + Pointer to a triggered [`zCVob`](../../../../worlds/Classes/zCVob/index.md) !!! Danger If triggering the Vob has immediate effects (even before MEM_TriggerVob is exited), the name of the Vob is corrupted during this time. It is not advisable to rename, trigger again or destroy the object at this moment, the behavior in such cases is untested. @@ -242,25 +242,25 @@ The classes used here all have one thing in common: there is a maximum of one ob **Parameters** - `#!dae var int vobPtr` - Pointer to an untriggered [`zCVob`](../../../../worlds/Classes/zCVob.md) + Pointer to an untriggered [`zCVob`](../../../../worlds/Classes/zCVob/index.md) !!! Danger If untriggering the Vob has immediate effects (even before MEM_TriggerVob is exited), the name of the Vob is corrupted during this time. It is not advisable to rename, trigger again or destroy the object at this moment, the behavior in such cases is untested. ### `MEM_SearchVobByName` !!! function "`MEM_SearchVobByName`" - Returns the address of a [`zCVob`](../../../../worlds/Classes/zCVob.md) named `str` if such a Vob exists. + Returns the address of a [`zCVob`](../../../../worlds/Classes/zCVob/index.md) named `str` if such a Vob exists. ```dae func int MEM_SearchVobByName(var string str) ``` **Parameters** - `#!dae var string str` - Name of searched [`zCVob`](../../../../worlds/Classes/zCVob.md) + Name of searched [`zCVob`](../../../../worlds/Classes/zCVob/index.md) **Return value** - The function returns a pointer to the [`zCVob`](../../../../worlds/Classes/zCVob.md) if the object with the given name exist. `0` is returned otherwise. + The function returns a pointer to the [`zCVob`](../../../../worlds/Classes/zCVob/index.md) if the object with the given name exist. `0` is returned otherwise. ### `MEM_SearchAllVobsByName` !!! function "`MEM_SearchAllVobsByName`" @@ -271,7 +271,7 @@ The classes used here all have one thing in common: there is a maximum of one ob **Parameters** - `#!dae var string str` - Name of searched [`zCVob`](../../../../worlds/Classes/zCVob.md) + Name of searched [`zCVob`](../../../../worlds/Classes/zCVob/index.md) **Return value** diff --git a/docs/zengin/scripts/extenders/zparserextender/classes/helperclasses.md b/docs/zengin/scripts/extenders/zparserextender/classes/helperclasses.md index 513a39cc47..5dddf01eba 100644 --- a/docs/zengin/scripts/extenders/zparserextender/classes/helperclasses.md +++ b/docs/zengin/scripts/extenders/zparserextender/classes/helperclasses.md @@ -58,7 +58,7 @@ func void Vob_SetVobPosition( var C_Vob vob, var C_Position pos ) {}; The following classes define properties of `C_VOB` objects or classes derived from it. ## C_VOB_DATA -Represents universal [`zCVob`](../../../../worlds/Classes/zCVob.md) class +Represents universal [`zCVob`](../../../../worlds/Classes/zCVob/index.md) class ```dae class C_VOB_DATA { diff --git a/docs/zengin/worlds/Classes/zCVob.md b/docs/zengin/worlds/Classes/zCVob/index.md similarity index 95% rename from docs/zengin/worlds/Classes/zCVob.md rename to docs/zengin/worlds/Classes/zCVob/index.md index efd3403175..8a374784ec 100644 --- a/docs/zengin/worlds/Classes/zCVob.md +++ b/docs/zengin/worlds/Classes/zCVob/index.md @@ -10,10 +10,14 @@ — [gothic-library.ru](http://www.gothic-library.ru/publ/class_zcvob/1-1-0-467)
— [zk.gothickit.dev](https://zk.gothickit.dev/engine/objects/zCVob/) -Represents so-called virtual objects which appear in the game world. `zCVob` is the base class for all virtual objects which include everything from static models like boxes to interactive elements like doors and chests and invisible trigger objects. +Represents so-called virtual objects which appear in the game world. `zCVob` is the base class for all virtual objects +which include everything from static models like boxes to interactive elements like doors and chests and invisible +trigger objects. ## Class members -Properties of a zCVob class are split into two parts. The **Internals** are hardly ever needed to be edited manually, they are changed by e.g. moving an object in [Spacer](../spacer.md). On the other hand the **Vob** properties can only be changed by the Objects context menu in [Spacer](../spacer.md). +Properties of a zCVob class are split into two parts. The **Internals** are hardly ever needed to be edited manually, +they are changed by e.g. moving an object in [Spacer](../../spacer.md). On the other hand the **Vob** properties can +only be changed by the Objects context menu in [Spacer](../../spacer.md). === "Gothic 1" @@ -227,7 +231,7 @@ Coordinates of the object in world space relative to the center. !!! Note This refers to the center of coordinates of the `.3DS` file of the game world on which the `ZEN` file is built. -The coordinates are set automatically the first time an instance of the class is inserted into the game world. You can change them either directly by entering numerical values in the corresponding fields of the parameter, by [moving the vob](../spacer.md#viewport-controls) in spacer. +The coordinates are set automatically the first time an instance of the class is inserted into the game world. You can change them either directly by entering numerical values in the corresponding fields of the parameter, by [moving the vob](../../spacer.md#viewport-controls) in spacer. ### `vobName` {: .sp-string} An identifier of a zCVob shown in the editor and sometimes used in scripts. The name can be left blank. diff --git a/docs/zengin/worlds/Classes/oCVob.md b/docs/zengin/worlds/Classes/zCVob/oCVob/index.md similarity index 100% rename from docs/zengin/worlds/Classes/oCVob.md rename to docs/zengin/worlds/Classes/zCVob/oCVob/index.md diff --git a/docs/zengin/worlds/Classes/oCItem.md b/docs/zengin/worlds/Classes/zCVob/oCVob/oCItem.md similarity index 100% rename from docs/zengin/worlds/Classes/oCItem.md rename to docs/zengin/worlds/Classes/zCVob/oCVob/oCItem.md diff --git a/docs/zengin/worlds/Classes/oCMOB.md b/docs/zengin/worlds/Classes/zCVob/oCVob/oCMOB/index.md similarity index 99% rename from docs/zengin/worlds/Classes/oCMOB.md rename to docs/zengin/worlds/Classes/zCVob/oCVob/oCMOB/index.md index fa390635a4..4fb3526b54 100644 --- a/docs/zengin/worlds/Classes/oCMOB.md +++ b/docs/zengin/worlds/Classes/zCVob/oCVob/oCMOB/index.md @@ -197,7 +197,7 @@ The sound to play when the object is hit. ### `visualDestroyed` {: .sp-string} -The name of the visual to use when the object is destroyed. Behaves like [zCVob.visual](zCVob.md#visual). +The name of the visual to use when the object is destroyed. Behaves like [zCVob.visual](../../index.md#visual). ### `owner` {: .sp-string} diff --git a/docs/zengin/worlds/Classes/oCMobInter.md b/docs/zengin/worlds/Classes/zCVob/oCVob/oCMOB/oCMobInter/index.md similarity index 100% rename from docs/zengin/worlds/Classes/oCMobInter.md rename to docs/zengin/worlds/Classes/zCVob/oCVob/oCMOB/oCMobInter/index.md diff --git a/docs/zengin/worlds/Classes/oCMobBed.md b/docs/zengin/worlds/Classes/zCVob/oCVob/oCMOB/oCMobInter/oCMobBed.md similarity index 96% rename from docs/zengin/worlds/Classes/oCMobBed.md rename to docs/zengin/worlds/Classes/zCVob/oCVob/oCMOB/oCMobInter/oCMobBed.md index 628a00614e..c11bef5a51 100644 --- a/docs/zengin/worlds/Classes/oCMobBed.md +++ b/docs/zengin/worlds/Classes/zCVob/oCVob/oCMOB/oCMobInter/oCMobBed.md @@ -14,7 +14,7 @@ — [zk.gothickit.dev](https://zk.gothickit.dev/engine/objects/oCMobBed/) VObject marking beds for NPCs and the player to sleep on. In the original Gothic I, there is a bug which prevents -`oCMobBed`s from working correctly, so it is recommended to instead use [`oCMobDoor`](oCMobDoor.md) and attach the +`oCMobBed`s from working correctly, so it is recommended to instead use [`oCMobDoor`](oCMobLockable/oCMobDoor.md) and attach the visual of a bed when targeting that platform. ## Class members diff --git a/docs/zengin/worlds/Classes/oCMobFire.md b/docs/zengin/worlds/Classes/zCVob/oCVob/oCMOB/oCMobInter/oCMobFire.md similarity index 100% rename from docs/zengin/worlds/Classes/oCMobFire.md rename to docs/zengin/worlds/Classes/zCVob/oCVob/oCMOB/oCMobInter/oCMobFire.md diff --git a/docs/zengin/worlds/Classes/oCMobLadder.md b/docs/zengin/worlds/Classes/zCVob/oCVob/oCMOB/oCMobInter/oCMobLadder.md similarity index 100% rename from docs/zengin/worlds/Classes/oCMobLadder.md rename to docs/zengin/worlds/Classes/zCVob/oCVob/oCMOB/oCMobInter/oCMobLadder.md diff --git a/docs/zengin/worlds/Classes/oCMobLockable.md b/docs/zengin/worlds/Classes/zCVob/oCVob/oCMOB/oCMobInter/oCMobLockable/index.md similarity index 100% rename from docs/zengin/worlds/Classes/oCMobLockable.md rename to docs/zengin/worlds/Classes/zCVob/oCVob/oCMOB/oCMobInter/oCMobLockable/index.md diff --git a/docs/zengin/worlds/Classes/oCMobContainer.md b/docs/zengin/worlds/Classes/zCVob/oCVob/oCMOB/oCMobInter/oCMobLockable/oCMobContainer.md similarity index 100% rename from docs/zengin/worlds/Classes/oCMobContainer.md rename to docs/zengin/worlds/Classes/zCVob/oCVob/oCMOB/oCMobInter/oCMobLockable/oCMobContainer.md diff --git a/docs/zengin/worlds/Classes/oCMobDoor.md b/docs/zengin/worlds/Classes/zCVob/oCVob/oCMOB/oCMobInter/oCMobLockable/oCMobDoor.md similarity index 100% rename from docs/zengin/worlds/Classes/oCMobDoor.md rename to docs/zengin/worlds/Classes/zCVob/oCVob/oCMOB/oCMobInter/oCMobLockable/oCMobDoor.md diff --git a/docs/zengin/worlds/Classes/oCMobSwitch.md b/docs/zengin/worlds/Classes/zCVob/oCVob/oCMOB/oCMobInter/oCMobSwitch.md similarity index 100% rename from docs/zengin/worlds/Classes/oCMobSwitch.md rename to docs/zengin/worlds/Classes/zCVob/oCVob/oCMOB/oCMobInter/oCMobSwitch.md diff --git a/docs/zengin/worlds/Classes/oCMobWheel.md b/docs/zengin/worlds/Classes/zCVob/oCVob/oCMOB/oCMobInter/oCMobWheel.md similarity index 100% rename from docs/zengin/worlds/Classes/oCMobWheel.md rename to docs/zengin/worlds/Classes/zCVob/oCVob/oCMOB/oCMobInter/oCMobWheel.md diff --git a/docs/zengin/worlds/Classes/oCZoneMusic.md b/docs/zengin/worlds/Classes/zCVob/oCZoneMusic/index.md similarity index 99% rename from docs/zengin/worlds/Classes/oCZoneMusic.md rename to docs/zengin/worlds/Classes/zCVob/oCZoneMusic/index.md index f0626442e7..515c8e1b70 100644 --- a/docs/zengin/worlds/Classes/oCZoneMusic.md +++ b/docs/zengin/worlds/Classes/zCVob/oCZoneMusic/index.md @@ -15,7 +15,7 @@ A VObject which defines the music to be played within its bounding box. Music zo music zone applies. If no music zone applies the music defined in the optional [`oCZoneMusicDefault`](oCZoneMusicDefault.md) is used. -The name of the music theme to be played is defined by the [`vobName`](zCVob.md#vobname). +The name of the music theme to be played is defined by the [`vobName`](../index.md#vobname). !!! tip If the suffix `_NCI` or `_NCO` is added to the end of the zone name, it snows instead of rains in the zone. diff --git a/docs/zengin/worlds/Classes/oCZoneMusicDefault.md b/docs/zengin/worlds/Classes/zCVob/oCZoneMusic/oCZoneMusicDefault.md similarity index 96% rename from docs/zengin/worlds/Classes/oCZoneMusicDefault.md rename to docs/zengin/worlds/Classes/zCVob/oCZoneMusic/oCZoneMusicDefault.md index 8dc231a2c0..91db4d0e2c 100644 --- a/docs/zengin/worlds/Classes/oCZoneMusicDefault.md +++ b/docs/zengin/worlds/Classes/zCVob/oCZoneMusic/oCZoneMusicDefault.md @@ -9,7 +9,7 @@ — [spacerhilfedatei.sph](https://wiki.worldofgothic.de/doku.php?id=spacer:hilfedatei)
— [zk.gothickit.dev](https://zk.gothickit.dev/engine/objects/oCZoneMusicDefault/) -Determines the default music to be played when the camera is outside any [`oCZoneMusic`](oCZoneMusic.md) zones. The +Determines the default music to be played when the camera is outside any [`oCZoneMusic`](index.md) zones. The volume-related options of the zone are ignored. There may only be one `oCZoneMusicDefault` object in a world. ## Class members diff --git a/docs/zengin/worlds/Classes/zCCSCamera.md b/docs/zengin/worlds/Classes/zCVob/zCCSCamera.md similarity index 100% rename from docs/zengin/worlds/Classes/zCCSCamera.md rename to docs/zengin/worlds/Classes/zCVob/zCCSCamera.md diff --git a/docs/zengin/worlds/Classes/zCCamTrj_KeyFrame.md b/docs/zengin/worlds/Classes/zCVob/zCCamTrj_KeyFrame.md similarity index 100% rename from docs/zengin/worlds/Classes/zCCamTrj_KeyFrame.md rename to docs/zengin/worlds/Classes/zCVob/zCCamTrj_KeyFrame.md diff --git a/docs/zengin/worlds/Classes/zCEffect.md b/docs/zengin/worlds/Classes/zCVob/zCEffect/index.md similarity index 100% rename from docs/zengin/worlds/Classes/zCEffect.md rename to docs/zengin/worlds/Classes/zCVob/zCEffect/index.md diff --git a/docs/zengin/worlds/Classes/zCEarthquake.md b/docs/zengin/worlds/Classes/zCVob/zCEffect/zCEarthquake.md similarity index 100% rename from docs/zengin/worlds/Classes/zCEarthquake.md rename to docs/zengin/worlds/Classes/zCVob/zCEffect/zCEarthquake.md diff --git a/docs/zengin/worlds/Classes/zCPFXControler.md b/docs/zengin/worlds/Classes/zCVob/zCEffect/zCPFXControler.md similarity index 100% rename from docs/zengin/worlds/Classes/zCPFXControler.md rename to docs/zengin/worlds/Classes/zCVob/zCEffect/zCPFXControler.md diff --git a/docs/zengin/worlds/Classes/zCTouchDamage.md b/docs/zengin/worlds/Classes/zCVob/zCEffect/zCTouchDamage/index.md similarity index 97% rename from docs/zengin/worlds/Classes/zCTouchDamage.md rename to docs/zengin/worlds/Classes/zCVob/zCEffect/zCTouchDamage/index.md index da29666ae6..71e8d62081 100644 --- a/docs/zengin/worlds/Classes/zCTouchDamage.md +++ b/docs/zengin/worlds/Classes/zCVob/zCEffect/zCTouchDamage/index.md @@ -241,10 +241,10 @@ The type of collision detection to use for damage calculations. **Accepted values:** * `NONE` — Disable collision detection and thus damage application. -* `BOX` — Scale the [`bbox3dws`](zCVob.md#bbox3dws) of the `zCTouchDamage` object by +* `BOX` — Scale the [`bbox3dws`](../../index.md#bbox3dws) of the `zCTouchDamage` object by [`damageVolDownScale`](#damagevoldownscale) and use this new bounding box to calculate collisions with other VObjects -* `POINT` — Scale the [`bbox3dws`](zCVob.md#bbox3dws) of the colliding object by +* `POINT` — Scale the [`bbox3dws`](../../index.md#bbox3dws) of the colliding object by [`damageVolDownScale`](#damagevoldownscale) and only deal damage if it contains the center point of the `zCTouchDamage` object. If the `visual` of the `zCTouchDamage` object is a particle effect, test against every particle instead. diff --git a/docs/zengin/worlds/Classes/oCTouchDamage.md b/docs/zengin/worlds/Classes/zCVob/zCEffect/zCTouchDamage/oCTouchDamage.md similarity index 100% rename from docs/zengin/worlds/Classes/oCTouchDamage.md rename to docs/zengin/worlds/Classes/zCVob/zCEffect/zCTouchDamage/oCTouchDamage.md diff --git a/docs/zengin/worlds/Classes/zCVobAnimate.md b/docs/zengin/worlds/Classes/zCVob/zCEffect/zCVobAnimate.md similarity index 100% rename from docs/zengin/worlds/Classes/zCVobAnimate.md rename to docs/zengin/worlds/Classes/zCVob/zCEffect/zCVobAnimate.md diff --git a/docs/zengin/worlds/Classes/zCVobLensFlare.md b/docs/zengin/worlds/Classes/zCVob/zCEffect/zCVobLensFlare.md similarity index 97% rename from docs/zengin/worlds/Classes/zCVobLensFlare.md rename to docs/zengin/worlds/Classes/zCVob/zCEffect/zCVobLensFlare.md index 0991d1e19f..354063a532 100644 --- a/docs/zengin/worlds/Classes/zCVobLensFlare.md +++ b/docs/zengin/worlds/Classes/zCVob/zCEffect/zCVobLensFlare.md @@ -10,7 +10,7 @@ — [gothic-library.ru](http://www.gothic-library.ru/publ/class_zcvoblensflare/1-1-0-524)
— [zk.gothickit.dev](https://zk.gothickit.dev/engine/objects/zCVobLensFlare/) -Represents a lens flare effect. Behaves exactly like the base [`zCVob`](zCVob.md) but has a lens flare effect. +Represents a lens flare effect. Behaves exactly like the base [`zCVob`](../index.md) but has a lens flare effect. ## Class members diff --git a/docs/zengin/worlds/Classes/zCVobScreenFX.md b/docs/zengin/worlds/Classes/zCVob/zCEffect/zCVobScreenFX.md similarity index 100% rename from docs/zengin/worlds/Classes/zCVobScreenFX.md rename to docs/zengin/worlds/Classes/zCVob/zCEffect/zCVobScreenFX.md diff --git a/docs/zengin/worlds/Classes/zCTriggerBase.md b/docs/zengin/worlds/Classes/zCVob/zCTriggerBase/index.md similarity index 100% rename from docs/zengin/worlds/Classes/zCTriggerBase.md rename to docs/zengin/worlds/Classes/zCVob/zCTriggerBase/index.md diff --git a/docs/zengin/worlds/Classes/zCCodeMaster.md b/docs/zengin/worlds/Classes/zCVob/zCTriggerBase/zCCodeMaster.md similarity index 96% rename from docs/zengin/worlds/Classes/zCCodeMaster.md rename to docs/zengin/worlds/Classes/zCVob/zCTriggerBase/zCCodeMaster.md index f77391504a..463f86bbfc 100644 --- a/docs/zengin/worlds/Classes/zCCodeMaster.md +++ b/docs/zengin/worlds/Classes/zCVob/zCTriggerBase/zCCodeMaster.md @@ -12,7 +12,7 @@ `zCCodeMaster` VObjects keep a list of 'slave' VObjects and keep track of events received by them. If the master receives an `OnTrigger` event from a slave, it remembers that it did. After it has receives an `OnTrigger` message -from all slaves, it emits an `OnTrigger` event to the [`triggerTarget`](zCTriggerBase.md#triggertarget). Receiving or sending an +from all slaves, it emits an `OnTrigger` event to the [`triggerTarget`](index.md#triggertarget). Receiving or sending an `OnTrigger` event is also referred to as an 'activation' for this purpose. === "Gothic 1" @@ -127,9 +127,9 @@ Controls whether the master should keep track of the order it receives messages **Accepted values:** -* `TRUE` — Only send an `OnTrigger` event to the [`triggerTarget`](zCTriggerBase.md#triggertarget) if the slaves have fired in +* `TRUE` — Only send an `OnTrigger` event to the [`triggerTarget`](index.md#triggertarget) if the slaves have fired in the exact order they are configured here. Also counts multiple activations. -* `FALSE` — Send an `OnTrigger` event to the [`triggerTarget`](zCTriggerBase.md#triggertarget) after all slaves have fired at least +* `FALSE` — Send an `OnTrigger` event to the [`triggerTarget`](index.md#triggertarget) after all slaves have fired at least once, regardless of order. ### `firstFalseIsFailure` {: .sp-bool} diff --git a/docs/zengin/worlds/Classes/zCMessageFilter.md b/docs/zengin/worlds/Classes/zCVob/zCTriggerBase/zCMessageFilter.md similarity index 98% rename from docs/zengin/worlds/Classes/zCMessageFilter.md rename to docs/zengin/worlds/Classes/zCVob/zCTriggerBase/zCMessageFilter.md index d10e66ad89..edb261fbbf 100644 --- a/docs/zengin/worlds/Classes/zCMessageFilter.md +++ b/docs/zengin/worlds/Classes/zCVob/zCTriggerBase/zCMessageFilter.md @@ -12,7 +12,7 @@ Transforms any incoming `OnTrigger` and `OnUntrigger` events before passing them on to the trigger target. All `OnTrigger` and `OnUntrigger` messages received by this `zCMessageFilter` VObject are transformed according to [`onTrigger`](#ontrigger) and [`onUntrigger`](#onuntrigger) and then passed on to the VObject with the name specified -in the [`triggerTarget`](zCTriggerBase.md#triggertarget). +in the [`triggerTarget`](index.md#triggertarget). ## Class members diff --git a/docs/zengin/worlds/Classes/zCMoverControler.md b/docs/zengin/worlds/Classes/zCVob/zCTriggerBase/zCMoverControler.md similarity index 86% rename from docs/zengin/worlds/Classes/zCMoverControler.md rename to docs/zengin/worlds/Classes/zCVob/zCTriggerBase/zCMoverControler.md index 9958e1ed93..f7371b2729 100644 --- a/docs/zengin/worlds/Classes/zCMoverControler.md +++ b/docs/zengin/worlds/Classes/zCVob/zCTriggerBase/zCMoverControler.md @@ -10,9 +10,9 @@ — [gothic-library.ru](http://www.gothic-library.ru/publ/class_zcmovercontroler/1-1-0-528)
— [zk.gothickit.dev](https://zk.gothickit.dev/engine/objects/zCMoverController/) -A VObject used to control [`zCMover`](zCMover.md) objects of type `NSTATE_SINGLE_KEYS` specifically. +A VObject used to control [`zCMover`](zCTrigger/zCMover.md) objects of type `NSTATE_SINGLE_KEYS` specifically. `zCMoverControler` objects react to incoming `OnTrigger` events to send a pre-configured event to the target mover -object named by the [`triggerTarget`](zCTriggerBase.md#triggertarget) propery, controlling its animation. Mover +object named by the [`triggerTarget`](index.md#triggertarget) propery, controlling its animation. Mover controllers can make movers go to a specific keyframe in their animation or just step one keyframe back and forth at a time. @@ -74,7 +74,7 @@ at a time. ### `moverMessage` {: .sp-enum} -The type of event to emit to the [`triggerTarget`](zCTriggerBase.md#triggertarget) when this controller receives an `OnTrigger` event. +The type of event to emit to the [`triggerTarget`](index.md#triggertarget) when this controller receives an `OnTrigger` event. **Accepted values:** @@ -87,7 +87,7 @@ The type of event to emit to the [`triggerTarget`](zCTriggerBase.md#triggertarge ### `gotoFixedKey` {: .sp-int} -The keyframe of the mover referred to by [`triggerTarget`](zCTriggerBase.md#triggertarget) to move to. +The keyframe of the mover referred to by [`triggerTarget`](index.md#triggertarget) to move to. !!! warning Only relevant if [`moverMessage`](#movermessage) is `GOTO_KEY_FIXED_DIRECTLY` or `GOTO_KEY_FIXED_ORDER`. diff --git a/docs/zengin/worlds/Classes/zCTrigger.md b/docs/zengin/worlds/Classes/zCVob/zCTriggerBase/zCTrigger/index.md similarity index 100% rename from docs/zengin/worlds/Classes/zCTrigger.md rename to docs/zengin/worlds/Classes/zCVob/zCTriggerBase/zCTrigger/index.md diff --git a/docs/zengin/worlds/Classes/oCCSTrigger.md b/docs/zengin/worlds/Classes/zCVob/zCTriggerBase/zCTrigger/oCCSTrigger.md similarity index 97% rename from docs/zengin/worlds/Classes/oCCSTrigger.md rename to docs/zengin/worlds/Classes/zCVob/zCTriggerBase/zCTrigger/oCCSTrigger.md index 3ae775de09..180b1905a0 100644 --- a/docs/zengin/worlds/Classes/oCCSTrigger.md +++ b/docs/zengin/worlds/Classes/zCVob/zCTriggerBase/zCTrigger/oCCSTrigger.md @@ -10,7 +10,7 @@ — [gothic-library.ru](http://www.gothic-library.ru/publ/class_occstrigger/1-1-0-530)
— [zk.gothickit.dev](https://zk.gothickit.dev/engine/objects/oCCSTrigger/) -A special trigger VObject which can start a cutscene. The [`triggerTarget`](zCTrigger.md#triggertarget) must be the +A special trigger VObject which can start a cutscene. The [`triggerTarget`](../index.md#triggertarget) must be the name of the cutscene (without the extension) to be started. For this to work, the cutscene must already be loaded. `OnUntrigger` events are ignored by `oCCSTrigger`s. diff --git a/docs/zengin/worlds/Classes/oCTriggerChangeLevel.md b/docs/zengin/worlds/Classes/zCVob/zCTriggerBase/zCTrigger/oCTriggerChangeLevel.md similarity index 94% rename from docs/zengin/worlds/Classes/oCTriggerChangeLevel.md rename to docs/zengin/worlds/Classes/zCVob/zCTriggerBase/zCTrigger/oCTriggerChangeLevel.md index 2591848046..69544d989e 100644 --- a/docs/zengin/worlds/Classes/oCTriggerChangeLevel.md +++ b/docs/zengin/worlds/Classes/zCVob/zCTriggerBase/zCTrigger/oCTriggerChangeLevel.md @@ -9,7 +9,7 @@ — [spacerhilfedatei.sph](https://wiki.worldofgothic.de/doku.php?id=spacer:hilfedatei)
— [zk.gothickit.dev](https://zk.gothickit.dev/engine/objects/oCTriggerChangeLevel/) -A special [`zCTrigger`](zCTrigger.md) which in addition to performing all other trigger actions also causes the engine +A special [`zCTrigger`](index.md) which in addition to performing all other trigger actions also causes the engine to load another level when activated. ## Class members diff --git a/docs/zengin/worlds/Classes/oCTriggerScript.md b/docs/zengin/worlds/Classes/zCVob/zCTriggerBase/zCTrigger/oCTriggerScript.md similarity index 94% rename from docs/zengin/worlds/Classes/oCTriggerScript.md rename to docs/zengin/worlds/Classes/zCVob/zCTriggerBase/zCTrigger/oCTriggerScript.md index 5c69d06fd4..be59963141 100644 --- a/docs/zengin/worlds/Classes/oCTriggerScript.md +++ b/docs/zengin/worlds/Classes/zCVob/zCTriggerBase/zCTrigger/oCTriggerScript.md @@ -9,7 +9,7 @@ — [spacerhilfedatei.sph](https://wiki.worldofgothic.de/doku.php?id=spacer:hilfedatei)
— [zk.gothickit.dev](https://zk.gothickit.dev/engine/objects/oCTriggerScript/) -A special [`zCTrigger`](zCTrigger.md) which in addition to performing all other trigger actions also calls a script +A special [`zCTrigger`](index.md) which in addition to performing all other trigger actions also calls a script function when the trigger is activated. `OnUntrigger` events do not result in the script function being called. ## Class members diff --git a/docs/zengin/worlds/Classes/zCMover.md b/docs/zengin/worlds/Classes/zCVob/zCTriggerBase/zCTrigger/zCMover.md similarity index 98% rename from docs/zengin/worlds/Classes/zCMover.md rename to docs/zengin/worlds/Classes/zCVob/zCTriggerBase/zCTrigger/zCMover.md index 1b8063f5df..3a6d8734a9 100644 --- a/docs/zengin/worlds/Classes/zCMover.md +++ b/docs/zengin/worlds/Classes/zCVob/zCTriggerBase/zCTrigger/zCMover.md @@ -24,9 +24,9 @@ their [`moverBehavior`](#moverbehavior) set to `NSTATE_SINGLE_KEYS` are an excep individually be addressed as a state. Movers are specialized triggers. Before beginning their animation, movers first filter the incoming events as per the -[`zCTrigger`](zCTrigger.md)'s rules and only start the animation if the event passes through the filters. When the mover reaches +[`zCTrigger`](index.md)'s rules and only start the animation if the event passes through the filters. When the mover reaches the "open" state after being activated, it emits an `OnTrigger` event according to the fire behavior set for the -[`zCTrigger`](zCTrigger.md). Similarly, when it reaches the "closed" state it emits an `OnUntrigger` event. +[`zCTrigger`](index.md). Similarly, when it reaches the "closed" state it emits an `OnUntrigger` event. Movers can be enabled and disabled using the `OnEnable`, `OnDisable` and `OnToggleDisabled` events. @@ -292,7 +292,7 @@ Controls how the mover behaves in response to events ("activation"). to the "closed" state after a fixed amount of time specified by [`stayOpenTimeSec`](#stayopentimesec). * `NSTATE_LOOP` — The mover opens and closes in a loop indefinitely. * `NSTATE_SINGLE_KEYS` — The mover can transition to each keyframe separately. Often used in conjunction - with a [`zCMoverControler`](zCMoverControler.md). + with a [`zCMoverControler`](../zCMoverControler.md). ### `touchBlockerDamage` {: .sp-float} diff --git a/docs/zengin/worlds/Classes/zCTriggerList.md b/docs/zengin/worlds/Classes/zCVob/zCTriggerBase/zCTrigger/zCTriggerList.md similarity index 94% rename from docs/zengin/worlds/Classes/zCTriggerList.md rename to docs/zengin/worlds/Classes/zCVob/zCTriggerBase/zCTrigger/zCTriggerList.md index dae5be2abd..80ad9322e7 100644 --- a/docs/zengin/worlds/Classes/zCTriggerList.md +++ b/docs/zengin/worlds/Classes/zCVob/zCTriggerBase/zCTrigger/zCTriggerList.md @@ -10,10 +10,10 @@ — [gothic-library.ru](http://www.gothic-library.ru/publ/class_zctriggerlist/1-1-0-534)
— [zk.gothickit.dev](https://zk.gothickit.dev/engine/objects/zCTriggerList/) -A special trigger which emits the `OnTrigger` events emitted by the [`zCTrigger`](zCTrigger.md) to multiple targets. +A special trigger which emits the `OnTrigger` events emitted by the [`zCTrigger`](index.md) to multiple targets. How the events are sent can be configured through [`listProcess`](#listprocess). The -[`triggerTarget`](zCTriggerBase.md#triggertarget) and [`fireDelaySec`](zCTrigger.md#firedelaysec) properties of -[`zCTrigger`](zCTrigger.md) should be ignored. +[`triggerTarget`](../index.md#triggertarget) and [`fireDelaySec`](index.md#firedelaysec) properties of +[`zCTrigger`](index.md) should be ignored. `OnUntrigger` events sent to the trigger list are propagated to all targets in the list. @@ -150,11 +150,11 @@ Controls how events are sent to the targets. ### `triggerTarget` {: .sp-string} -The name of the VObject to send events to. Behaves like [`triggerTarget`](zCTriggerBase.md#triggertarget). +The name of the VObject to send events to. Behaves like [`triggerTarget`](../index.md#triggertarget). ### `fireDelay` {: .sp-float} -The delay after which to fire the event to the target. Behaves like [`fireDelaySec`](zCTrigger.md#firedelaysec). +The delay after which to fire the event to the target. Behaves like [`fireDelaySec`](index.md#firedelaysec). ### `actTarget` {: .sp-int} diff --git a/docs/zengin/worlds/Classes/zCTriggerUntouch.md b/docs/zengin/worlds/Classes/zCVob/zCTriggerBase/zCTriggerUntouch.md similarity index 96% rename from docs/zengin/worlds/Classes/zCTriggerUntouch.md rename to docs/zengin/worlds/Classes/zCVob/zCTriggerBase/zCTriggerUntouch.md index 09a6e661c9..8457cbfcd2 100644 --- a/docs/zengin/worlds/Classes/zCTriggerUntouch.md +++ b/docs/zengin/worlds/Classes/zCVob/zCTriggerBase/zCTriggerUntouch.md @@ -9,7 +9,7 @@ — [spacerhilfedatei.sph](https://wiki.worldofgothic.de/doku.php?id=spacer:hilfedatei)
— [zk.gothickit.dev](https://zk.gothickit.dev/engine/objects/zCTriggerUntouch/) -A trigger which fires an `OnTrigger` event to its [`triggerTarget`](zCTriggerBase.md#triggertarget) if any `OnUntouch` +A trigger which fires an `OnTrigger` event to its [`triggerTarget`](index.md#triggertarget) if any `OnUntouch` event is emitted from an inanimate object within the object's bounding box. ## Class members diff --git a/docs/zengin/worlds/Classes/zCTriggerWorldStart.md b/docs/zengin/worlds/Classes/zCVob/zCTriggerBase/zCTriggerWorldStart.md similarity index 97% rename from docs/zengin/worlds/Classes/zCTriggerWorldStart.md rename to docs/zengin/worlds/Classes/zCVob/zCTriggerBase/zCTriggerWorldStart.md index e988a7872e..ad4f61841f 100644 --- a/docs/zengin/worlds/Classes/zCTriggerWorldStart.md +++ b/docs/zengin/worlds/Classes/zCVob/zCTriggerBase/zCTriggerWorldStart.md @@ -9,7 +9,7 @@ — [spacerhilfedatei.sph](https://wiki.worldofgothic.de/doku.php?id=spacer:hilfedatei)
— [zk.gothickit.dev](https://zk.gothickit.dev/engine/objects/zCTriggerWorldStart/) -A special trigger which fires an `OnTrigger` event to its [`triggerTarget`](zCTriggerBase.md#triggertarget) when the +A special trigger which fires an `OnTrigger` event to its [`triggerTarget`](index.md#triggertarget) when the world is loaded and started. ## Class members diff --git a/docs/zengin/worlds/Classes/zCVobLevelCompo.md b/docs/zengin/worlds/Classes/zCVob/zCVobLevelCompo.md similarity index 100% rename from docs/zengin/worlds/Classes/zCVobLevelCompo.md rename to docs/zengin/worlds/Classes/zCVob/zCVobLevelCompo.md diff --git a/docs/zengin/worlds/Classes/zCVobLight.md b/docs/zengin/worlds/Classes/zCVob/zCVobLight.md similarity index 100% rename from docs/zengin/worlds/Classes/zCVobLight.md rename to docs/zengin/worlds/Classes/zCVob/zCVobLight.md diff --git a/docs/zengin/worlds/Classes/zCVobSound.md b/docs/zengin/worlds/Classes/zCVob/zCVobSound/index.md similarity index 100% rename from docs/zengin/worlds/Classes/zCVobSound.md rename to docs/zengin/worlds/Classes/zCVob/zCVobSound/index.md diff --git a/docs/zengin/worlds/Classes/zCVobSoundDaytime.md b/docs/zengin/worlds/Classes/zCVob/zCVobSound/zCVobSoundDaytime.md similarity index 100% rename from docs/zengin/worlds/Classes/zCVobSoundDaytime.md rename to docs/zengin/worlds/Classes/zCVob/zCVobSound/zCVobSoundDaytime.md diff --git a/docs/zengin/worlds/Classes/zCVobSpot.md b/docs/zengin/worlds/Classes/zCVob/zCVobSpot.md similarity index 100% rename from docs/zengin/worlds/Classes/zCVobSpot.md rename to docs/zengin/worlds/Classes/zCVob/zCVobSpot.md diff --git a/docs/zengin/worlds/Classes/zCVobStair.md b/docs/zengin/worlds/Classes/zCVob/zCVobStair.md similarity index 100% rename from docs/zengin/worlds/Classes/zCVobStair.md rename to docs/zengin/worlds/Classes/zCVob/zCVobStair.md diff --git a/docs/zengin/worlds/Classes/zCVobStartpoint.md b/docs/zengin/worlds/Classes/zCVob/zCVobStartpoint.md similarity index 100% rename from docs/zengin/worlds/Classes/zCVobStartpoint.md rename to docs/zengin/worlds/Classes/zCVob/zCVobStartpoint.md diff --git a/docs/zengin/worlds/Classes/zCZoneVobFarPlane.md b/docs/zengin/worlds/Classes/zCVob/zCZoneVobFarPlane/index.md similarity index 100% rename from docs/zengin/worlds/Classes/zCZoneVobFarPlane.md rename to docs/zengin/worlds/Classes/zCVob/zCZoneVobFarPlane/index.md diff --git a/docs/zengin/worlds/Classes/zCZoneVobFarPlaneDefault.md b/docs/zengin/worlds/Classes/zCVob/zCZoneVobFarPlane/zCZoneVobFarPlaneDefault.md similarity index 97% rename from docs/zengin/worlds/Classes/zCZoneVobFarPlaneDefault.md rename to docs/zengin/worlds/Classes/zCVob/zCZoneVobFarPlane/zCZoneVobFarPlaneDefault.md index 9cd86c7fd3..704cf1453b 100644 --- a/docs/zengin/worlds/Classes/zCZoneVobFarPlaneDefault.md +++ b/docs/zengin/worlds/Classes/zCVob/zCZoneVobFarPlane/zCZoneVobFarPlaneDefault.md @@ -11,7 +11,7 @@ A VObject which defines the default loading range of VObjects in the entire world. There may only be one of these -objects in each world. Its effect can be overridden using [zCZoneVobFarPlane](zCZoneVobFarPlane.md) objects. +objects in each world. Its effect can be overridden using [zCZoneVobFarPlane](index.md) objects. ## Class members diff --git a/docs/zengin/worlds/Classes/zCZoneZFog.md b/docs/zengin/worlds/Classes/zCVob/zCZoneZFog/index.md similarity index 100% rename from docs/zengin/worlds/Classes/zCZoneZFog.md rename to docs/zengin/worlds/Classes/zCVob/zCZoneZFog/index.md diff --git a/docs/zengin/worlds/Classes/zCZoneZFogDefault.md b/docs/zengin/worlds/Classes/zCVob/zCZoneZFog/zCZoneZFogDefault.md similarity index 95% rename from docs/zengin/worlds/Classes/zCZoneZFogDefault.md rename to docs/zengin/worlds/Classes/zCVob/zCZoneZFog/zCZoneZFogDefault.md index 74fdd7e4fc..b2a9331a06 100644 --- a/docs/zengin/worlds/Classes/zCZoneZFogDefault.md +++ b/docs/zengin/worlds/Classes/zCVob/zCZoneZFog/zCZoneZFogDefault.md @@ -10,7 +10,7 @@ — [zk.gothickit.dev](https://zk.gothickit.dev/engine/objects/zCZoneZFogDefault/) A VObject which defines the default fog for the entire world. There may only be one of these objects in each world. -Its effect can be overridden using [zCZoneZFog](zCZoneZFog.md) objects. +Its effect can be overridden using [zCZoneZFog](index.md) objects. ## Class members diff --git a/docs/zengin/worlds/spacer.md b/docs/zengin/worlds/spacer.md index 5287809f08..334e2f55b3 100644 --- a/docs/zengin/worlds/spacer.md +++ b/docs/zengin/worlds/spacer.md @@ -103,7 +103,7 @@ This section covers some of the basic things done in the editor. ### Common VOB settings -VOB settings vary depending on what the VOB type is. They all have common parameters of the base VOB class though. The full description of a zCVob class can be found [here](Classes/zCVob.md). +VOB settings vary depending on what the VOB type is. They all have common parameters of the base VOB class though. The full description of a zCVob class can be found [here](Classes/zCVob/index.md). ## Issues From aba3d71517581d532ea364d32d6d4645cffa4a97 Mon Sep 17 00:00:00 2001 From: Luis Michaelis Date: Sat, 24 Feb 2024 09:05:21 +0100 Subject: [PATCH 60/61] Fixup VOb class hierarchy links --- .../worlds/Classes/zCVob/oCVob/index.md | 8 ++-- .../worlds/Classes/zCVob/oCVob/oCItem.md | 16 +++---- .../worlds/Classes/zCVob/oCVob/oCMOB/index.md | 16 +++---- .../zCVob/oCVob/oCMOB/oCMobInter/index.md | 24 +++++----- .../zCVob/oCVob/oCMOB/oCMobInter/oCMobBed.md | 32 +++++++------- .../zCVob/oCVob/oCMOB/oCMobInter/oCMobFire.md | 32 +++++++------- .../oCVob/oCMOB/oCMobInter/oCMobLadder.md | 32 +++++++------- .../oCMOB/oCMobInter/oCMobLockable/index.md | 32 +++++++------- .../oCMobLockable/oCMobContainer.md | 44 +++++++++---------- .../oCMobInter/oCMobLockable/oCMobDoor.md | 40 ++++++++--------- .../oCVob/oCMOB/oCMobInter/oCMobSwitch.md | 32 +++++++------- .../oCVob/oCMOB/oCMobInter/oCMobWheel.md | 32 +++++++------- .../worlds/Classes/zCVob/oCZoneMusic/index.md | 8 ++-- .../zCVob/oCZoneMusic/oCZoneMusicDefault.md | 16 +++---- .../zengin/worlds/Classes/zCVob/zCCSCamera.md | 8 ++-- .../worlds/Classes/zCVob/zCCamTrj_KeyFrame.md | 8 ++-- .../worlds/Classes/zCVob/zCEffect/index.md | 8 ++-- .../Classes/zCVob/zCEffect/zCEarthquake.md | 8 ++-- .../Classes/zCVob/zCEffect/zCPFXControler.md | 16 +++---- .../zCVob/zCEffect/zCTouchDamage/index.md | 16 +++---- .../zCEffect/zCTouchDamage/oCTouchDamage.md | 24 +++++----- .../Classes/zCVob/zCEffect/zCVobAnimate.md | 16 +++---- .../Classes/zCVob/zCEffect/zCVobLensFlare.md | 16 +++---- .../Classes/zCVob/zCEffect/zCVobScreenFX.md | 16 +++---- .../Classes/zCVob/zCTriggerBase/index.md | 8 ++-- .../zCVob/zCTriggerBase/zCCodeMaster.md | 16 +++---- .../zCVob/zCTriggerBase/zCMessageFilter.md | 16 +++---- .../zCVob/zCTriggerBase/zCMoverControler.md | 16 +++---- .../zCVob/zCTriggerBase/zCTrigger/index.md | 16 +++---- .../zCTriggerBase/zCTrigger/oCCSTrigger.md | 24 +++++----- .../zCTrigger/oCTriggerChangeLevel.md | 24 +++++----- .../zCTrigger/oCTriggerScript.md | 24 +++++----- .../zCVob/zCTriggerBase/zCTrigger/zCMover.md | 24 +++++----- .../zCTriggerBase/zCTrigger/zCTriggerList.md | 24 +++++----- .../zCVob/zCTriggerBase/zCTriggerUntouch.md | 16 +++---- .../zCTriggerBase/zCTriggerWorldStart.md | 16 +++---- .../worlds/Classes/zCVob/zCVobLevelCompo.md | 8 ++-- .../zengin/worlds/Classes/zCVob/zCVobLight.md | 8 ++-- .../worlds/Classes/zCVob/zCVobSound/index.md | 8 ++-- .../zCVob/zCVobSound/zCVobSoundDaytime.md | 16 +++---- docs/zengin/worlds/Classes/zCVob/zCVobSpot.md | 8 ++-- .../zengin/worlds/Classes/zCVob/zCVobStair.md | 4 +- .../worlds/Classes/zCVob/zCVobStartpoint.md | 8 ++-- .../Classes/zCVob/zCZoneVobFarPlane/index.md | 8 ++-- .../zCZoneVobFarPlaneDefault.md | 16 +++---- .../worlds/Classes/zCVob/zCZoneZFog/index.md | 8 ++-- .../zCVob/zCZoneZFog/zCZoneZFogDefault.md | 16 +++---- 47 files changed, 416 insertions(+), 416 deletions(-) diff --git a/docs/zengin/worlds/Classes/zCVob/oCVob/index.md b/docs/zengin/worlds/Classes/zCVob/oCVob/index.md index 8bfe8813b6..9db4425422 100644 --- a/docs/zengin/worlds/Classes/zCVob/oCVob/index.md +++ b/docs/zengin/worlds/Classes/zCVob/oCVob/index.md @@ -10,7 +10,7 @@ === "Gothic 1" - - [zCVob](zCVob.md) + - [zCVob](../index.md) {: .sp-class} - oCVob {: .sp-class} @@ -19,7 +19,7 @@ === "Gothic 2" - - [zCVob](zCVob.md) + - [zCVob](../index.md) {: .sp-class} - oCVob {: .sp-class} @@ -28,7 +28,7 @@ === "Gothic 1 (Save)" - - [zCVob](zCVob.md) + - [zCVob](../index.md) {: .sp-class} - oCVob {: .sp-class} @@ -37,7 +37,7 @@ === "Gothic 2 (Save)" - - [zCVob](zCVob.md) + - [zCVob](../index.md) {: .sp-class} - oCVob {: .sp-class} diff --git a/docs/zengin/worlds/Classes/zCVob/oCVob/oCItem.md b/docs/zengin/worlds/Classes/zCVob/oCVob/oCItem.md index b7f41fc1a8..2796808c0e 100644 --- a/docs/zengin/worlds/Classes/zCVob/oCVob/oCItem.md +++ b/docs/zengin/worlds/Classes/zCVob/oCVob/oCItem.md @@ -16,9 +16,9 @@ their attributes. They have physics enabled and can be targeted and picked up by === "Gothic 1" - - [zCVob](zCVob.md) + - [zCVob](../index.md) {: .sp-class} - - [oCVob](oCVob.md) + - [oCVob](index.md) {: .sp-class} - oCItem {: .sp-class} @@ -27,9 +27,9 @@ their attributes. They have physics enabled and can be targeted and picked up by === "Gothic 2" - - [zCVob](zCVob.md) + - [zCVob](../index.md) {: .sp-class} - - [oCVob](oCVob.md) + - [oCVob](index.md) {: .sp-class} - oCItem {: .sp-class} @@ -38,9 +38,9 @@ their attributes. They have physics enabled and can be targeted and picked up by === "Gothic 1 (Save)" - - [zCVob](zCVob.md) + - [zCVob](../index.md) {: .sp-class} - - [oCVob](oCVob.md) + - [oCVob](index.md) {: .sp-class} - oCItem {: .sp-class} @@ -53,9 +53,9 @@ their attributes. They have physics enabled and can be targeted and picked up by === "Gothic 2 (Save)" - - [zCVob](zCVob.md) + - [zCVob](../index.md) {: .sp-class} - - [oCVob](oCVob.md) + - [oCVob](index.md) {: .sp-class} - oCItem {: .sp-class} diff --git a/docs/zengin/worlds/Classes/zCVob/oCVob/oCMOB/index.md b/docs/zengin/worlds/Classes/zCVob/oCVob/oCMOB/index.md index 4fb3526b54..3b162eae69 100644 --- a/docs/zengin/worlds/Classes/zCVob/oCVob/oCMOB/index.md +++ b/docs/zengin/worlds/Classes/zCVob/oCVob/oCMOB/index.md @@ -16,9 +16,9 @@ A VObject which can optionally be moved and/or carried. === "Gothic 1" - - [zCVob](zCVob.md) + - [zCVob](../../index.md) {: .sp-class} - - [oCVob](oCVob.md) + - [oCVob](../index.md) {: .sp-class} - oCMOB {: .sp-class} @@ -49,9 +49,9 @@ A VObject which can optionally be moved and/or carried. === "Gothic 2" - - [zCVob](zCVob.md) + - [zCVob](../../index.md) {: .sp-class} - - [oCVob](oCVob.md) + - [oCVob](../index.md) {: .sp-class} - oCMOB {: .sp-class} @@ -82,9 +82,9 @@ A VObject which can optionally be moved and/or carried. === "Gothic 1 (Save)" - - [zCVob](zCVob.md) + - [zCVob](../../index.md) {: .sp-class} - - [oCVob](oCVob.md) + - [oCVob](../index.md) {: .sp-class} - oCMOB {: .sp-class} @@ -115,9 +115,9 @@ A VObject which can optionally be moved and/or carried. === "Gothic 2 (Save)" - - [zCVob](zCVob.md) + - [zCVob](../../index.md) {: .sp-class} - - [oCVob](oCVob.md) + - [oCVob](../index.md) {: .sp-class} - oCMOB {: .sp-class} diff --git a/docs/zengin/worlds/Classes/zCVob/oCVob/oCMOB/oCMobInter/index.md b/docs/zengin/worlds/Classes/zCVob/oCVob/oCMOB/oCMobInter/index.md index 8a33a0aa7e..fc49f50903 100644 --- a/docs/zengin/worlds/Classes/zCVob/oCVob/oCMOB/oCMobInter/index.md +++ b/docs/zengin/worlds/Classes/zCVob/oCVob/oCMOB/oCMobInter/index.md @@ -18,11 +18,11 @@ Interactive objects can be interacted with by NPCs and the player. Every time th === "Gothic 1" - - [zCVob](zCVob.md) + - [zCVob](../../../index.md) {: .sp-class} - - [oCVob](oCVob.md) + - [oCVob](../../index.md) {: .sp-class} - - [oCMOB](oCMOB.md) + - [oCMOB](../index.md) {: .sp-class} - oCMobInter {: .sp-class} @@ -41,11 +41,11 @@ Interactive objects can be interacted with by NPCs and the player. Every time th === "Gothic 2" - - [zCVob](zCVob.md) + - [zCVob](../../../index.md) {: .sp-class} - - [oCVob](oCVob.md) + - [oCVob](../../index.md) {: .sp-class} - - [oCMOB](oCMOB.md) + - [oCMOB](../index.md) {: .sp-class} - oCMobInter {: .sp-class} @@ -64,11 +64,11 @@ Interactive objects can be interacted with by NPCs and the player. Every time th === "Gothic 1 (Save)" - - [zCVob](zCVob.md) + - [zCVob](../../../index.md) {: .sp-class} - - [oCVob](oCVob.md) + - [oCVob](../../index.md) {: .sp-class} - - [oCMOB](oCMOB.md) + - [oCMOB](../index.md) {: .sp-class} - oCMobInter {: .sp-class} @@ -87,11 +87,11 @@ Interactive objects can be interacted with by NPCs and the player. Every time th === "Gothic 2 (Save)" - - [zCVob](zCVob.md) + - [zCVob](../../../index.md) {: .sp-class} - - [oCVob](oCVob.md) + - [oCVob](../../index.md) {: .sp-class} - - [oCMOB](oCMOB.md) + - [oCMOB](../index.md) {: .sp-class} - oCMobInter {: .sp-class} diff --git a/docs/zengin/worlds/Classes/zCVob/oCVob/oCMOB/oCMobInter/oCMobBed.md b/docs/zengin/worlds/Classes/zCVob/oCVob/oCMOB/oCMobInter/oCMobBed.md index c11bef5a51..8788dcaf21 100644 --- a/docs/zengin/worlds/Classes/zCVob/oCVob/oCMOB/oCMobInter/oCMobBed.md +++ b/docs/zengin/worlds/Classes/zCVob/oCVob/oCMOB/oCMobInter/oCMobBed.md @@ -21,13 +21,13 @@ visual of a bed when targeting that platform. === "Gothic 1" - - [zCVob](zCVob.md) + - [zCVob](../../../index.md) {: .sp-class} - - [oCVob](oCVob.md) + - [oCVob](../../index.md) {: .sp-class} - - [oCMOB](oCMOB.md) + - [oCMOB](../index.md) {: .sp-class} - - [oCMobInter](oCMobInter.md) + - [oCMobInter](index.md) {: .sp-class} - oCMobBed {: .sp-class} @@ -36,13 +36,13 @@ visual of a bed when targeting that platform. === "Gothic 2" - - [zCVob](zCVob.md) + - [zCVob](../../../index.md) {: .sp-class} - - [oCVob](oCVob.md) + - [oCVob](../../index.md) {: .sp-class} - - [oCMOB](oCMOB.md) + - [oCMOB](../index.md) {: .sp-class} - - [oCMobInter](oCMobInter.md) + - [oCMobInter](index.md) {: .sp-class} - oCMobBed {: .sp-class} @@ -51,13 +51,13 @@ visual of a bed when targeting that platform. === "Gothic 1 (Save)" - - [zCVob](zCVob.md) + - [zCVob](../../../index.md) {: .sp-class} - - [oCVob](oCVob.md) + - [oCVob](../../index.md) {: .sp-class} - - [oCMOB](oCMOB.md) + - [oCMOB](../index.md) {: .sp-class} - - [oCMobInter](oCMobInter.md) + - [oCMobInter](index.md) {: .sp-class} - oCMobBed {: .sp-class} @@ -66,13 +66,13 @@ visual of a bed when targeting that platform. === "Gothic 2 (Save)" - - [zCVob](zCVob.md) + - [zCVob](../../../index.md) {: .sp-class} - - [oCVob](oCVob.md) + - [oCVob](../../index.md) {: .sp-class} - - [oCMOB](oCMOB.md) + - [oCMOB](../index.md) {: .sp-class} - - [oCMobInter](oCMobInter.md) + - [oCMobInter](index.md) {: .sp-class} - oCMobBed {: .sp-class} diff --git a/docs/zengin/worlds/Classes/zCVob/oCVob/oCMOB/oCMobInter/oCMobFire.md b/docs/zengin/worlds/Classes/zCVob/oCVob/oCMOB/oCMobInter/oCMobFire.md index eb6146ad01..0bc9f7122e 100644 --- a/docs/zengin/worlds/Classes/zCVob/oCVob/oCMOB/oCMobInter/oCMobFire.md +++ b/docs/zengin/worlds/Classes/zCVob/oCVob/oCMOB/oCMobInter/oCMobFire.md @@ -15,13 +15,13 @@ An object with an integrated fire effect. Only supports rigged models as visuals === "Gothic 1" - - [zCVob](zCVob.md) + - [zCVob](../../../index.md) {: .sp-class} - - [oCVob](oCVob.md) + - [oCVob](../../index.md) {: .sp-class} - - [oCMOB](oCMOB.md) + - [oCMOB](../index.md) {: .sp-class} - - [oCMobInter](oCMobInter.md) + - [oCMobInter](index.md) {: .sp-class} - oCMobFire {: .sp-class} @@ -32,13 +32,13 @@ An object with an integrated fire effect. Only supports rigged models as visuals === "Gothic 2" - - [zCVob](zCVob.md) + - [zCVob](../../../index.md) {: .sp-class} - - [oCVob](oCVob.md) + - [oCVob](../../index.md) {: .sp-class} - - [oCMOB](oCMOB.md) + - [oCMOB](../index.md) {: .sp-class} - - [oCMobInter](oCMobInter.md) + - [oCMobInter](index.md) {: .sp-class} - oCMobFire {: .sp-class} @@ -49,13 +49,13 @@ An object with an integrated fire effect. Only supports rigged models as visuals === "Gothic 1 (Save)" - - [zCVob](zCVob.md) + - [zCVob](../../../index.md) {: .sp-class} - - [oCVob](oCVob.md) + - [oCVob](../../index.md) {: .sp-class} - - [oCMOB](oCMOB.md) + - [oCMOB](../index.md) {: .sp-class} - - [oCMobInter](oCMobInter.md) + - [oCMobInter](index.md) {: .sp-class} - oCMobFire {: .sp-class} @@ -66,13 +66,13 @@ An object with an integrated fire effect. Only supports rigged models as visuals === "Gothic 2 (Save)" - - [zCVob](zCVob.md) + - [zCVob](../../../index.md) {: .sp-class} - - [oCVob](oCVob.md) + - [oCVob](../../index.md) {: .sp-class} - - [oCMOB](oCMOB.md) + - [oCMOB](../index.md) {: .sp-class} - - [oCMobInter](oCMobInter.md) + - [oCMobInter](index.md) {: .sp-class} - oCMobFire {: .sp-class} diff --git a/docs/zengin/worlds/Classes/zCVob/oCVob/oCMOB/oCMobInter/oCMobLadder.md b/docs/zengin/worlds/Classes/zCVob/oCVob/oCMOB/oCMobInter/oCMobLadder.md index f401f06465..c51cae9b30 100644 --- a/docs/zengin/worlds/Classes/zCVob/oCVob/oCMOB/oCMobInter/oCMobLadder.md +++ b/docs/zengin/worlds/Classes/zCVob/oCVob/oCMOB/oCMobInter/oCMobLadder.md @@ -16,13 +16,13 @@ A VObject representing a ladder. NPCs can interact with ladders by climbing. === "Gothic 1" - - [zCVob](zCVob.md) + - [zCVob](../../../index.md) {: .sp-class} - - [oCVob](oCVob.md) + - [oCVob](../../index.md) {: .sp-class} - - [oCMOB](oCMOB.md) + - [oCMOB](../index.md) {: .sp-class} - - [oCMobInter](oCMobInter.md) + - [oCMobInter](index.md) {: .sp-class} - oCMobLadder {: .sp-class} @@ -31,13 +31,13 @@ A VObject representing a ladder. NPCs can interact with ladders by climbing. === "Gothic 2" - - [zCVob](zCVob.md) + - [zCVob](../../../index.md) {: .sp-class} - - [oCVob](oCVob.md) + - [oCVob](../../index.md) {: .sp-class} - - [oCMOB](oCMOB.md) + - [oCMOB](../index.md) {: .sp-class} - - [oCMobInter](oCMobInter.md) + - [oCMobInter](index.md) {: .sp-class} - oCMobLadder {: .sp-class} @@ -46,13 +46,13 @@ A VObject representing a ladder. NPCs can interact with ladders by climbing. === "Gothic 1 (Save)" - - [zCVob](zCVob.md) + - [zCVob](../../../index.md) {: .sp-class} - - [oCVob](oCVob.md) + - [oCVob](../../index.md) {: .sp-class} - - [oCMOB](oCMOB.md) + - [oCMOB](../index.md) {: .sp-class} - - [oCMobInter](oCMobInter.md) + - [oCMobInter](index.md) {: .sp-class} - oCMobLadder {: .sp-class} @@ -61,13 +61,13 @@ A VObject representing a ladder. NPCs can interact with ladders by climbing. === "Gothic 2 (Save)" - - [zCVob](zCVob.md) + - [zCVob](../../../index.md) {: .sp-class} - - [oCVob](oCVob.md) + - [oCVob](../../index.md) {: .sp-class} - - [oCMOB](oCMOB.md) + - [oCMOB](../index.md) {: .sp-class} - - [oCMobInter](oCMobInter.md) + - [oCMobInter](index.md) {: .sp-class} - oCMobLadder {: .sp-class} diff --git a/docs/zengin/worlds/Classes/zCVob/oCVob/oCMOB/oCMobInter/oCMobLockable/index.md b/docs/zengin/worlds/Classes/zCVob/oCVob/oCMOB/oCMobInter/oCMobLockable/index.md index 6652a5774f..e63a4fc8cf 100644 --- a/docs/zengin/worlds/Classes/zCVob/oCVob/oCMOB/oCMobInter/oCMobLockable/index.md +++ b/docs/zengin/worlds/Classes/zCVob/oCVob/oCMOB/oCMobInter/oCMobLockable/index.md @@ -17,13 +17,13 @@ The base class for many lockable objects like [containers](oCMobContainer.md) an === "Gothic 1" - - [zCVob](zCVob.md) + - [zCVob](../../../../index.md) {: .sp-class} - - [oCVob](oCVob.md) + - [oCVob](../../../index.md) {: .sp-class} - - [oCMOB](oCMOB.md) + - [oCMOB](../../index.md) {: .sp-class} - - [oCMobInter](oCMobInter.md) + - [oCMobInter](../index.md) {: .sp-class} - oCMobContainer {: .sp-class} @@ -38,13 +38,13 @@ The base class for many lockable objects like [containers](oCMobContainer.md) an === "Gothic 2" - - [zCVob](zCVob.md) + - [zCVob](../../../../index.md) {: .sp-class} - - [oCVob](oCVob.md) + - [oCVob](../../../index.md) {: .sp-class} - - [oCMOB](oCMOB.md) + - [oCMOB](../../index.md) {: .sp-class} - - [oCMobInter](oCMobInter.md) + - [oCMobInter](../index.md) {: .sp-class} - oCMobContainer {: .sp-class} @@ -59,13 +59,13 @@ The base class for many lockable objects like [containers](oCMobContainer.md) an === "Gothic 1 (Save)" - - [zCVob](zCVob.md) + - [zCVob](../../../../index.md) {: .sp-class} - - [oCVob](oCVob.md) + - [oCVob](../../../index.md) {: .sp-class} - - [oCMOB](oCMOB.md) + - [oCMOB](../../index.md) {: .sp-class} - - [oCMobInter](oCMobInter.md) + - [oCMobInter](../index.md) {: .sp-class} - oCMobContainer {: .sp-class} @@ -80,13 +80,13 @@ The base class for many lockable objects like [containers](oCMobContainer.md) an === "Gothic 2 (Save)" - - [zCVob](zCVob.md) + - [zCVob](../../../../index.md) {: .sp-class} - - [oCVob](oCVob.md) + - [oCVob](../../../index.md) {: .sp-class} - - [oCMOB](oCMOB.md) + - [oCMOB](../../index.md) {: .sp-class} - - [oCMobInter](oCMobInter.md) + - [oCMobInter](../index.md) {: .sp-class} - oCMobContainer {: .sp-class} diff --git a/docs/zengin/worlds/Classes/zCVob/oCVob/oCMOB/oCMobInter/oCMobLockable/oCMobContainer.md b/docs/zengin/worlds/Classes/zCVob/oCVob/oCMOB/oCMobInter/oCMobLockable/oCMobContainer.md index de8fe53d76..b4f846cf5a 100644 --- a/docs/zengin/worlds/Classes/zCVob/oCVob/oCMOB/oCMobInter/oCMobLockable/oCMobContainer.md +++ b/docs/zengin/worlds/Classes/zCVob/oCVob/oCMOB/oCMobInter/oCMobLockable/oCMobContainer.md @@ -16,15 +16,15 @@ An object which contains items. === "Gothic 1" - - [zCVob](zCVob.md) + - [zCVob](../../../../index.md) {: .sp-class} - - [oCVob](oCVob.md) + - [oCVob](../../../index.md) {: .sp-class} - - [oCMOB](oCMOB.md) + - [oCMOB](../../index.md) {: .sp-class} - - [oCMobInter](oCMobInter.md) + - [oCMobInter](../index.md) {: .sp-class} - - [*oCMobLockable*](oCMobLockable.md) + - [*oCMobLockable*](index.md) {: .sp-class} - oCMobContainer {: .sp-class} @@ -35,15 +35,15 @@ An object which contains items. === "Gothic 2" - - [zCVob](zCVob.md) + - [zCVob](../../../../index.md) {: .sp-class} - - [oCVob](oCVob.md) + - [oCVob](../../../index.md) {: .sp-class} - - [oCMOB](oCMOB.md) + - [oCMOB](../../index.md) {: .sp-class} - - [oCMobInter](oCMobInter.md) + - [oCMobInter](../index.md) {: .sp-class} - - [*oCMobLockable*](oCMobLockable.md) + - [*oCMobLockable*](index.md) {: .sp-class} - oCMobContainer {: .sp-class} @@ -54,15 +54,15 @@ An object which contains items. === "Gothic 1 (Save)" - - [zCVob](zCVob.md) + - [zCVob](../../../../index.md) {: .sp-class} - - [oCVob](oCVob.md) + - [oCVob](../../../index.md) {: .sp-class} - - [oCMOB](oCMOB.md) + - [oCMOB](../../index.md) {: .sp-class} - - [oCMobInter](oCMobInter.md) + - [oCMobInter](../index.md) {: .sp-class} - - [*oCMobLockable*](oCMobLockable.md) + - [*oCMobLockable*](index.md) {: .sp-class} - oCMobContainer {: .sp-class} @@ -72,20 +72,20 @@ An object which contains items. {: .sp-string} - [NumOfEntries](#numofentries) = 0 {: .sp-int} - - [oCItem](oCItem.md) ... = NULL + - [oCItem](../../../oCItem.md) ... = NULL {: .sp-class} === "Gothic 2 (Save)" - - [zCVob](zCVob.md) + - [zCVob](../../../../index.md) {: .sp-class} - - [oCVob](oCVob.md) + - [oCVob](../../../index.md) {: .sp-class} - - [oCMOB](oCMOB.md) + - [oCMOB](../../index.md) {: .sp-class} - - [oCMobInter](oCMobInter.md) + - [oCMobInter](../index.md) {: .sp-class} - - [*oCMobLockable*](oCMobLockable.md) + - [*oCMobLockable*](index.md) {: .sp-class} - oCMobContainer {: .sp-class} @@ -95,7 +95,7 @@ An object which contains items. {: .sp-string} - [NumOfEntries](#numofentries) = 0 {: .sp-int} - - [oCItem](oCItem.md) ... = NULL + - [oCItem](../../../oCItem.md) ... = NULL {: .sp-class} ## Class member overview diff --git a/docs/zengin/worlds/Classes/zCVob/oCVob/oCMOB/oCMobInter/oCMobLockable/oCMobDoor.md b/docs/zengin/worlds/Classes/zCVob/oCVob/oCMOB/oCMobInter/oCMobLockable/oCMobDoor.md index 57709b0587..fd74403ed0 100644 --- a/docs/zengin/worlds/Classes/zCVob/oCVob/oCMOB/oCMobInter/oCMobLockable/oCMobDoor.md +++ b/docs/zengin/worlds/Classes/zCVob/oCVob/oCMOB/oCMobInter/oCMobLockable/oCMobDoor.md @@ -15,15 +15,15 @@ A VObject representing a door. This is also used for NPCs navigating the waynet. === "Gothic 1" - - [zCVob](zCVob.md) + - [zCVob](../../../../index.md) {: .sp-class} - - [oCVob](oCVob.md) + - [oCVob](../../../index.md) {: .sp-class} - - [oCMOB](oCMOB.md) + - [oCMOB](../../index.md) {: .sp-class} - - [oCMobInter](oCMobInter.md) + - [oCMobInter](../index.md) {: .sp-class} - - [*oCMobLockable*](oCMobLockable.md) + - [*oCMobLockable*](index.md) {: .sp-class} - oCMobDoor {: .sp-class} @@ -32,15 +32,15 @@ A VObject representing a door. This is also used for NPCs navigating the waynet. === "Gothic 2" - - [zCVob](zCVob.md) + - [zCVob](../../../../index.md) {: .sp-class} - - [oCVob](oCVob.md) + - [oCVob](../../../index.md) {: .sp-class} - - [oCMOB](oCMOB.md) + - [oCMOB](../../index.md) {: .sp-class} - - [oCMobInter](oCMobInter.md) + - [oCMobInter](../index.md) {: .sp-class} - - [*oCMobLockable*](oCMobLockable.md) + - [*oCMobLockable*](index.md) {: .sp-class} - oCMobDoor {: .sp-class} @@ -49,15 +49,15 @@ A VObject representing a door. This is also used for NPCs navigating the waynet. === "Gothic 1 (Save)" - - [zCVob](zCVob.md) + - [zCVob](../../../../index.md) {: .sp-class} - - [oCVob](oCVob.md) + - [oCVob](../../../index.md) {: .sp-class} - - [oCMOB](oCMOB.md) + - [oCMOB](../../index.md) {: .sp-class} - - [oCMobInter](oCMobInter.md) + - [oCMobInter](../index.md) {: .sp-class} - - [*oCMobLockable*](oCMobLockable.md) + - [*oCMobLockable*](index.md) {: .sp-class} - oCMobDoor {: .sp-class} @@ -66,15 +66,15 @@ A VObject representing a door. This is also used for NPCs navigating the waynet. === "Gothic 2 (Save)" - - [zCVob](zCVob.md) + - [zCVob](../../../../index.md) {: .sp-class} - - [oCVob](oCVob.md) + - [oCVob](../../../index.md) {: .sp-class} - - [oCMOB](oCMOB.md) + - [oCMOB](../../index.md) {: .sp-class} - - [oCMobInter](oCMobInter.md) + - [oCMobInter](../index.md) {: .sp-class} - - [*oCMobLockable*](oCMobLockable.md) + - [*oCMobLockable*](index.md) {: .sp-class} - oCMobDoor {: .sp-class} diff --git a/docs/zengin/worlds/Classes/zCVob/oCVob/oCMOB/oCMobInter/oCMobSwitch.md b/docs/zengin/worlds/Classes/zCVob/oCVob/oCMOB/oCMobInter/oCMobSwitch.md index 001b0cea88..267f86d03c 100644 --- a/docs/zengin/worlds/Classes/zCVob/oCVob/oCMOB/oCMobInter/oCMobSwitch.md +++ b/docs/zengin/worlds/Classes/zCVob/oCVob/oCMOB/oCMobInter/oCMobSwitch.md @@ -15,13 +15,13 @@ A VObject representing a switch with two states. === "Gothic 1" - - [zCVob](zCVob.md) + - [zCVob](../../../index.md) {: .sp-class} - - [oCVob](oCVob.md) + - [oCVob](../../index.md) {: .sp-class} - - [oCMOB](oCMOB.md) + - [oCMOB](../index.md) {: .sp-class} - - [oCMobInter](oCMobInter.md) + - [oCMobInter](index.md) {: .sp-class} - oCMobSwitch {: .sp-class} @@ -30,13 +30,13 @@ A VObject representing a switch with two states. === "Gothic 2" - - [zCVob](zCVob.md) + - [zCVob](../../../index.md) {: .sp-class} - - [oCVob](oCVob.md) + - [oCVob](../../index.md) {: .sp-class} - - [oCMOB](oCMOB.md) + - [oCMOB](../index.md) {: .sp-class} - - [oCMobInter](oCMobInter.md) + - [oCMobInter](index.md) {: .sp-class} - oCMobSwitch {: .sp-class} @@ -45,13 +45,13 @@ A VObject representing a switch with two states. === "Gothic 1 (Save)" - - [zCVob](zCVob.md) + - [zCVob](../../../index.md) {: .sp-class} - - [oCVob](oCVob.md) + - [oCVob](../../index.md) {: .sp-class} - - [oCMOB](oCMOB.md) + - [oCMOB](../index.md) {: .sp-class} - - [oCMobInter](oCMobInter.md) + - [oCMobInter](index.md) {: .sp-class} - oCMobSwitch {: .sp-class} @@ -60,13 +60,13 @@ A VObject representing a switch with two states. === "Gothic 2 (Save)" - - [zCVob](zCVob.md) + - [zCVob](../../../index.md) {: .sp-class} - - [oCVob](oCVob.md) + - [oCVob](../../index.md) {: .sp-class} - - [oCMOB](oCMOB.md) + - [oCMOB](../index.md) {: .sp-class} - - [oCMobInter](oCMobInter.md) + - [oCMobInter](index.md) {: .sp-class} - oCMobSwitch {: .sp-class} diff --git a/docs/zengin/worlds/Classes/zCVob/oCVob/oCMOB/oCMobInter/oCMobWheel.md b/docs/zengin/worlds/Classes/zCVob/oCVob/oCMOB/oCMobInter/oCMobWheel.md index 086dadc04d..0024582a4f 100644 --- a/docs/zengin/worlds/Classes/zCVob/oCVob/oCMOB/oCMobInter/oCMobWheel.md +++ b/docs/zengin/worlds/Classes/zCVob/oCVob/oCMOB/oCMobInter/oCMobWheel.md @@ -15,13 +15,13 @@ A wheel with four different states. For example, this is used for the gates of t === "Gothic 1" - - [zCVob](zCVob.md) + - [zCVob](../../../index.md) {: .sp-class} - - [oCVob](oCVob.md) + - [oCVob](../../index.md) {: .sp-class} - - [oCMOB](oCMOB.md) + - [oCMOB](../index.md) {: .sp-class} - - [oCMobInter](oCMobInter.md) + - [oCMobInter](index.md) {: .sp-class} - oCMobWheel {: .sp-class} @@ -30,13 +30,13 @@ A wheel with four different states. For example, this is used for the gates of t === "Gothic 2" - - [zCVob](zCVob.md) + - [zCVob](../../../index.md) {: .sp-class} - - [oCVob](oCVob.md) + - [oCVob](../../index.md) {: .sp-class} - - [oCMOB](oCMOB.md) + - [oCMOB](../index.md) {: .sp-class} - - [oCMobInter](oCMobInter.md) + - [oCMobInter](index.md) {: .sp-class} - oCMobWheel {: .sp-class} @@ -45,13 +45,13 @@ A wheel with four different states. For example, this is used for the gates of t === "Gothic 1 (Save)" - - [zCVob](zCVob.md) + - [zCVob](../../../index.md) {: .sp-class} - - [oCVob](oCVob.md) + - [oCVob](../../index.md) {: .sp-class} - - [oCMOB](oCMOB.md) + - [oCMOB](../index.md) {: .sp-class} - - [oCMobInter](oCMobInter.md) + - [oCMobInter](index.md) {: .sp-class} - oCMobWheel {: .sp-class} @@ -60,13 +60,13 @@ A wheel with four different states. For example, this is used for the gates of t === "Gothic 2 (Save)" - - [zCVob](zCVob.md) + - [zCVob](../../../index.md) {: .sp-class} - - [oCVob](oCVob.md) + - [oCVob](../../index.md) {: .sp-class} - - [oCMOB](oCMOB.md) + - [oCMOB](../index.md) {: .sp-class} - - [oCMobInter](oCMobInter.md) + - [oCMobInter](index.md) {: .sp-class} - oCMobWheel {: .sp-class} diff --git a/docs/zengin/worlds/Classes/zCVob/oCZoneMusic/index.md b/docs/zengin/worlds/Classes/zCVob/oCZoneMusic/index.md index 515c8e1b70..2af299a37e 100644 --- a/docs/zengin/worlds/Classes/zCVob/oCZoneMusic/index.md +++ b/docs/zengin/worlds/Classes/zCVob/oCZoneMusic/index.md @@ -24,7 +24,7 @@ The name of the music theme to be played is defined by the [`vobName`](../index. === "Gothic 1" - - [zCVob](zCVob.md) + - [zCVob](../index.md) {: .sp-class} - oCZoneMusic {: .sp-class} @@ -43,7 +43,7 @@ The name of the music theme to be played is defined by the [`vobName`](../index. === "Gothic 2" - - [zCVob](zCVob.md) + - [zCVob](../index.md) {: .sp-class} - oCZoneMusic {: .sp-class} @@ -62,7 +62,7 @@ The name of the music theme to be played is defined by the [`vobName`](../index. === "Gothic 1 (Save)" - - [zCVob](zCVob.md) + - [zCVob](../index.md) {: .sp-class} - oCZoneMusic {: .sp-class} @@ -87,7 +87,7 @@ The name of the music theme to be played is defined by the [`vobName`](../index. === "Gothic 2 (Save)" - - [zCVob](zCVob.md) + - [zCVob](../index.md) {: .sp-class} - oCZoneMusic {: .sp-class} diff --git a/docs/zengin/worlds/Classes/zCVob/oCZoneMusic/oCZoneMusicDefault.md b/docs/zengin/worlds/Classes/zCVob/oCZoneMusic/oCZoneMusicDefault.md index 91db4d0e2c..fa3a321c67 100644 --- a/docs/zengin/worlds/Classes/zCVob/oCZoneMusic/oCZoneMusicDefault.md +++ b/docs/zengin/worlds/Classes/zCVob/oCZoneMusic/oCZoneMusicDefault.md @@ -16,9 +16,9 @@ volume-related options of the zone are ignored. There may only be one `oCZoneMus === "Gothic 1" - - [zCVob](zCVob.md) + - [zCVob](../index.md) {: .sp-class} - - [oCZoneMusic](oCZoneMusic.md) + - [oCZoneMusic](index.md) {: .sp-class} - oCZoneMusicDefault {: .sp-class} @@ -27,9 +27,9 @@ volume-related options of the zone are ignored. There may only be one `oCZoneMus === "Gothic 2" - - [zCVob](zCVob.md) + - [zCVob](../index.md) {: .sp-class} - - [oCZoneMusic](oCZoneMusic.md) + - [oCZoneMusic](index.md) {: .sp-class} - oCZoneMusicDefault {: .sp-class} @@ -38,9 +38,9 @@ volume-related options of the zone are ignored. There may only be one `oCZoneMus === "Gothic 1 (Save)" - - [zCVob](zCVob.md) + - [zCVob](../index.md) {: .sp-class} - - [oCZoneMusic](oCZoneMusic.md) + - [oCZoneMusic](index.md) {: .sp-class} - oCZoneMusicDefault {: .sp-class} @@ -49,9 +49,9 @@ volume-related options of the zone are ignored. There may only be one `oCZoneMus === "Gothic 2 (Save)" - - [zCVob](zCVob.md) + - [zCVob](../index.md) {: .sp-class} - - [oCZoneMusic](oCZoneMusic.md) + - [oCZoneMusic](index.md) {: .sp-class} - oCZoneMusicDefault {: .sp-class} diff --git a/docs/zengin/worlds/Classes/zCVob/zCCSCamera.md b/docs/zengin/worlds/Classes/zCVob/zCCSCamera.md index 1d846c54cf..cd7ea282e9 100644 --- a/docs/zengin/worlds/Classes/zCVob/zCCSCamera.md +++ b/docs/zengin/worlds/Classes/zCVob/zCCSCamera.md @@ -17,7 +17,7 @@ === "Gothic 1" - - [zCVob](zCVob.md) + - [zCVob](index.md) {: .sp-class} - zCCSCamera {: .sp-class} @@ -60,7 +60,7 @@ === "Gothic 2" - - [zCVob](zCVob.md) + - [zCVob](index.md) {: .sp-class} - zCCSCamera {: .sp-class} @@ -103,7 +103,7 @@ === "Gothic 1 (Save)" - - [zCVob](zCVob.md) + - [zCVob](index.md) {: .sp-class} - zCCSCamera {: .sp-class} @@ -146,7 +146,7 @@ === "Gothic 2 (Save)" - - [zCVob](zCVob.md) + - [zCVob](index.md) {: .sp-class} - zCCSCamera {: .sp-class} diff --git a/docs/zengin/worlds/Classes/zCVob/zCCamTrj_KeyFrame.md b/docs/zengin/worlds/Classes/zCVob/zCCamTrj_KeyFrame.md index c6315ffec0..10089679d0 100644 --- a/docs/zengin/worlds/Classes/zCVob/zCCamTrj_KeyFrame.md +++ b/docs/zengin/worlds/Classes/zCVob/zCCamTrj_KeyFrame.md @@ -17,7 +17,7 @@ === "Gothic 1" - - [zCVob](zCVob.md) + - [zCVob](index.md) {: .sp-class} - zCCamTrj_KeyFrame {: .sp-class} @@ -52,7 +52,7 @@ === "Gothic 2" - - [zCVob](zCVob.md) + - [zCVob](index.md) {: .sp-class} - zCCamTrj_KeyFrame {: .sp-class} @@ -87,7 +87,7 @@ === "Gothic 1 (Save)" - - [zCVob](zCVob.md) + - [zCVob](index.md) {: .sp-class} - zCCamTrj_KeyFrame {: .sp-class} @@ -122,7 +122,7 @@ === "Gothic 2 (Save)" - - [zCVob](zCVob.md) + - [zCVob](index.md) {: .sp-class} - zCCamTrj_KeyFrame {: .sp-class} diff --git a/docs/zengin/worlds/Classes/zCVob/zCEffect/index.md b/docs/zengin/worlds/Classes/zCVob/zCEffect/index.md index 393b037f74..fbbcc9ec24 100644 --- a/docs/zengin/worlds/Classes/zCVob/zCEffect/index.md +++ b/docs/zengin/worlds/Classes/zCVob/zCEffect/index.md @@ -17,7 +17,7 @@ The base class for many visual and sound effects. === "Gothic 1" - - [zCVob](zCVob.md) + - [zCVob](../index.md) {: .sp-class} - zCEffect {: .sp-class} @@ -26,7 +26,7 @@ The base class for many visual and sound effects. === "Gothic 2" - - [zCVob](zCVob.md) + - [zCVob](../index.md) {: .sp-class} - zCEffect {: .sp-class} @@ -35,7 +35,7 @@ The base class for many visual and sound effects. === "Gothic 1 (Save)" - - [zCVob](zCVob.md) + - [zCVob](../index.md) {: .sp-class} - zCEffect {: .sp-class} @@ -44,7 +44,7 @@ The base class for many visual and sound effects. === "Gothic 2 (Save)" - - [zCVob](zCVob.md) + - [zCVob](../index.md) {: .sp-class} - zCEffect {: .sp-class} diff --git a/docs/zengin/worlds/Classes/zCVob/zCEffect/zCEarthquake.md b/docs/zengin/worlds/Classes/zCVob/zCEffect/zCEarthquake.md index 081470d432..a06eca2970 100644 --- a/docs/zengin/worlds/Classes/zCVob/zCEffect/zCEarthquake.md +++ b/docs/zengin/worlds/Classes/zCVob/zCEffect/zCEarthquake.md @@ -25,9 +25,9 @@ by a shaking camera. === "Gothic 2" - - [zCVob](zCVob.md) + - [zCVob](../index.md) {: .sp-class} - - [*zCEffect*](zCEffect.md) + - [*zCEffect*](index.md) {: .sp-class} - zCEarthquake {: .sp-class} @@ -46,9 +46,9 @@ by a shaking camera. === "Gothic 2 (Save)" - - [zCVob](zCVob.md) + - [zCVob](../index.md) {: .sp-class} - - [*zCEffect*](zCEffect.md) + - [*zCEffect*](index.md) {: .sp-class} - zCEarthquake {: .sp-class} diff --git a/docs/zengin/worlds/Classes/zCVob/zCEffect/zCPFXControler.md b/docs/zengin/worlds/Classes/zCVob/zCEffect/zCPFXControler.md index e3600878f5..1c9f491dd0 100644 --- a/docs/zengin/worlds/Classes/zCVob/zCEffect/zCPFXControler.md +++ b/docs/zengin/worlds/Classes/zCVob/zCEffect/zCPFXControler.md @@ -17,9 +17,9 @@ events. === "Gothic 1" - - [zCVob](zCVob.md) + - [zCVob](../index.md) {: .sp-class} - - [*zCEffect*](zCEffect.md) + - [*zCEffect*](index.md) {: .sp-class} - zCPFXController {: .sp-class} @@ -32,9 +32,9 @@ events. === "Gothic 2" - - [zCVob](zCVob.md) + - [zCVob](../index.md) {: .sp-class} - - [*zCEffect*](zCEffect.md) + - [*zCEffect*](index.md) {: .sp-class} - zCPFXController {: .sp-class} @@ -47,9 +47,9 @@ events. === "Gothic 1 (Save)" - - [zCVob](zCVob.md) + - [zCVob](../index.md) {: .sp-class} - - [*zCEffect*](zCEffect.md) + - [*zCEffect*](index.md) {: .sp-class} - zCPFXController {: .sp-class} @@ -62,9 +62,9 @@ events. === "Gothic 2 (Save)" - - [zCVob](zCVob.md) + - [zCVob](../index.md) {: .sp-class} - - [*zCEffect*](zCEffect.md) + - [*zCEffect*](index.md) {: .sp-class} - zCPFXController {: .sp-class} diff --git a/docs/zengin/worlds/Classes/zCVob/zCEffect/zCTouchDamage/index.md b/docs/zengin/worlds/Classes/zCVob/zCEffect/zCTouchDamage/index.md index 71e8d62081..8fc532c06f 100644 --- a/docs/zengin/worlds/Classes/zCVob/zCEffect/zCTouchDamage/index.md +++ b/docs/zengin/worlds/Classes/zCVob/zCEffect/zCTouchDamage/index.md @@ -16,9 +16,9 @@ A VObject which damages other VObjects colliding with it. === "Gothic 1" - - [zCVob](zCVob.md) + - [zCVob](../../index.md) {: .sp-class} - - [*zCEffect*](zCEffect.md) + - [*zCEffect*](../index.md) {: .sp-class} - zCTouchDamage {: .sp-class} @@ -53,9 +53,9 @@ A VObject which damages other VObjects colliding with it. === "Gothic 2" - - [zCVob](zCVob.md) + - [zCVob](../../index.md) {: .sp-class} - - [*zCEffect*](zCEffect.md) + - [*zCEffect*](../index.md) {: .sp-class} - zCTouchDamage {: .sp-class} @@ -90,9 +90,9 @@ A VObject which damages other VObjects colliding with it. === "Gothic 1 (Save)" - - [zCVob](zCVob.md) + - [zCVob](../../index.md) {: .sp-class} - - [*zCEffect*](zCEffect.md) + - [*zCEffect*](../index.md) {: .sp-class} - zCTouchDamage {: .sp-class} @@ -127,9 +127,9 @@ A VObject which damages other VObjects colliding with it. === "Gothic 2 (Save)" - - [zCVob](zCVob.md) + - [zCVob](../../index.md) {: .sp-class} - - [*zCEffect*](zCEffect.md) + - [*zCEffect*](../index.md) {: .sp-class} - zCTouchDamage {: .sp-class} diff --git a/docs/zengin/worlds/Classes/zCVob/zCEffect/zCTouchDamage/oCTouchDamage.md b/docs/zengin/worlds/Classes/zCVob/zCEffect/zCTouchDamage/oCTouchDamage.md index 8f2a92df97..1b9f3054ba 100644 --- a/docs/zengin/worlds/Classes/zCVob/zCEffect/zCTouchDamage/oCTouchDamage.md +++ b/docs/zengin/worlds/Classes/zCVob/zCEffect/zCTouchDamage/oCTouchDamage.md @@ -13,11 +13,11 @@ === "Gothic 1" - - [zCVob](zCVob.md) + - [zCVob](../../index.md) {: .sp-class} - - [*zCEffect*](zCEffect.md) + - [*zCEffect*](../index.md) {: .sp-class} - - [zCTouchDamage](zCTouchDamage.md) + - [zCTouchDamage](index.md) {: .sp-class} - oCTouchDamage {: .sp-class} @@ -26,11 +26,11 @@ === "Gothic 2" - - [zCVob](zCVob.md) + - [zCVob](../../index.md) {: .sp-class} - - [*zCEffect*](zCEffect.md) + - [*zCEffect*](../index.md) {: .sp-class} - - [zCTouchDamage](zCTouchDamage.md) + - [zCTouchDamage](index.md) {: .sp-class} - oCTouchDamage {: .sp-class} @@ -39,11 +39,11 @@ === "Gothic 1 (Save)" - - [zCVob](zCVob.md) + - [zCVob](../../index.md) {: .sp-class} - - [*zCEffect*](zCEffect.md) + - [*zCEffect*](../index.md) {: .sp-class} - - [zCTouchDamage](zCTouchDamage.md) + - [zCTouchDamage](index.md) {: .sp-class} - oCTouchDamage {: .sp-class} @@ -52,11 +52,11 @@ === "Gothic 2 (Save)" - - [zCVob](zCVob.md) + - [zCVob](../../index.md) {: .sp-class} - - [*zCEffect*](zCEffect.md) + - [*zCEffect*](../index.md) {: .sp-class} - - [zCTouchDamage](zCTouchDamage.md) + - [zCTouchDamage](index.md) {: .sp-class} - oCTouchDamage {: .sp-class} diff --git a/docs/zengin/worlds/Classes/zCVob/zCEffect/zCVobAnimate.md b/docs/zengin/worlds/Classes/zCVob/zCEffect/zCVobAnimate.md index 1f6dc23efd..8dc80fef4d 100644 --- a/docs/zengin/worlds/Classes/zCVob/zCEffect/zCVobAnimate.md +++ b/docs/zengin/worlds/Classes/zCVob/zCEffect/zCVobAnimate.md @@ -19,9 +19,9 @@ and `OnUntrigger` events. === "Gothic 1" - - [zCVob](zCVob.md) + - [zCVob](../index.md) {: .sp-class} - - [*zCEffect*](zCEffect.md) + - [*zCEffect*](index.md) {: .sp-class} - zCVobAnimate {: .sp-class} @@ -30,9 +30,9 @@ and `OnUntrigger` events. === "Gothic 2" - - [zCVob](zCVob.md) + - [zCVob](../index.md) {: .sp-class} - - [*zCEffect*](zCEffect.md) + - [*zCEffect*](index.md) {: .sp-class} - zCVobAnimate {: .sp-class} @@ -41,9 +41,9 @@ and `OnUntrigger` events. === "Gothic 1 (Save)" - - [zCVob](zCVob.md) + - [zCVob](../index.md) {: .sp-class} - - [*zCEffect*](zCEffect.md) + - [*zCEffect*](index.md) {: .sp-class} - zCVobAnimate {: .sp-class} @@ -54,9 +54,9 @@ and `OnUntrigger` events. === "Gothic 2 (Save)" - - [zCVob](zCVob.md) + - [zCVob](../index.md) {: .sp-class} - - [*zCEffect*](zCEffect.md) + - [*zCEffect*](index.md) {: .sp-class} - zCVobAnimate {: .sp-class} diff --git a/docs/zengin/worlds/Classes/zCVob/zCEffect/zCVobLensFlare.md b/docs/zengin/worlds/Classes/zCVob/zCEffect/zCVobLensFlare.md index 354063a532..50e81ebe63 100644 --- a/docs/zengin/worlds/Classes/zCVob/zCEffect/zCVobLensFlare.md +++ b/docs/zengin/worlds/Classes/zCVob/zCEffect/zCVobLensFlare.md @@ -16,9 +16,9 @@ Represents a lens flare effect. Behaves exactly like the base [`zCVob`](../index === "Gothic 1" - - [zCVob](zCVob.md) + - [zCVob](../index.md) {: .sp-class} - - [*zCEffect*](zCEffect.md) + - [*zCEffect*](index.md) {: .sp-class} - zCVobLensFlare {: .sp-class} @@ -27,9 +27,9 @@ Represents a lens flare effect. Behaves exactly like the base [`zCVob`](../index === "Gothic 2" - - [zCVob](zCVob.md) + - [zCVob](../index.md) {: .sp-class} - - [*zCEffect*](zCEffect.md) + - [*zCEffect*](index.md) {: .sp-class} - zCVobLensFlare {: .sp-class} @@ -38,9 +38,9 @@ Represents a lens flare effect. Behaves exactly like the base [`zCVob`](../index === "Gothic 1 (Save)" - - [zCVob](zCVob.md) + - [zCVob](../index.md) {: .sp-class} - - [*zCEffect*](zCEffect.md) + - [*zCEffect*](index.md) {: .sp-class} - zCVobLensFlare {: .sp-class} @@ -49,9 +49,9 @@ Represents a lens flare effect. Behaves exactly like the base [`zCVob`](../index === "Gothic 2 (Save)" - - [zCVob](zCVob.md) + - [zCVob](../index.md) {: .sp-class} - - [*zCEffect*](zCEffect.md) + - [*zCEffect*](index.md) {: .sp-class} - zCVobLensFlare {: .sp-class} diff --git a/docs/zengin/worlds/Classes/zCVob/zCEffect/zCVobScreenFX.md b/docs/zengin/worlds/Classes/zCVob/zCEffect/zCVobScreenFX.md index 8b20f38873..e7b5c9855b 100644 --- a/docs/zengin/worlds/Classes/zCVob/zCEffect/zCVobScreenFX.md +++ b/docs/zengin/worlds/Classes/zCVob/zCEffect/zCVobScreenFX.md @@ -17,9 +17,9 @@ for a cinematic feel to the game and other post-processing effects. === "Gothic 1" - - [zCVob](zCVob.md) + - [zCVob](../index.md) {: .sp-class} - - [*zCEffect*](zCEffect.md) + - [*zCEffect*](index.md) {: .sp-class} - zCVobScreenFX {: .sp-class} @@ -28,9 +28,9 @@ for a cinematic feel to the game and other post-processing effects. === "Gothic 2" - - [zCVob](zCVob.md) + - [zCVob](../index.md) {: .sp-class} - - [*zCEffect*](zCEffect.md) + - [*zCEffect*](index.md) {: .sp-class} - zCVobScreenFX {: .sp-class} @@ -39,9 +39,9 @@ for a cinematic feel to the game and other post-processing effects. === "Gothic 1 (Save)" - - [zCVob](zCVob.md) + - [zCVob](../index.md) {: .sp-class} - - [*zCEffect*](zCEffect.md) + - [*zCEffect*](index.md) {: .sp-class} - zCVobScreenFX {: .sp-class} @@ -50,9 +50,9 @@ for a cinematic feel to the game and other post-processing effects. === "Gothic 2 (Save)" - - [zCVob](zCVob.md) + - [zCVob](../index.md) {: .sp-class} - - [*zCEffect*](zCEffect.md) + - [*zCEffect*](index.md) {: .sp-class} - zCVobScreenFX {: .sp-class} diff --git a/docs/zengin/worlds/Classes/zCVob/zCTriggerBase/index.md b/docs/zengin/worlds/Classes/zCVob/zCTriggerBase/index.md index 8b7c2c801e..25443b9c44 100644 --- a/docs/zengin/worlds/Classes/zCVob/zCTriggerBase/index.md +++ b/docs/zengin/worlds/Classes/zCVob/zCTriggerBase/index.md @@ -17,7 +17,7 @@ The base class for many triggers. === "Gothic 1" - - [zCVob](zCVob.md) + - [zCVob](../index.md) {: .sp-class} - zCTriggerBase {: .sp-class} @@ -26,7 +26,7 @@ The base class for many triggers. === "Gothic 2" - - [zCVob](zCVob.md) + - [zCVob](../index.md) {: .sp-class} - zCTriggerBase {: .sp-class} @@ -35,7 +35,7 @@ The base class for many triggers. === "Gothic 1 (Save)" - - [zCVob](zCVob.md) + - [zCVob](../index.md) {: .sp-class} - zCTriggerBase {: .sp-class} @@ -44,7 +44,7 @@ The base class for many triggers. === "Gothic 2 (Save)" - - [zCVob](zCVob.md) + - [zCVob](../index.md) {: .sp-class} - zCTriggerBase {: .sp-class} diff --git a/docs/zengin/worlds/Classes/zCVob/zCTriggerBase/zCCodeMaster.md b/docs/zengin/worlds/Classes/zCVob/zCTriggerBase/zCCodeMaster.md index 463f86bbfc..beae35a364 100644 --- a/docs/zengin/worlds/Classes/zCVob/zCTriggerBase/zCCodeMaster.md +++ b/docs/zengin/worlds/Classes/zCVob/zCTriggerBase/zCCodeMaster.md @@ -17,9 +17,9 @@ from all slaves, it emits an `OnTrigger` event to the [`triggerTarget`](index.md === "Gothic 1" - - [zCVob](zCVob.md) + - [zCVob](../index.md) {: .sp-class} - - [*zCTriggerBase*](zCTriggerBase.md) + - [*zCTriggerBase*](index.md) {: .sp-class} - zCCodeMaster {: .sp-class} @@ -42,9 +42,9 @@ from all slaves, it emits an `OnTrigger` event to the [`triggerTarget`](index.md === "Gothic 2" - - [zCVob](zCVob.md) + - [zCVob](../index.md) {: .sp-class} - - [*zCTriggerBase*](zCTriggerBase.md) + - [*zCTriggerBase*](index.md) {: .sp-class} - zCCodeMaster {: .sp-class} @@ -67,9 +67,9 @@ from all slaves, it emits an `OnTrigger` event to the [`triggerTarget`](index.md === "Gothic 1 (Save)" - - [zCVob](zCVob.md) + - [zCVob](../index.md) {: .sp-class} - - [*zCTriggerBase*](zCTriggerBase.md) + - [*zCTriggerBase*](index.md) {: .sp-class} - zCCodeMaster {: .sp-class} @@ -92,9 +92,9 @@ from all slaves, it emits an `OnTrigger` event to the [`triggerTarget`](index.md === "Gothic 2 (Save)" - - [zCVob](zCVob.md) + - [zCVob](../index.md) {: .sp-class} - - [*zCTriggerBase*](zCTriggerBase.md) + - [*zCTriggerBase*](index.md) {: .sp-class} - zCCodeMaster {: .sp-class} diff --git a/docs/zengin/worlds/Classes/zCVob/zCTriggerBase/zCMessageFilter.md b/docs/zengin/worlds/Classes/zCVob/zCTriggerBase/zCMessageFilter.md index edb261fbbf..4b1809a442 100644 --- a/docs/zengin/worlds/Classes/zCVob/zCTriggerBase/zCMessageFilter.md +++ b/docs/zengin/worlds/Classes/zCVob/zCTriggerBase/zCMessageFilter.md @@ -18,9 +18,9 @@ in the [`triggerTarget`](index.md#triggertarget). === "Gothic 1" - - [zCVob](zCVob.md) + - [zCVob](../index.md) {: .sp-class} - - [*zCTriggerBase*](zCTriggerBase.md) + - [*zCTriggerBase*](index.md) {: .sp-class} - zCMessageFilter {: .sp-class} @@ -31,9 +31,9 @@ in the [`triggerTarget`](index.md#triggertarget). === "Gothic 2" - - [zCVob](zCVob.md) + - [zCVob](../index.md) {: .sp-class} - - [*zCTriggerBase*](zCTriggerBase.md) + - [*zCTriggerBase*](index.md) {: .sp-class} - zCMessageFilter {: .sp-class} @@ -44,9 +44,9 @@ in the [`triggerTarget`](index.md#triggertarget). === "Gothic 1 (Save)" - - [zCVob](zCVob.md) + - [zCVob](../index.md) {: .sp-class} - - [*zCTriggerBase*](zCTriggerBase.md) + - [*zCTriggerBase*](index.md) {: .sp-class} - zCMessageFilter {: .sp-class} @@ -57,9 +57,9 @@ in the [`triggerTarget`](index.md#triggertarget). === "Gothic 2 (Save)" - - [zCVob](zCVob.md) + - [zCVob](../index.md) {: .sp-class} - - [*zCTriggerBase*](zCTriggerBase.md) + - [*zCTriggerBase*](index.md) {: .sp-class} - zCMessageFilter {: .sp-class} diff --git a/docs/zengin/worlds/Classes/zCVob/zCTriggerBase/zCMoverControler.md b/docs/zengin/worlds/Classes/zCVob/zCTriggerBase/zCMoverControler.md index f7371b2729..062aaf1f87 100644 --- a/docs/zengin/worlds/Classes/zCVob/zCTriggerBase/zCMoverControler.md +++ b/docs/zengin/worlds/Classes/zCVob/zCTriggerBase/zCMoverControler.md @@ -20,9 +20,9 @@ at a time. === "Gothic 1" - - [zCVob](zCVob.md) + - [zCVob](../index.md) {: .sp-class} - - [*zCTriggerBase*](zCTriggerBase.md) + - [*zCTriggerBase*](index.md) {: .sp-class} - zCMoverControler {: .sp-class} @@ -33,9 +33,9 @@ at a time. === "Gothic 2" - - [zCVob](zCVob.md) + - [zCVob](../index.md) {: .sp-class} - - [*zCTriggerBase*](zCTriggerBase.md) + - [*zCTriggerBase*](index.md) {: .sp-class} - zCMoverControler {: .sp-class} @@ -46,9 +46,9 @@ at a time. === "Gothic 1 (Save)" - - [zCVob](zCVob.md) + - [zCVob](../index.md) {: .sp-class} - - [*zCTriggerBase*](zCTriggerBase.md) + - [*zCTriggerBase*](index.md) {: .sp-class} - zCMoverControler {: .sp-class} @@ -59,9 +59,9 @@ at a time. === "Gothic 2 (Save)" - - [zCVob](zCVob.md) + - [zCVob](../index.md) {: .sp-class} - - [*zCTriggerBase*](zCTriggerBase.md) + - [*zCTriggerBase*](index.md) {: .sp-class} - zCMoverControler {: .sp-class} diff --git a/docs/zengin/worlds/Classes/zCVob/zCTriggerBase/zCTrigger/index.md b/docs/zengin/worlds/Classes/zCVob/zCTriggerBase/zCTrigger/index.md index 65f9559764..a3333da6f8 100644 --- a/docs/zengin/worlds/Classes/zCVob/zCTriggerBase/zCTrigger/index.md +++ b/docs/zengin/worlds/Classes/zCVob/zCTriggerBase/zCTrigger/index.md @@ -26,9 +26,9 @@ and disabled by firing `OnEnable`, `OnDisable` and `OnToggleEnabled` events at t === "Gothic 1" - - [zCVob](zCVob.md) + - [zCVob](../../index.md) {: .sp-class} - - [*zCTriggerBase*](zCTriggerBase.md) + - [*zCTriggerBase*](../index.md) {: .sp-class} - zCTrigger {: .sp-class} @@ -67,9 +67,9 @@ and disabled by firing `OnEnable`, `OnDisable` and `OnToggleEnabled` events at t === "Gothic 2" - - [zCVob](zCVob.md) + - [zCVob](../../index.md) {: .sp-class} - - [*zCTriggerBase*](zCTriggerBase.md) + - [*zCTriggerBase*](../index.md) {: .sp-class} - zCTrigger {: .sp-class} @@ -108,9 +108,9 @@ and disabled by firing `OnEnable`, `OnDisable` and `OnToggleEnabled` events at t === "Gothic 1 (Save)" - - [zCVob](zCVob.md) + - [zCVob](../../index.md) {: .sp-class} - - [*zCTriggerBase*](zCTriggerBase.md) + - [*zCTriggerBase*](../index.md) {: .sp-class} - zCTrigger {: .sp-class} @@ -155,9 +155,9 @@ and disabled by firing `OnEnable`, `OnDisable` and `OnToggleEnabled` events at t === "Gothic 2 (Save)" - - [zCVob](zCVob.md) + - [zCVob](../../index.md) {: .sp-class} - - [*zCTriggerBase*](zCTriggerBase.md) + - [*zCTriggerBase*](../index.md) {: .sp-class} - zCTrigger {: .sp-class} diff --git a/docs/zengin/worlds/Classes/zCVob/zCTriggerBase/zCTrigger/oCCSTrigger.md b/docs/zengin/worlds/Classes/zCVob/zCTriggerBase/zCTrigger/oCCSTrigger.md index 180b1905a0..0a06ad4cee 100644 --- a/docs/zengin/worlds/Classes/zCVob/zCTriggerBase/zCTrigger/oCCSTrigger.md +++ b/docs/zengin/worlds/Classes/zCVob/zCTriggerBase/zCTrigger/oCCSTrigger.md @@ -18,11 +18,11 @@ name of the cutscene (without the extension) to be started. For this to work, th === "Gothic 1" - - [zCVob](zCVob.md) + - [zCVob](../../index.md) {: .sp-class} - - [*zCTriggerBase*](zCTriggerBase.md) + - [*zCTriggerBase*](../index.md) {: .sp-class} - - [zCTrigger](zCTrigger.md) + - [zCTrigger](index.md) {: .sp-class} - oCCSTrigger {: .sp-class} @@ -31,11 +31,11 @@ name of the cutscene (without the extension) to be started. For this to work, th === "Gothic 2" - - [zCVob](zCVob.md) + - [zCVob](../../index.md) {: .sp-class} - - [*zCTriggerBase*](zCTriggerBase.md) + - [*zCTriggerBase*](../index.md) {: .sp-class} - - [zCTrigger](zCTrigger.md) + - [zCTrigger](index.md) {: .sp-class} - oCCSTrigger {: .sp-class} @@ -44,11 +44,11 @@ name of the cutscene (without the extension) to be started. For this to work, th === "Gothic 1 (Save)" - - [zCVob](zCVob.md) + - [zCVob](../../index.md) {: .sp-class} - - [*zCTriggerBase*](zCTriggerBase.md) + - [*zCTriggerBase*](../index.md) {: .sp-class} - - [zCTrigger](zCTrigger.md) + - [zCTrigger](index.md) {: .sp-class} - oCCSTrigger {: .sp-class} @@ -57,11 +57,11 @@ name of the cutscene (without the extension) to be started. For this to work, th === "Gothic 2 (Save)" - - [zCVob](zCVob.md) + - [zCVob](../../index.md) {: .sp-class} - - [*zCTriggerBase*](zCTriggerBase.md) + - [*zCTriggerBase*](../index.md) {: .sp-class} - - [zCTrigger](zCTrigger.md) + - [zCTrigger](index.md) {: .sp-class} - oCCSTrigger {: .sp-class} diff --git a/docs/zengin/worlds/Classes/zCVob/zCTriggerBase/zCTrigger/oCTriggerChangeLevel.md b/docs/zengin/worlds/Classes/zCVob/zCTriggerBase/zCTrigger/oCTriggerChangeLevel.md index 69544d989e..edebe26abc 100644 --- a/docs/zengin/worlds/Classes/zCVob/zCTriggerBase/zCTrigger/oCTriggerChangeLevel.md +++ b/docs/zengin/worlds/Classes/zCVob/zCTriggerBase/zCTrigger/oCTriggerChangeLevel.md @@ -16,11 +16,11 @@ to load another level when activated. === "Gothic 1" - - [zCVob](zCVob.md) + - [zCVob](../../index.md) {: .sp-class} - - [*zCTriggerBase*](zCTriggerBase.md) + - [*zCTriggerBase*](../index.md) {: .sp-class} - - [zCTrigger](zCTrigger.md) + - [zCTrigger](index.md) {: .sp-class} - oCTriggerChangeLevel {: .sp-class} @@ -31,11 +31,11 @@ to load another level when activated. === "Gothic 2" - - [zCVob](zCVob.md) + - [zCVob](../../index.md) {: .sp-class} - - [*zCTriggerBase*](zCTriggerBase.md) + - [*zCTriggerBase*](../index.md) {: .sp-class} - - [zCTrigger](zCTrigger.md) + - [zCTrigger](index.md) {: .sp-class} - oCTriggerChangeLevel {: .sp-class} @@ -46,11 +46,11 @@ to load another level when activated. === "Gothic 1 (Save)" - - [zCVob](zCVob.md) + - [zCVob](../../index.md) {: .sp-class} - - [*zCTriggerBase*](zCTriggerBase.md) + - [*zCTriggerBase*](../index.md) {: .sp-class} - - [zCTrigger](zCTrigger.md) + - [zCTrigger](index.md) {: .sp-class} - oCTriggerChangeLevel {: .sp-class} @@ -61,11 +61,11 @@ to load another level when activated. === "Gothic 2 (Save)" - - [zCVob](zCVob.md) + - [zCVob](../../index.md) {: .sp-class} - - [*zCTriggerBase*](zCTriggerBase.md) + - [*zCTriggerBase*](../index.md) {: .sp-class} - - [zCTrigger](zCTrigger.md) + - [zCTrigger](index.md) {: .sp-class} - oCTriggerChangeLevel {: .sp-class} diff --git a/docs/zengin/worlds/Classes/zCVob/zCTriggerBase/zCTrigger/oCTriggerScript.md b/docs/zengin/worlds/Classes/zCVob/zCTriggerBase/zCTrigger/oCTriggerScript.md index be59963141..3d43c97271 100644 --- a/docs/zengin/worlds/Classes/zCVob/zCTriggerBase/zCTrigger/oCTriggerScript.md +++ b/docs/zengin/worlds/Classes/zCVob/zCTriggerBase/zCTrigger/oCTriggerScript.md @@ -16,11 +16,11 @@ function when the trigger is activated. `OnUntrigger` events do not result in th === "Gothic 1" - - [zCVob](zCVob.md) + - [zCVob](../../index.md) {: .sp-class} - - [*zCTriggerBase*](zCTriggerBase.md) + - [*zCTriggerBase*](../index.md) {: .sp-class} - - [zCTrigger](zCTrigger.md) + - [zCTrigger](index.md) {: .sp-class} - oCTriggerScript {: .sp-class} @@ -29,11 +29,11 @@ function when the trigger is activated. `OnUntrigger` events do not result in th === "Gothic 2" - - [zCVob](zCVob.md) + - [zCVob](../../index.md) {: .sp-class} - - [*zCTriggerBase*](zCTriggerBase.md) + - [*zCTriggerBase*](../index.md) {: .sp-class} - - [zCTrigger](zCTrigger.md) + - [zCTrigger](index.md) {: .sp-class} - oCTriggerScript {: .sp-class} @@ -42,11 +42,11 @@ function when the trigger is activated. `OnUntrigger` events do not result in th === "Gothic 1 (Save)" - - [zCVob](zCVob.md) + - [zCVob](../../index.md) {: .sp-class} - - [*zCTriggerBase*](zCTriggerBase.md) + - [*zCTriggerBase*](../index.md) {: .sp-class} - - [zCTrigger](zCTrigger.md) + - [zCTrigger](index.md) {: .sp-class} - oCTriggerScript {: .sp-class} @@ -55,11 +55,11 @@ function when the trigger is activated. `OnUntrigger` events do not result in th === "Gothic 2 (Save)" - - [zCVob](zCVob.md) + - [zCVob](../../index.md) {: .sp-class} - - [*zCTriggerBase*](zCTriggerBase.md) + - [*zCTriggerBase*](../index.md) {: .sp-class} - - [zCTrigger](zCTrigger.md) + - [zCTrigger](index.md) {: .sp-class} - oCTriggerScript {: .sp-class} diff --git a/docs/zengin/worlds/Classes/zCVob/zCTriggerBase/zCTrigger/zCMover.md b/docs/zengin/worlds/Classes/zCVob/zCTriggerBase/zCTrigger/zCMover.md index 3a6d8734a9..a7ff2330af 100644 --- a/docs/zengin/worlds/Classes/zCVob/zCTriggerBase/zCTrigger/zCMover.md +++ b/docs/zengin/worlds/Classes/zCVob/zCTriggerBase/zCTrigger/zCMover.md @@ -34,11 +34,11 @@ Movers can be enabled and disabled using the `OnEnable`, `OnDisable` and `OnTogg === "Gothic 1" - - [zCVob](zCVob.md) + - [zCVob](../../index.md) {: .sp-class} - - [*zCTriggerBase*](zCTriggerBase.md) + - [*zCTriggerBase*](../index.md) {: .sp-class} - - [zCTrigger](zCTrigger.md) + - [zCTrigger](index.md) {: .sp-class} - zCMover {: .sp-class} @@ -85,11 +85,11 @@ Movers can be enabled and disabled using the `OnEnable`, `OnDisable` and `OnTogg === "Gothic 2" - - [zCVob](zCVob.md) + - [zCVob](../../index.md) {: .sp-class} - - [*zCTriggerBase*](zCTriggerBase.md) + - [*zCTriggerBase*](../index.md) {: .sp-class} - - [zCTrigger](zCTrigger.md) + - [zCTrigger](index.md) {: .sp-class} - zCMover {: .sp-class} @@ -138,11 +138,11 @@ Movers can be enabled and disabled using the `OnEnable`, `OnDisable` and `OnTogg === "Gothic 1 (Save)" - - [zCVob](zCVob.md) + - [zCVob](../../index.md) {: .sp-class} - - [*zCTriggerBase*](zCTriggerBase.md) + - [*zCTriggerBase*](../index.md) {: .sp-class} - - [zCTrigger](zCTrigger.md) + - [zCTrigger](index.md) {: .sp-class} - zCMover {: .sp-class} @@ -207,11 +207,11 @@ Movers can be enabled and disabled using the `OnEnable`, `OnDisable` and `OnTogg === "Gothic 2 (Save)" - - [zCVob](zCVob.md) + - [zCVob](../../index.md) {: .sp-class} - - [*zCTriggerBase*](zCTriggerBase.md) + - [*zCTriggerBase*](../index.md) {: .sp-class} - - [zCTrigger](zCTrigger.md) + - [zCTrigger](index.md) {: .sp-class} - zCMover {: .sp-class} diff --git a/docs/zengin/worlds/Classes/zCVob/zCTriggerBase/zCTrigger/zCTriggerList.md b/docs/zengin/worlds/Classes/zCVob/zCTriggerBase/zCTrigger/zCTriggerList.md index 80ad9322e7..7f2c89e3e1 100644 --- a/docs/zengin/worlds/Classes/zCVob/zCTriggerBase/zCTrigger/zCTriggerList.md +++ b/docs/zengin/worlds/Classes/zCVob/zCTriggerBase/zCTrigger/zCTriggerList.md @@ -21,11 +21,11 @@ How the events are sent can be configured through [`listProcess`](#listprocess). === "Gothic 1" - - [zCVob](zCVob.md) + - [zCVob](../../index.md) {: .sp-class} - - [*zCTriggerBase*](zCTriggerBase.md) + - [*zCTriggerBase*](../index.md) {: .sp-class} - - [zCTrigger](zCTrigger.md) + - [zCTrigger](index.md) {: .sp-class} - zCTriggerList {: .sp-class} @@ -48,11 +48,11 @@ How the events are sent can be configured through [`listProcess`](#listprocess). === "Gothic 2" - - [zCVob](zCVob.md) + - [zCVob](../../index.md) {: .sp-class} - - [*zCTriggerBase*](zCTriggerBase.md) + - [*zCTriggerBase*](../index.md) {: .sp-class} - - [zCTrigger](zCTrigger.md) + - [zCTrigger](index.md) {: .sp-class} - zCTriggerList {: .sp-class} @@ -75,11 +75,11 @@ How the events are sent can be configured through [`listProcess`](#listprocess). === "Gothic 1 (Save)" - - [zCVob](zCVob.md) + - [zCVob](../../index.md) {: .sp-class} - - [*zCTriggerBase*](zCTriggerBase.md) + - [*zCTriggerBase*](../index.md) {: .sp-class} - - [zCTrigger](zCTrigger.md) + - [zCTrigger](index.md) {: .sp-class} - zCTriggerList {: .sp-class} @@ -106,11 +106,11 @@ How the events are sent can be configured through [`listProcess`](#listprocess). === "Gothic 2 (Save)" - - [zCVob](zCVob.md) + - [zCVob](../../index.md) {: .sp-class} - - [*zCTriggerBase*](zCTriggerBase.md) + - [*zCTriggerBase*](../index.md) {: .sp-class} - - [zCTrigger](zCTrigger.md) + - [zCTrigger](index.md) {: .sp-class} - zCTriggerList {: .sp-class} diff --git a/docs/zengin/worlds/Classes/zCVob/zCTriggerBase/zCTriggerUntouch.md b/docs/zengin/worlds/Classes/zCVob/zCTriggerBase/zCTriggerUntouch.md index 8457cbfcd2..2ec4133377 100644 --- a/docs/zengin/worlds/Classes/zCVob/zCTriggerBase/zCTriggerUntouch.md +++ b/docs/zengin/worlds/Classes/zCVob/zCTriggerBase/zCTriggerUntouch.md @@ -16,9 +16,9 @@ event is emitted from an inanimate object within the object's bounding box. === "Gothic 1" - - [zCVob](zCVob.md) + - [zCVob](../index.md) {: .sp-class} - - [*zCTriggerBase*](zCTriggerBase.md) + - [*zCTriggerBase*](index.md) {: .sp-class} - zCTriggerUntouch {: .sp-class} @@ -27,9 +27,9 @@ event is emitted from an inanimate object within the object's bounding box. === "Gothic 2" - - [zCVob](zCVob.md) + - [zCVob](../index.md) {: .sp-class} - - [*zCTriggerBase*](zCTriggerBase.md) + - [*zCTriggerBase*](index.md) {: .sp-class} - zCTriggerUntouch {: .sp-class} @@ -38,9 +38,9 @@ event is emitted from an inanimate object within the object's bounding box. === "Gothic 1 (Save)" - - [zCVob](zCVob.md) + - [zCVob](../index.md) {: .sp-class} - - [*zCTriggerBase*](zCTriggerBase.md) + - [*zCTriggerBase*](index.md) {: .sp-class} - zCTriggerUntouch {: .sp-class} @@ -49,9 +49,9 @@ event is emitted from an inanimate object within the object's bounding box. === "Gothic 2 (Save)" - - [zCVob](zCVob.md) + - [zCVob](../index.md) {: .sp-class} - - [*zCTriggerBase*](zCTriggerBase.md) + - [*zCTriggerBase*](index.md) {: .sp-class} - zCTriggerUntouch {: .sp-class} diff --git a/docs/zengin/worlds/Classes/zCVob/zCTriggerBase/zCTriggerWorldStart.md b/docs/zengin/worlds/Classes/zCVob/zCTriggerBase/zCTriggerWorldStart.md index ad4f61841f..0923e00c7a 100644 --- a/docs/zengin/worlds/Classes/zCVob/zCTriggerBase/zCTriggerWorldStart.md +++ b/docs/zengin/worlds/Classes/zCVob/zCTriggerBase/zCTriggerWorldStart.md @@ -16,9 +16,9 @@ world is loaded and started. === "Gothic 1" - - [zCVob](zCVob.md) + - [zCVob](../index.md) {: .sp-class} - - [*zCTriggerBase*](zCTriggerBase.md) + - [*zCTriggerBase*](index.md) {: .sp-class} - zCTriggerWorldStart {: .sp-class} @@ -27,9 +27,9 @@ world is loaded and started. === "Gothic 2" - - [zCVob](zCVob.md) + - [zCVob](../index.md) {: .sp-class} - - [*zCTriggerBase*](zCTriggerBase.md) + - [*zCTriggerBase*](index.md) {: .sp-class} - zCTriggerWorldStart {: .sp-class} @@ -38,9 +38,9 @@ world is loaded and started. === "Gothic 1 (Save)" - - [zCVob](zCVob.md) + - [zCVob](../index.md) {: .sp-class} - - [*zCTriggerBase*](zCTriggerBase.md) + - [*zCTriggerBase*](index.md) {: .sp-class} - zCTriggerWorldStart {: .sp-class} @@ -49,9 +49,9 @@ world is loaded and started. === "Gothic 2 (Save)" - - [zCVob](zCVob.md) + - [zCVob](../index.md) {: .sp-class} - - [*zCTriggerBase*](zCTriggerBase.md) + - [*zCTriggerBase*](index.md) {: .sp-class} - zCTriggerWorldStart {: .sp-class} diff --git a/docs/zengin/worlds/Classes/zCVob/zCVobLevelCompo.md b/docs/zengin/worlds/Classes/zCVob/zCVobLevelCompo.md index 7927f957e6..84b609d119 100644 --- a/docs/zengin/worlds/Classes/zCVob/zCVobLevelCompo.md +++ b/docs/zengin/worlds/Classes/zCVob/zCVobLevelCompo.md @@ -18,7 +18,7 @@ has no relevance to other VObjects in the hierarchy. === "Gothic 1" - - [zCVob](zCVob.md) + - [zCVob](index.md) {: .sp-class} - zCVobLevelCompo {: .sp-class} @@ -27,7 +27,7 @@ has no relevance to other VObjects in the hierarchy. === "Gothic 2" - - [zCVob](zCVob.md) + - [zCVob](index.md) {: .sp-class} - zCVobLevelCompo {: .sp-class} @@ -36,7 +36,7 @@ has no relevance to other VObjects in the hierarchy. === "Gothic 1 (Save)" - - [zCVob](zCVob.md) + - [zCVob](index.md) {: .sp-class} - zCVobLevelCompo {: .sp-class} @@ -45,7 +45,7 @@ has no relevance to other VObjects in the hierarchy. === "Gothic 2 (Save)" - - [zCVob](zCVob.md) + - [zCVob](index.md) {: .sp-class} - zCVobLevelCompo {: .sp-class} diff --git a/docs/zengin/worlds/Classes/zCVob/zCVobLight.md b/docs/zengin/worlds/Classes/zCVob/zCVobLight.md index 44a139bd6d..3707b27959 100644 --- a/docs/zengin/worlds/Classes/zCVob/zCVobLight.md +++ b/docs/zengin/worlds/Classes/zCVob/zCVobLight.md @@ -21,7 +21,7 @@ may be animated with different colors and ranges. === "Gothic 1" - - [zCVob](zCVob.md) + - [zCVob](index.md) {: .sp-class} - zCVobLight {: .sp-class} @@ -62,7 +62,7 @@ may be animated with different colors and ranges. === "Gothic 2" - - [zCVob](zCVob.md) + - [zCVob](index.md) {: .sp-class} - zCVobLight {: .sp-class} @@ -105,7 +105,7 @@ may be animated with different colors and ranges. === "Gothic 1 (Save)" - - [zCVob](zCVob.md) + - [zCVob](index.md) {: .sp-class} - zCVobLight {: .sp-class} @@ -146,7 +146,7 @@ may be animated with different colors and ranges. === "Gothic 2 (Save)" - - [zCVob](zCVob.md) + - [zCVob](index.md) {: .sp-class} - zCVobLight {: .sp-class} diff --git a/docs/zengin/worlds/Classes/zCVob/zCVobSound/index.md b/docs/zengin/worlds/Classes/zCVob/zCVobSound/index.md index ebd4528380..b11f2b83a9 100644 --- a/docs/zengin/worlds/Classes/zCVob/zCVobSound/index.md +++ b/docs/zengin/worlds/Classes/zCVob/zCVobSound/index.md @@ -17,7 +17,7 @@ Emits a sound defined by a script instance in a given radius. The sound playback === "Gothic 1" - - [zCVob](zCVob.md) + - [zCVob](../index.md) {: .sp-class} - zCVobSound {: .sp-class} @@ -48,7 +48,7 @@ Emits a sound defined by a script instance in a given radius. The sound playback === "Gothic 2" - - [zCVob](zCVob.md) + - [zCVob](../index.md) {: .sp-class} - zCVobSound {: .sp-class} @@ -79,7 +79,7 @@ Emits a sound defined by a script instance in a given radius. The sound playback === "Gothic 1 (Save)" - - [zCVob](zCVob.md) + - [zCVob](../index.md) {: .sp-class} - zCVobSound {: .sp-class} @@ -114,7 +114,7 @@ Emits a sound defined by a script instance in a given radius. The sound playback === "Gothic 2 (Save)" - - [zCVob](zCVob.md) + - [zCVob](../index.md) {: .sp-class} - zCVobSound {: .sp-class} diff --git a/docs/zengin/worlds/Classes/zCVob/zCVobSound/zCVobSoundDaytime.md b/docs/zengin/worlds/Classes/zCVob/zCVobSound/zCVobSoundDaytime.md index c1fcb3a979..05548688d9 100644 --- a/docs/zengin/worlds/Classes/zCVob/zCVobSound/zCVobSoundDaytime.md +++ b/docs/zengin/worlds/Classes/zCVob/zCVobSound/zCVobSoundDaytime.md @@ -17,9 +17,9 @@ sound can be defined which is played outside the defined time range (example: bi === "Gothic 1" - - [zCVob](zCVob.md) + - [zCVob](../index.md) {: .sp-class} - - [zCVobSound](zCVobSound.md) + - [zCVobSound](index.md) {: .sp-class} - zCVobSoundDaytime {: .sp-class} @@ -34,9 +34,9 @@ sound can be defined which is played outside the defined time range (example: bi === "Gothic 2" - - [zCVob](zCVob.md) + - [zCVob](../index.md) {: .sp-class} - - [zCVobSound](zCVobSound.md) + - [zCVobSound](index.md) {: .sp-class} - zCVobSoundDaytime {: .sp-class} @@ -51,9 +51,9 @@ sound can be defined which is played outside the defined time range (example: bi === "Gothic 1 (Save)" - - [zCVob](zCVob.md) + - [zCVob](../index.md) {: .sp-class} - - [zCVobSound](zCVobSound.md) + - [zCVobSound](index.md) {: .sp-class} - zCVobSoundDaytime {: .sp-class} @@ -68,9 +68,9 @@ sound can be defined which is played outside the defined time range (example: bi === "Gothic 2 (Save)" - - [zCVob](zCVob.md) + - [zCVob](../index.md) {: .sp-class} - - [zCVobSound](zCVobSound.md) + - [zCVobSound](index.md) {: .sp-class} - zCVobSoundDaytime {: .sp-class} diff --git a/docs/zengin/worlds/Classes/zCVob/zCVobSpot.md b/docs/zengin/worlds/Classes/zCVob/zCVobSpot.md index 1ff7fc2fd6..c9732dbdb4 100644 --- a/docs/zengin/worlds/Classes/zCVob/zCVobSpot.md +++ b/docs/zengin/worlds/Classes/zCVob/zCVobSpot.md @@ -18,7 +18,7 @@ free points and can be used in scripts to spawn other objects at their location. === "Gothic 1" - - [zCVob](zCVob.md) + - [zCVob](index.md) {: .sp-class} - zCVobSpot {: .sp-class} @@ -27,7 +27,7 @@ free points and can be used in scripts to spawn other objects at their location. === "Gothic 2" - - [zCVob](zCVob.md) + - [zCVob](index.md) {: .sp-class} - zCVobSpot {: .sp-class} @@ -36,7 +36,7 @@ free points and can be used in scripts to spawn other objects at their location. === "Gothic 1 (Save)" - - [zCVob](zCVob.md) + - [zCVob](index.md) {: .sp-class} - zCVobSpot {: .sp-class} @@ -45,7 +45,7 @@ free points and can be used in scripts to spawn other objects at their location. === "Gothic 2 (Save)" - - [zCVob](zCVob.md) + - [zCVob](index.md) {: .sp-class} - zCVobSpot {: .sp-class} diff --git a/docs/zengin/worlds/Classes/zCVob/zCVobStair.md b/docs/zengin/worlds/Classes/zCVob/zCVobStair.md index bc7d054d5c..9e74dc2073 100644 --- a/docs/zengin/worlds/Classes/zCVob/zCVobStair.md +++ b/docs/zengin/worlds/Classes/zCVob/zCVobStair.md @@ -21,7 +21,7 @@ routines to properly ascend and descend staircases. === "Gothic 1" - - [zCVob](zCVob.md) + - [zCVob](index.md) {: .sp-class} - zCVobStair {: .sp-class} @@ -34,7 +34,7 @@ routines to properly ascend and descend staircases. === "Gothic 1 (Save)" - - [zCVob](zCVob.md) + - [zCVob](index.md) {: .sp-class} - zCVobStair {: .sp-class} diff --git a/docs/zengin/worlds/Classes/zCVob/zCVobStartpoint.md b/docs/zengin/worlds/Classes/zCVob/zCVobStartpoint.md index 2572512324..ce0b1da2ff 100644 --- a/docs/zengin/worlds/Classes/zCVob/zCVobStartpoint.md +++ b/docs/zengin/worlds/Classes/zCVob/zCVobStartpoint.md @@ -17,7 +17,7 @@ the game to put the player at its location and in its orientation when the world === "Gothic 1" - - [zCVob](zCVob.md) + - [zCVob](index.md) {: .sp-class} - zCVobStartpoint {: .sp-class} @@ -26,7 +26,7 @@ the game to put the player at its location and in its orientation when the world === "Gothic 2" - - [zCVob](zCVob.md) + - [zCVob](index.md) {: .sp-class} - zCVobStartpoint {: .sp-class} @@ -35,7 +35,7 @@ the game to put the player at its location and in its orientation when the world === "Gothic 1 (Save)" - - [zCVob](zCVob.md) + - [zCVob](index.md) {: .sp-class} - zCVobStartpoint {: .sp-class} @@ -44,7 +44,7 @@ the game to put the player at its location and in its orientation when the world === "Gothic 2 (Save)" - - [zCVob](zCVob.md) + - [zCVob](index.md) {: .sp-class} - zCVobStartpoint {: .sp-class} diff --git a/docs/zengin/worlds/Classes/zCVob/zCZoneVobFarPlane/index.md b/docs/zengin/worlds/Classes/zCVob/zCZoneVobFarPlane/index.md index e9b50d3476..055a7a6ef2 100644 --- a/docs/zengin/worlds/Classes/zCVob/zCZoneVobFarPlane/index.md +++ b/docs/zengin/worlds/Classes/zCVob/zCZoneVobFarPlane/index.md @@ -15,7 +15,7 @@ A VObject which defines the loading range of VObjects within its bounding box. === "Gothic 1" - - [zCVob](zCVob.md) + - [zCVob](../index.md) {: .sp-class} - zCZoneVobFarPlane {: .sp-class} @@ -26,7 +26,7 @@ A VObject which defines the loading range of VObjects within its bounding box. === "Gothic 2" - - [zCVob](zCVob.md) + - [zCVob](../index.md) {: .sp-class} - zCZoneVobFarPlane {: .sp-class} @@ -37,7 +37,7 @@ A VObject which defines the loading range of VObjects within its bounding box. === "Gothic 1 (Save)" - - [zCVob](zCVob.md) + - [zCVob](../index.md) {: .sp-class} - zCZoneVobFarPlane {: .sp-class} @@ -48,7 +48,7 @@ A VObject which defines the loading range of VObjects within its bounding box. === "Gothic 2 (Save)" - - [zCVob](zCVob.md) + - [zCVob](../index.md) {: .sp-class} - zCZoneVobFarPlane {: .sp-class} diff --git a/docs/zengin/worlds/Classes/zCVob/zCZoneVobFarPlane/zCZoneVobFarPlaneDefault.md b/docs/zengin/worlds/Classes/zCVob/zCZoneVobFarPlane/zCZoneVobFarPlaneDefault.md index 704cf1453b..31e9532c72 100644 --- a/docs/zengin/worlds/Classes/zCVob/zCZoneVobFarPlane/zCZoneVobFarPlaneDefault.md +++ b/docs/zengin/worlds/Classes/zCVob/zCZoneVobFarPlane/zCZoneVobFarPlaneDefault.md @@ -17,9 +17,9 @@ objects in each world. Its effect can be overridden using [zCZoneVobFarPlane](in === "Gothic 1" - - [zCVob](zCVob.md) + - [zCVob](../index.md) {: .sp-class} - - [zCZoneVobFarPlane](zCZoneVobFarPlane.md) + - [zCZoneVobFarPlane](index.md) {: .sp-class} - zCZoneVobFarPlane {: .sp-class} @@ -28,9 +28,9 @@ objects in each world. Its effect can be overridden using [zCZoneVobFarPlane](in === "Gothic 2" - - [zCVob](zCVob.md) + - [zCVob](../index.md) {: .sp-class} - - [zCZoneVobFarPlane](zCZoneVobFarPlane.md) + - [zCZoneVobFarPlane](index.md) {: .sp-class} - zCZoneVobFarPlane {: .sp-class} @@ -39,9 +39,9 @@ objects in each world. Its effect can be overridden using [zCZoneVobFarPlane](in === "Gothic 1 (Save)" - - [zCVob](zCVob.md) + - [zCVob](../index.md) {: .sp-class} - - [zCZoneVobFarPlane](zCZoneVobFarPlane.md) + - [zCZoneVobFarPlane](index.md) {: .sp-class} - zCZoneVobFarPlane {: .sp-class} @@ -50,9 +50,9 @@ objects in each world. Its effect can be overridden using [zCZoneVobFarPlane](in === "Gothic 2 (Save)" - - [zCVob](zCVob.md) + - [zCVob](../index.md) {: .sp-class} - - [zCZoneVobFarPlane](zCZoneVobFarPlane.md) + - [zCZoneVobFarPlane](index.md) {: .sp-class} - zCZoneVobFarPlane {: .sp-class} diff --git a/docs/zengin/worlds/Classes/zCVob/zCZoneZFog/index.md b/docs/zengin/worlds/Classes/zCVob/zCZoneZFog/index.md index e2e806921d..05a634e35d 100644 --- a/docs/zengin/worlds/Classes/zCVob/zCZoneZFog/index.md +++ b/docs/zengin/worlds/Classes/zCVob/zCZoneZFog/index.md @@ -15,7 +15,7 @@ A VObject which causes fog to appear within its bounding box. === "Gothic 1" - - [zCVob](zCVob.md) + - [zCVob](../index.md) {: .sp-class} - zCZoneZFog {: .sp-class} @@ -30,7 +30,7 @@ A VObject which causes fog to appear within its bounding box. === "Gothic 2" - - [zCVob](zCVob.md) + - [zCVob](../index.md) {: .sp-class} - zCZoneZFog {: .sp-class} @@ -49,7 +49,7 @@ A VObject which causes fog to appear within its bounding box. === "Gothic 1 (Save)" - - [zCVob](zCVob.md) + - [zCVob](../index.md) {: .sp-class} - zCZoneZFog {: .sp-class} @@ -64,7 +64,7 @@ A VObject which causes fog to appear within its bounding box. === "Gothic 2 (Save)" - - [zCVob](zCVob.md) + - [zCVob](../index.md) {: .sp-class} - zCZoneZFog {: .sp-class} diff --git a/docs/zengin/worlds/Classes/zCVob/zCZoneZFog/zCZoneZFogDefault.md b/docs/zengin/worlds/Classes/zCVob/zCZoneZFog/zCZoneZFogDefault.md index b2a9331a06..98ca0709a5 100644 --- a/docs/zengin/worlds/Classes/zCVob/zCZoneZFog/zCZoneZFogDefault.md +++ b/docs/zengin/worlds/Classes/zCVob/zCZoneZFog/zCZoneZFogDefault.md @@ -16,9 +16,9 @@ Its effect can be overridden using [zCZoneZFog](index.md) objects. === "Gothic 1" - - [zCVob](zCVob.md) + - [zCVob](../index.md) {: .sp-class} - - [zCZoneZFog](zCZoneZFog.md) + - [zCZoneZFog](index.md) {: .sp-class} - zCZoneZFogDefault {: .sp-class} @@ -27,9 +27,9 @@ Its effect can be overridden using [zCZoneZFog](index.md) objects. === "Gothic 2" - - [zCVob](zCVob.md) + - [zCVob](../index.md) {: .sp-class} - - [zCZoneZFog](zCZoneZFog.md) + - [zCZoneZFog](index.md) {: .sp-class} - zCZoneZFogDefault {: .sp-class} @@ -38,9 +38,9 @@ Its effect can be overridden using [zCZoneZFog](index.md) objects. === "Gothic 1 (Save)" - - [zCVob](zCVob.md) + - [zCVob](../index.md) {: .sp-class} - - [zCZoneZFog](zCZoneZFog.md) + - [zCZoneZFog](index.md) {: .sp-class} - zCZoneZFogDefault {: .sp-class} @@ -49,9 +49,9 @@ Its effect can be overridden using [zCZoneZFog](index.md) objects. === "Gothic 2 (Save)" - - [zCVob](zCVob.md) + - [zCVob](../index.md) {: .sp-class} - - [zCZoneZFog](zCZoneZFog.md) + - [zCZoneZFog](index.md) {: .sp-class} - zCZoneZFogDefault {: .sp-class} From 5ac4c19f57a8f00a2efa45d534e67e1175c30e32 Mon Sep 17 00:00:00 2001 From: Luis Michaelis Date: Sat, 24 Feb 2024 09:12:10 +0100 Subject: [PATCH 61/61] Add the abstract `zCZone` --- .../worlds/Classes/zCVob/zCZone/index.md | 52 +++++++++++++++++++ .../zCVob/{ => zCZone}/oCZoneMusic/index.md | 18 +++++-- .../oCZoneMusic/oCZoneMusicDefault.md | 16 ++++-- .../zCVob/{ => zCZone}/zCVobSound/index.md | 16 ++++-- .../zCVobSound/zCVobSoundDaytime.md | 16 ++++-- .../{ => zCZone}/zCZoneVobFarPlane/index.md | 16 ++++-- .../zCZoneVobFarPlaneDefault.md | 16 ++++-- .../zCVob/{ => zCZone}/zCZoneZFog/index.md | 16 ++++-- .../zCZoneZFog/zCZoneZFogDefault.md | 16 ++++-- 9 files changed, 148 insertions(+), 34 deletions(-) create mode 100644 docs/zengin/worlds/Classes/zCVob/zCZone/index.md rename docs/zengin/worlds/Classes/zCVob/{ => zCZone}/oCZoneMusic/index.md (92%) rename docs/zengin/worlds/Classes/zCVob/{ => zCZone}/oCZoneMusic/oCZoneMusicDefault.md (81%) rename docs/zengin/worlds/Classes/zCVob/{ => zCZone}/zCVobSound/index.md (95%) rename docs/zengin/worlds/Classes/zCVob/{ => zCZone}/zCVobSound/zCVobSoundDaytime.md (90%) rename docs/zengin/worlds/Classes/zCVob/{ => zCZone}/zCZoneVobFarPlane/index.md (83%) rename docs/zengin/worlds/Classes/zCVob/{ => zCZone}/zCZoneVobFarPlane/zCZoneVobFarPlaneDefault.md (82%) rename docs/zengin/worlds/Classes/zCVob/{ => zCZone}/zCZoneZFog/index.md (90%) rename docs/zengin/worlds/Classes/zCVob/{ => zCZone}/zCZoneZFog/zCZoneZFogDefault.md (80%) diff --git a/docs/zengin/worlds/Classes/zCVob/zCZone/index.md b/docs/zengin/worlds/Classes/zCVob/zCZone/index.md new file mode 100644 index 0000000000..4a326afa10 --- /dev/null +++ b/docs/zengin/worlds/Classes/zCVob/zCZone/index.md @@ -0,0 +1,52 @@ +# zCZone + +!!! abstract inline end "Quick Infos" + **Class Name:** `zCZone`
+ **Version Identifiers:**
+ — Gothic I: `12289`
+ — Gothic II: `52224`
+ **Sources:**
+ — [zk.gothickit.dev](https://zk.gothickit.dev/engine/objects/zCZone/) + +The base class for effect zones. + +!!! warning + This object is an abstract base class and cannot be instantiated by itself. + +## Class members + +=== "Gothic 1" + + - [zCVob](../index.md) + {: .sp-class} + - zCZone + {: .sp-class} + - <empty> + {: .sp-empty} + +=== "Gothic 2" + + - [zCVob](../index.md) + {: .sp-class} + - zCZone + {: .sp-class} + - <empty> + {: .sp-empty} + +=== "Gothic 1 (Save)" + + - [zCVob](../index.md) + {: .sp-class} + - zCZone + {: .sp-class} + - <empty> + {: .sp-empty} + +=== "Gothic 2 (Save)" + + - [zCVob](../index.md) + {: .sp-class} + - zCZone + {: .sp-class} + - <empty> + {: .sp-empty} diff --git a/docs/zengin/worlds/Classes/zCVob/oCZoneMusic/index.md b/docs/zengin/worlds/Classes/zCVob/zCZone/oCZoneMusic/index.md similarity index 92% rename from docs/zengin/worlds/Classes/zCVob/oCZoneMusic/index.md rename to docs/zengin/worlds/Classes/zCVob/zCZone/oCZoneMusic/index.md index 2af299a37e..7cb69e17fa 100644 --- a/docs/zengin/worlds/Classes/zCVob/oCZoneMusic/index.md +++ b/docs/zengin/worlds/Classes/zCVob/zCZone/oCZoneMusic/index.md @@ -15,7 +15,7 @@ A VObject which defines the music to be played within its bounding box. Music zo music zone applies. If no music zone applies the music defined in the optional [`oCZoneMusicDefault`](oCZoneMusicDefault.md) is used. -The name of the music theme to be played is defined by the [`vobName`](../index.md#vobname). +The name of the music theme to be played is defined by the [`vobName`](../../index.md#vobname). !!! tip If the suffix `_NCI` or `_NCO` is added to the end of the zone name, it snows instead of rains in the zone. @@ -24,7 +24,9 @@ The name of the music theme to be played is defined by the [`vobName`](../index. === "Gothic 1" - - [zCVob](../index.md) + - [zCVob](../../index.md) + {: .sp-class} + - [*zCZone*](../index.md) {: .sp-class} - oCZoneMusic {: .sp-class} @@ -43,7 +45,9 @@ The name of the music theme to be played is defined by the [`vobName`](../index. === "Gothic 2" - - [zCVob](../index.md) + - [zCVob](../../index.md) + {: .sp-class} + - [*zCZone*](../index.md) {: .sp-class} - oCZoneMusic {: .sp-class} @@ -62,7 +66,9 @@ The name of the music theme to be played is defined by the [`vobName`](../index. === "Gothic 1 (Save)" - - [zCVob](../index.md) + - [zCVob](../../index.md) + {: .sp-class} + - [*zCZone*](../index.md) {: .sp-class} - oCZoneMusic {: .sp-class} @@ -87,7 +93,9 @@ The name of the music theme to be played is defined by the [`vobName`](../index. === "Gothic 2 (Save)" - - [zCVob](../index.md) + - [zCVob](../../index.md) + {: .sp-class} + - [*zCZone*](../index.md) {: .sp-class} - oCZoneMusic {: .sp-class} diff --git a/docs/zengin/worlds/Classes/zCVob/oCZoneMusic/oCZoneMusicDefault.md b/docs/zengin/worlds/Classes/zCVob/zCZone/oCZoneMusic/oCZoneMusicDefault.md similarity index 81% rename from docs/zengin/worlds/Classes/zCVob/oCZoneMusic/oCZoneMusicDefault.md rename to docs/zengin/worlds/Classes/zCVob/zCZone/oCZoneMusic/oCZoneMusicDefault.md index fa3a321c67..0039ebfb14 100644 --- a/docs/zengin/worlds/Classes/zCVob/oCZoneMusic/oCZoneMusicDefault.md +++ b/docs/zengin/worlds/Classes/zCVob/zCZone/oCZoneMusic/oCZoneMusicDefault.md @@ -16,7 +16,9 @@ volume-related options of the zone are ignored. There may only be one `oCZoneMus === "Gothic 1" - - [zCVob](../index.md) + - [zCVob](../../index.md) + {: .sp-class} + - [*zCZone*](../index.md) {: .sp-class} - [oCZoneMusic](index.md) {: .sp-class} @@ -27,7 +29,9 @@ volume-related options of the zone are ignored. There may only be one `oCZoneMus === "Gothic 2" - - [zCVob](../index.md) + - [zCVob](../../index.md) + {: .sp-class} + - [*zCZone*](../index.md) {: .sp-class} - [oCZoneMusic](index.md) {: .sp-class} @@ -38,7 +42,9 @@ volume-related options of the zone are ignored. There may only be one `oCZoneMus === "Gothic 1 (Save)" - - [zCVob](../index.md) + - [zCVob](../../index.md) + {: .sp-class} + - [*zCZone*](../index.md) {: .sp-class} - [oCZoneMusic](index.md) {: .sp-class} @@ -49,7 +55,9 @@ volume-related options of the zone are ignored. There may only be one `oCZoneMus === "Gothic 2 (Save)" - - [zCVob](../index.md) + - [zCVob](../../index.md) + {: .sp-class} + - [*zCZone*](../index.md) {: .sp-class} - [oCZoneMusic](index.md) {: .sp-class} diff --git a/docs/zengin/worlds/Classes/zCVob/zCVobSound/index.md b/docs/zengin/worlds/Classes/zCVob/zCZone/zCVobSound/index.md similarity index 95% rename from docs/zengin/worlds/Classes/zCVob/zCVobSound/index.md rename to docs/zengin/worlds/Classes/zCVob/zCZone/zCVobSound/index.md index b11f2b83a9..37241122fd 100644 --- a/docs/zengin/worlds/Classes/zCVob/zCVobSound/index.md +++ b/docs/zengin/worlds/Classes/zCVob/zCZone/zCVobSound/index.md @@ -17,7 +17,9 @@ Emits a sound defined by a script instance in a given radius. The sound playback === "Gothic 1" - - [zCVob](../index.md) + - [zCVob](../../index.md) + {: .sp-class} + - [*zCZone*](../index.md) {: .sp-class} - zCVobSound {: .sp-class} @@ -48,7 +50,9 @@ Emits a sound defined by a script instance in a given radius. The sound playback === "Gothic 2" - - [zCVob](../index.md) + - [zCVob](../../index.md) + {: .sp-class} + - [*zCZone*](../index.md) {: .sp-class} - zCVobSound {: .sp-class} @@ -79,7 +83,9 @@ Emits a sound defined by a script instance in a given radius. The sound playback === "Gothic 1 (Save)" - - [zCVob](../index.md) + - [zCVob](../../index.md) + {: .sp-class} + - [*zCZone*](../index.md) {: .sp-class} - zCVobSound {: .sp-class} @@ -114,7 +120,9 @@ Emits a sound defined by a script instance in a given radius. The sound playback === "Gothic 2 (Save)" - - [zCVob](../index.md) + - [zCVob](../../index.md) + {: .sp-class} + - [*zCZone*](../index.md) {: .sp-class} - zCVobSound {: .sp-class} diff --git a/docs/zengin/worlds/Classes/zCVob/zCVobSound/zCVobSoundDaytime.md b/docs/zengin/worlds/Classes/zCVob/zCZone/zCVobSound/zCVobSoundDaytime.md similarity index 90% rename from docs/zengin/worlds/Classes/zCVob/zCVobSound/zCVobSoundDaytime.md rename to docs/zengin/worlds/Classes/zCVob/zCZone/zCVobSound/zCVobSoundDaytime.md index 05548688d9..89de36d45e 100644 --- a/docs/zengin/worlds/Classes/zCVob/zCVobSound/zCVobSoundDaytime.md +++ b/docs/zengin/worlds/Classes/zCVob/zCZone/zCVobSound/zCVobSoundDaytime.md @@ -17,7 +17,9 @@ sound can be defined which is played outside the defined time range (example: bi === "Gothic 1" - - [zCVob](../index.md) + - [zCVob](../../index.md) + {: .sp-class} + - [*zCZone*](../index.md) {: .sp-class} - [zCVobSound](index.md) {: .sp-class} @@ -34,7 +36,9 @@ sound can be defined which is played outside the defined time range (example: bi === "Gothic 2" - - [zCVob](../index.md) + - [zCVob](../../index.md) + {: .sp-class} + - [*zCZone*](../index.md) {: .sp-class} - [zCVobSound](index.md) {: .sp-class} @@ -51,7 +55,9 @@ sound can be defined which is played outside the defined time range (example: bi === "Gothic 1 (Save)" - - [zCVob](../index.md) + - [zCVob](../../index.md) + {: .sp-class} + - [*zCZone*](../index.md) {: .sp-class} - [zCVobSound](index.md) {: .sp-class} @@ -68,7 +74,9 @@ sound can be defined which is played outside the defined time range (example: bi === "Gothic 2 (Save)" - - [zCVob](../index.md) + - [zCVob](../../index.md) + {: .sp-class} + - [*zCZone*](../index.md) {: .sp-class} - [zCVobSound](index.md) {: .sp-class} diff --git a/docs/zengin/worlds/Classes/zCVob/zCZoneVobFarPlane/index.md b/docs/zengin/worlds/Classes/zCVob/zCZone/zCZoneVobFarPlane/index.md similarity index 83% rename from docs/zengin/worlds/Classes/zCVob/zCZoneVobFarPlane/index.md rename to docs/zengin/worlds/Classes/zCVob/zCZone/zCZoneVobFarPlane/index.md index 055a7a6ef2..2b95f7d1de 100644 --- a/docs/zengin/worlds/Classes/zCVob/zCZoneVobFarPlane/index.md +++ b/docs/zengin/worlds/Classes/zCVob/zCZone/zCZoneVobFarPlane/index.md @@ -15,7 +15,9 @@ A VObject which defines the loading range of VObjects within its bounding box. === "Gothic 1" - - [zCVob](../index.md) + - [zCVob](../../index.md) + {: .sp-class} + - [*zCZone*](../index.md) {: .sp-class} - zCZoneVobFarPlane {: .sp-class} @@ -26,7 +28,9 @@ A VObject which defines the loading range of VObjects within its bounding box. === "Gothic 2" - - [zCVob](../index.md) + - [zCVob](../../index.md) + {: .sp-class} + - [*zCZone*](../index.md) {: .sp-class} - zCZoneVobFarPlane {: .sp-class} @@ -37,7 +41,9 @@ A VObject which defines the loading range of VObjects within its bounding box. === "Gothic 1 (Save)" - - [zCVob](../index.md) + - [zCVob](../../index.md) + {: .sp-class} + - [*zCZone*](../index.md) {: .sp-class} - zCZoneVobFarPlane {: .sp-class} @@ -48,7 +54,9 @@ A VObject which defines the loading range of VObjects within its bounding box. === "Gothic 2 (Save)" - - [zCVob](../index.md) + - [zCVob](../../index.md) + {: .sp-class} + - [*zCZone*](../index.md) {: .sp-class} - zCZoneVobFarPlane {: .sp-class} diff --git a/docs/zengin/worlds/Classes/zCVob/zCZoneVobFarPlane/zCZoneVobFarPlaneDefault.md b/docs/zengin/worlds/Classes/zCVob/zCZone/zCZoneVobFarPlane/zCZoneVobFarPlaneDefault.md similarity index 82% rename from docs/zengin/worlds/Classes/zCVob/zCZoneVobFarPlane/zCZoneVobFarPlaneDefault.md rename to docs/zengin/worlds/Classes/zCVob/zCZone/zCZoneVobFarPlane/zCZoneVobFarPlaneDefault.md index 31e9532c72..4ee6e429d4 100644 --- a/docs/zengin/worlds/Classes/zCVob/zCZoneVobFarPlane/zCZoneVobFarPlaneDefault.md +++ b/docs/zengin/worlds/Classes/zCVob/zCZone/zCZoneVobFarPlane/zCZoneVobFarPlaneDefault.md @@ -17,7 +17,9 @@ objects in each world. Its effect can be overridden using [zCZoneVobFarPlane](in === "Gothic 1" - - [zCVob](../index.md) + - [zCVob](../../index.md) + {: .sp-class} + - [*zCZone*](../index.md) {: .sp-class} - [zCZoneVobFarPlane](index.md) {: .sp-class} @@ -28,9 +30,9 @@ objects in each world. Its effect can be overridden using [zCZoneVobFarPlane](in === "Gothic 2" - - [zCVob](../index.md) + - [zCVob](../../index.md) {: .sp-class} - - [zCZoneVobFarPlane](index.md) + - [*zCZone*](../index.md) {: .sp-class} - zCZoneVobFarPlane {: .sp-class} @@ -39,7 +41,9 @@ objects in each world. Its effect can be overridden using [zCZoneVobFarPlane](in === "Gothic 1 (Save)" - - [zCVob](../index.md) + - [zCVob](../../index.md) + {: .sp-class} + - [*zCZone*](../index.md) {: .sp-class} - [zCZoneVobFarPlane](index.md) {: .sp-class} @@ -50,7 +54,9 @@ objects in each world. Its effect can be overridden using [zCZoneVobFarPlane](in === "Gothic 2 (Save)" - - [zCVob](../index.md) + - [zCVob](../../index.md) + {: .sp-class} + - [*zCZone*](../index.md) {: .sp-class} - [zCZoneVobFarPlane](index.md) {: .sp-class} diff --git a/docs/zengin/worlds/Classes/zCVob/zCZoneZFog/index.md b/docs/zengin/worlds/Classes/zCVob/zCZone/zCZoneZFog/index.md similarity index 90% rename from docs/zengin/worlds/Classes/zCVob/zCZoneZFog/index.md rename to docs/zengin/worlds/Classes/zCVob/zCZone/zCZoneZFog/index.md index 05a634e35d..d6a7a2d333 100644 --- a/docs/zengin/worlds/Classes/zCVob/zCZoneZFog/index.md +++ b/docs/zengin/worlds/Classes/zCVob/zCZone/zCZoneZFog/index.md @@ -15,7 +15,9 @@ A VObject which causes fog to appear within its bounding box. === "Gothic 1" - - [zCVob](../index.md) + - [zCVob](../../index.md) + {: .sp-class} + - [*zCZone*](../index.md) {: .sp-class} - zCZoneZFog {: .sp-class} @@ -30,7 +32,9 @@ A VObject which causes fog to appear within its bounding box. === "Gothic 2" - - [zCVob](../index.md) + - [zCVob](../../index.md) + {: .sp-class} + - [*zCZone*](../index.md) {: .sp-class} - zCZoneZFog {: .sp-class} @@ -49,7 +53,9 @@ A VObject which causes fog to appear within its bounding box. === "Gothic 1 (Save)" - - [zCVob](../index.md) + - [zCVob](../../index.md) + {: .sp-class} + - [*zCZone*](../index.md) {: .sp-class} - zCZoneZFog {: .sp-class} @@ -64,7 +70,9 @@ A VObject which causes fog to appear within its bounding box. === "Gothic 2 (Save)" - - [zCVob](../index.md) + - [zCVob](../../index.md) + {: .sp-class} + - [*zCZone*](../index.md) {: .sp-class} - zCZoneZFog {: .sp-class} diff --git a/docs/zengin/worlds/Classes/zCVob/zCZoneZFog/zCZoneZFogDefault.md b/docs/zengin/worlds/Classes/zCVob/zCZone/zCZoneZFog/zCZoneZFogDefault.md similarity index 80% rename from docs/zengin/worlds/Classes/zCVob/zCZoneZFog/zCZoneZFogDefault.md rename to docs/zengin/worlds/Classes/zCVob/zCZone/zCZoneZFog/zCZoneZFogDefault.md index 98ca0709a5..35fbf912ea 100644 --- a/docs/zengin/worlds/Classes/zCVob/zCZoneZFog/zCZoneZFogDefault.md +++ b/docs/zengin/worlds/Classes/zCVob/zCZone/zCZoneZFog/zCZoneZFogDefault.md @@ -16,7 +16,9 @@ Its effect can be overridden using [zCZoneZFog](index.md) objects. === "Gothic 1" - - [zCVob](../index.md) + - [zCVob](../../index.md) + {: .sp-class} + - [*zCZone*](../index.md) {: .sp-class} - [zCZoneZFog](index.md) {: .sp-class} @@ -27,7 +29,9 @@ Its effect can be overridden using [zCZoneZFog](index.md) objects. === "Gothic 2" - - [zCVob](../index.md) + - [zCVob](../../index.md) + {: .sp-class} + - [*zCZone*](../index.md) {: .sp-class} - [zCZoneZFog](index.md) {: .sp-class} @@ -38,7 +42,9 @@ Its effect can be overridden using [zCZoneZFog](index.md) objects. === "Gothic 1 (Save)" - - [zCVob](../index.md) + - [zCVob](../../index.md) + {: .sp-class} + - [*zCZone*](../index.md) {: .sp-class} - [zCZoneZFog](index.md) {: .sp-class} @@ -49,7 +55,9 @@ Its effect can be overridden using [zCZoneZFog](index.md) objects. === "Gothic 2 (Save)" - - [zCVob](../index.md) + - [zCVob](../../index.md) + {: .sp-class} + - [*zCZone*](../index.md) {: .sp-class} - [zCZoneZFog](index.md) {: .sp-class}