@adatechnology/game-contracts 0.26.0 → 0.28.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.d.ts +71 -6
- package/dist/index.global.js +4 -0
- package/dist/index.global.js.map +1 -1
- package/dist/index.js +4 -0
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
package/dist/index.d.ts
CHANGED
|
@@ -1559,6 +1559,10 @@ interface HandTargets {
|
|
|
1559
1559
|
fingers?: {
|
|
1560
1560
|
index?: number;
|
|
1561
1561
|
};
|
|
1562
|
+
/** The same for the left hand (its index on the trigger of a tool of its own, with a tool in each hand); absent, the left hand's fingers all follow `gripL`. */
|
|
1563
|
+
fingersL?: {
|
|
1564
|
+
index?: number;
|
|
1565
|
+
};
|
|
1562
1566
|
/**
|
|
1563
1567
|
* Where the elbows go: `view` puts them on screen beside the hand, out to the side, as a tool held out in front (default); `body` lets them hang down and back by the body, as an item
|
|
1564
1568
|
* carried close (a can, a bottle), where an elbow out to the side would lift it above the shoulder.
|
|
@@ -1575,8 +1579,19 @@ interface MuzzlePose {
|
|
|
1575
1579
|
/** The module draws the muzzle flash itself: the host draws none of its own. */
|
|
1576
1580
|
readonly drawsFlash: boolean;
|
|
1577
1581
|
}
|
|
1578
|
-
/**
|
|
1579
|
-
type
|
|
1582
|
+
/** A hand of the body: `R` the right, `L` the left. A tool in one hand alone is in the right; the left holds one of its own only with a tool in each hand (`HostTool.offHand`). */
|
|
1583
|
+
type ToolHand = 'R' | 'L';
|
|
1584
|
+
/**
|
|
1585
|
+
* Read by the host at each shot; null while the tool in the hands has no muzzle (a knife, a bare hand). `hand` is the hand that fired (absent: the right one); a source that draws
|
|
1586
|
+
* one tool only answers the same for both.
|
|
1587
|
+
*/
|
|
1588
|
+
type MuzzleSource = (hand?: ToolHand) => MuzzlePose | null;
|
|
1589
|
+
/**
|
|
1590
|
+
* The layer of what the first-person view draws over the world (three.js `Object3D.layers`): the tool in the hands and the arms that hold it. A host with a first-person view draws
|
|
1591
|
+
* the world without this layer, then this layer alone over it with the depth cleared and its own field of view (`ModuleHost.setViewmodelFov`), as shooters draw the weapon in the hands:
|
|
1592
|
+
* it never goes into a wall, and the gun and the arms are framed by the lens chosen for them. Seen from outside (third person) nothing is on it.
|
|
1593
|
+
*/
|
|
1594
|
+
declare const FIRST_PERSON_LAYER = 9;
|
|
1580
1595
|
|
|
1581
1596
|
/** How a hand turns something round in strokes (a screw cap, a tap handle, a knob): what `twistStroke` answers for one moment of the turning. */
|
|
1582
1597
|
interface TwistStroke {
|
|
@@ -1718,6 +1733,13 @@ interface BenchSheet {
|
|
|
1718
1733
|
readonly name: string;
|
|
1719
1734
|
}[];
|
|
1720
1735
|
readonly note?: string;
|
|
1736
|
+
/** A picture of the real thing the card is about, with its author and licence: the host shows it on the card, linked to `page`. */
|
|
1737
|
+
readonly image?: {
|
|
1738
|
+
readonly url: string;
|
|
1739
|
+
readonly alt: string;
|
|
1740
|
+
readonly credit?: string;
|
|
1741
|
+
readonly page?: string;
|
|
1742
|
+
};
|
|
1721
1743
|
/** A strip of named segments (seconds), with tick marks and a playhead that follows the module metric `metric`. */
|
|
1722
1744
|
readonly timeline?: {
|
|
1723
1745
|
readonly segments: readonly {
|
|
@@ -2247,7 +2269,8 @@ interface ModuleArea {
|
|
|
2247
2269
|
};
|
|
2248
2270
|
}
|
|
2249
2271
|
/**
|
|
2250
|
-
* What the player did with the tool in hand, as the host reports it.
|
|
2272
|
+
* What the player did with the tool in hand, as the host reports it. A tool event names the `hand` whose tool it is when the player holds one in each (`HostTool.offHand`): `L` for the
|
|
2273
|
+
* left; absent is the right, the hand of a tool held alone. A `tool` event with `hand: 'L'` puts the left hand's tool in it, and one with an empty `weapon` lets the left hand go. Hosts emit what they support; modules ignore what they do not need. The
|
|
2251
2274
|
* names are of a tool's cycle, not of a firearm: a nail gun, a chainsaw or a hose has modes, faults and a safety too.
|
|
2252
2275
|
*/
|
|
2253
2276
|
type HostEvent =
|
|
@@ -2256,6 +2279,7 @@ type HostEvent =
|
|
|
2256
2279
|
type: 'tool';
|
|
2257
2280
|
weapon: string;
|
|
2258
2281
|
duration?: number;
|
|
2282
|
+
hand?: ToolHand;
|
|
2259
2283
|
}
|
|
2260
2284
|
/** `shots` are projectiles (a shotgun shell is many), `rounds` the cartridges spent (a burst is several). */
|
|
2261
2285
|
| {
|
|
@@ -2272,11 +2296,13 @@ type HostEvent =
|
|
|
2272
2296
|
*/
|
|
2273
2297
|
origin?: Vec3;
|
|
2274
2298
|
direction?: Vec3;
|
|
2299
|
+
hand?: ToolHand;
|
|
2275
2300
|
}
|
|
2276
2301
|
/** The trigger was pulled, the round was spent and nothing left the tool (a dud cartridge): no projectile, no recoil. */
|
|
2277
2302
|
| {
|
|
2278
2303
|
type: 'misfire';
|
|
2279
2304
|
weapon: string;
|
|
2305
|
+
hand?: ToolHand;
|
|
2280
2306
|
}
|
|
2281
2307
|
/** `kind` is how the rule reloads (`tactical`, `empty`, `one_by_one`); `duration` the seconds of the whole reload, on `start`. */
|
|
2282
2308
|
| {
|
|
@@ -2285,27 +2311,33 @@ type HostEvent =
|
|
|
2285
2311
|
phase: 'start' | 'end';
|
|
2286
2312
|
kind?: string;
|
|
2287
2313
|
duration?: number;
|
|
2314
|
+
hand?: ToolHand;
|
|
2288
2315
|
} | {
|
|
2289
2316
|
type: 'empty';
|
|
2290
2317
|
weapon: string;
|
|
2318
|
+
hand?: ToolHand;
|
|
2291
2319
|
} | {
|
|
2292
2320
|
type: 'mode';
|
|
2293
2321
|
weapon: string;
|
|
2294
2322
|
mode: string;
|
|
2323
|
+
hand?: ToolHand;
|
|
2295
2324
|
} | {
|
|
2296
2325
|
type: 'fault';
|
|
2297
2326
|
weapon: string;
|
|
2298
2327
|
fault: string;
|
|
2328
|
+
hand?: ToolHand;
|
|
2299
2329
|
} | {
|
|
2300
2330
|
type: 'clear';
|
|
2301
2331
|
weapon: string;
|
|
2302
2332
|
fault: string;
|
|
2303
2333
|
phase: 'start' | 'end';
|
|
2304
2334
|
duration?: number;
|
|
2335
|
+
hand?: ToolHand;
|
|
2305
2336
|
} | {
|
|
2306
2337
|
type: 'safety';
|
|
2307
2338
|
weapon: string;
|
|
2308
2339
|
on: boolean;
|
|
2340
|
+
hand?: ToolHand;
|
|
2309
2341
|
}
|
|
2310
2342
|
/** The action works between shots (a pump, a bolt); `duration` is the seconds of the cycle, on `start`. */
|
|
2311
2343
|
| {
|
|
@@ -2313,17 +2345,20 @@ type HostEvent =
|
|
|
2313
2345
|
weapon: string;
|
|
2314
2346
|
phase: 'start' | 'end';
|
|
2315
2347
|
duration?: number;
|
|
2348
|
+
hand?: ToolHand;
|
|
2316
2349
|
}
|
|
2317
2350
|
/** A step of a longer phase (a reload's magazine out, magazine in, charge), at the moment the rule reaches it. */
|
|
2318
2351
|
| {
|
|
2319
2352
|
type: 'stage';
|
|
2320
2353
|
weapon: string;
|
|
2321
2354
|
stage: string;
|
|
2355
|
+
hand?: ToolHand;
|
|
2322
2356
|
}
|
|
2323
2357
|
/** One more round went into the tool while it loads round by round. */
|
|
2324
2358
|
| {
|
|
2325
2359
|
type: 'feed';
|
|
2326
2360
|
weapon: string;
|
|
2361
|
+
hand?: ToolHand;
|
|
2327
2362
|
}
|
|
2328
2363
|
/**
|
|
2329
2364
|
* A throwable with a timer fuse is cooked: the trigger pulls the pin (`start`, `fuse` is the whole fuse), releasing throws it with what is left of
|
|
@@ -2334,6 +2369,7 @@ type HostEvent =
|
|
|
2334
2369
|
weapon: string;
|
|
2335
2370
|
phase: 'start' | 'throw' | 'burst';
|
|
2336
2371
|
fuse: number;
|
|
2372
|
+
hand?: ToolHand;
|
|
2337
2373
|
}
|
|
2338
2374
|
/** An accessory went on (`fit`), came off (`remove`) or broke (`break`) at `mount`; `duration` is the seconds the work takes, on `fit` and `remove`. */
|
|
2339
2375
|
| {
|
|
@@ -2343,6 +2379,7 @@ type HostEvent =
|
|
|
2343
2379
|
attachment: string;
|
|
2344
2380
|
mount: string;
|
|
2345
2381
|
duration?: number;
|
|
2382
|
+
hand?: ToolHand;
|
|
2346
2383
|
}
|
|
2347
2384
|
/** A light or a laser was turned on or off. */
|
|
2348
2385
|
| {
|
|
@@ -2350,6 +2387,7 @@ type HostEvent =
|
|
|
2350
2387
|
weapon: string;
|
|
2351
2388
|
attachment: string;
|
|
2352
2389
|
on: boolean;
|
|
2390
|
+
hand?: ToolHand;
|
|
2353
2391
|
}
|
|
2354
2392
|
/** The stock was folded or slid in (`collapsed`) or opened (`extended`); `kind` is how it moves (`fold`, `retract`), `duration` the seconds it takes. */
|
|
2355
2393
|
| {
|
|
@@ -2358,6 +2396,7 @@ type HostEvent =
|
|
|
2358
2396
|
state: 'collapsed' | 'extended';
|
|
2359
2397
|
kind?: string;
|
|
2360
2398
|
duration?: number;
|
|
2399
|
+
hand?: ToolHand;
|
|
2361
2400
|
}
|
|
2362
2401
|
/** The weapon in hand changed between the main weapon and the one under its barrel (`on`: the under-barrel one is in use); `duration` is the seconds of the switch. */
|
|
2363
2402
|
| {
|
|
@@ -2365,6 +2404,7 @@ type HostEvent =
|
|
|
2365
2404
|
weapon: string;
|
|
2366
2405
|
on: boolean;
|
|
2367
2406
|
duration?: number;
|
|
2407
|
+
hand?: ToolHand;
|
|
2368
2408
|
}
|
|
2369
2409
|
/**
|
|
2370
2410
|
* Something blew up: a thrown or launched explosive, a charge, or a part of the world (a fuel barrel); `source` is the weapon or the object, `cause` what set it off.
|
|
@@ -2383,6 +2423,16 @@ type HostEvent =
|
|
|
2383
2423
|
/** Inside this radius (metres) the blast is lethal to a body it reaches. */
|
|
2384
2424
|
lethalRadius?: number;
|
|
2385
2425
|
}
|
|
2426
|
+
/**
|
|
2427
|
+
* With a tool in each hand, the tool of `hand` is put away against the body (`on`) to free that hand for the other tool, or taken back in hand; `duration` is the seconds the move takes.
|
|
2428
|
+
*/
|
|
2429
|
+
| {
|
|
2430
|
+
type: 'stow';
|
|
2431
|
+
weapon: string;
|
|
2432
|
+
on: boolean;
|
|
2433
|
+
duration?: number;
|
|
2434
|
+
hand?: ToolHand;
|
|
2435
|
+
}
|
|
2386
2436
|
/** The player crouched or stood up, or the camera mode changed; read the new state with `host.player()`. */
|
|
2387
2437
|
| {
|
|
2388
2438
|
type: 'player';
|
|
@@ -2420,10 +2470,20 @@ interface HostTool {
|
|
|
2420
2470
|
suppressed?: boolean;
|
|
2421
2471
|
/** True while the trigger and the reload go to the launcher under the barrel. */
|
|
2422
2472
|
underbarrelActive?: boolean;
|
|
2473
|
+
/**
|
|
2474
|
+
* True while the tool is put away against the body (tucked in the belt, under the arm) to free its hand for the tool in the other hand: a magazine changed with the free hand, with a
|
|
2475
|
+
* tool in each hand. It does not fire then; the host says when it goes and comes back with a `stow` event.
|
|
2476
|
+
*/
|
|
2477
|
+
stowed?: boolean;
|
|
2423
2478
|
/** Kg: the tool with what is on it. */
|
|
2424
2479
|
mass?: number;
|
|
2425
2480
|
/** Seconds to bring the tool to the sights, with what is on it. */
|
|
2426
2481
|
aimSeconds?: number;
|
|
2482
|
+
/**
|
|
2483
|
+
* The tool in the left hand when the player holds one in each (a pistol in each hand): its own rounds, reload and state. Absent with one tool, which is in the right hand. A tool
|
|
2484
|
+
* in each hand is held out, never brought to the eye: the second button pulls the left one's trigger instead.
|
|
2485
|
+
*/
|
|
2486
|
+
offHand?: HostTool;
|
|
2427
2487
|
}
|
|
2428
2488
|
interface HostToolAttachment {
|
|
2429
2489
|
readonly id: string;
|
|
@@ -2596,12 +2656,17 @@ interface ModuleHost {
|
|
|
2596
2656
|
* muzzle of the model and not at a guess in front of the eye. Pass null (or call the returned function) to let go. A host that draws no shot effects leaves it out.
|
|
2597
2657
|
*/
|
|
2598
2658
|
setMuzzleSource?(source: MuzzleSource | null): () => void;
|
|
2659
|
+
/**
|
|
2660
|
+
* The field of view, degrees vertical, the host draws `FIRST_PERSON_LAYER` with in first person (the lens of the tool in the hands); null goes back to the view's own. A host that draws
|
|
2661
|
+
* no first-person layer leaves it out.
|
|
2662
|
+
*/
|
|
2663
|
+
setViewmodelFov?(degrees: number | null): void;
|
|
2599
2664
|
/**
|
|
2600
2665
|
* Where the player's body holds a tool now (world space), in every view (the weapon is the body's own): `position` is the pocket of the right shoulder a stock rests on, `quaternion` turns
|
|
2601
2666
|
* to the aim (-z the aim, x right, y up, as a camera). A module draws the tool there at its real size. Null for a host with no body (the module puts the same pocket under the camera's eye);
|
|
2602
|
-
* a host without a body leaves it out.
|
|
2667
|
+
* a host without a body leaves it out. With `hand: 'L'` it is the pocket of the left shoulder (the same frame mirrored), where a tool in the left hand is held.
|
|
2603
2668
|
*/
|
|
2604
|
-
holdFrame?(): HandPose | null;
|
|
2669
|
+
holdFrame?(hand?: ToolHand): HandPose | null;
|
|
2605
2670
|
/**
|
|
2606
2671
|
* Puts the player's hand on a leaf the module moves itself (a door of a house): the host plays the reach to `handle()`, calls `onGrip` when the hand is on it (the module then turns
|
|
2607
2672
|
* the handle and swings the leaf), keeps the hand on `handle()` for `seconds` as it moves, and takes it back; the body pulls or pushes (`pull`) or shakes a locked one (`locked`).
|
|
@@ -2911,4 +2976,4 @@ declare function footprintBlocker(object: FootprintObject | (() => FootprintObje
|
|
|
2911
2976
|
/** @deprecated Import it from `@adatechnology/game-contracts/testing`. */
|
|
2912
2977
|
declare const resetWarnOnce: () => void;
|
|
2913
2978
|
|
|
2914
|
-
export { type ActionControl, type AnimationClipSpec, type AnimationEventSpec, type AnimationKey, type AnimationPose, type AreaPlacement, type AudioListener, type AudioSink, BLOW_IDS, BODY_FOLEY_IDS, BODY_SOUND_IDS, type BallisticExtras, type BenchChange, type BenchDeclaration, type BenchReport, type BenchSheet, type BlastImpulseOptions, type BlastOptions, type BlastReport, type BlastShove, type BlastShoveOptions, type BlastSource, type BlowId, type BlowTarget, type BodyFoleyId, type BodyRegion, type BodySlot, type BodySoundId, type BooleanControl, type BusyOptions, type BusySink, type BusyTask, type CategorizedOptions, type CategorizedReport, type CategoryDef, type CategoryOptions, type CategoryRegistry, type ChainDelay, type CheckOptions, type CheckSpecOptions, type ChoiceControl, type ChoiceOption, type ConfinementOptions, type ContainerSpec, type ContractChecker, type ContractContext, type ControlPatch, type ControlValue, type CostOptions, type Crack, DEFAULT_BLAST_IMPULSE, DEFAULT_BLAST_SHOVE, DEFAULT_ENVIRONMENT, DEFAULT_IGNITION_RULES, DEFAULT_SURFACE, DEFERRED_PRIORITY, DEFERRED_QUEUE_ID, type DamageStage, type DamageType, type DebrisKind, type DeepPartial, type DeferredQueue, type DeferredQueueOptions, type DeferredQueueReport, type Dent, type DestructibleImpl, type DestructibleSpec, type DestructionEvent, type DestructionEventType, type EffectHandle, type EffectRequest, type EffectSink, type Enclosure, type EnclosureBox, type EnvironmentBus, type EnvironmentKey, type EnvironmentState, type ExplosionChain, FOOTSTEP_SOUND_IDS, FRAGMENT_COVER, FRAME_PHASES, type FluidKind, type Footprint, type FootprintObject, type FootstepSoundId, type FractureStyle, type Fragment, type FragmentHitOptions, type FragmentMark, type FrameOptions, type FramePhase, GAIT_IDS, type GaitId, type GroundLayout, type GroundZone, HEAVY_LANDING_SPEED, type HandPose, type HandTargetSource, type HandTargets, type Hit, type HitIgnition, type HitResult, type Hole, type HostEvent, type HostGraphics, type HostReach, type HostTool, type HostToolAttachment, IMPACT_CONTRACT, type IgnitionRules, type ImpactContract, type ItemAnimationContract, type ItemSeat, type ItemSounds, type ItemUseDef, type JointKind, type JointSpec, type JointState, KIT_ORIGIN_KEY, KNOCKED_DOWN_ANGLE, KNOCK_CHEST, KNOCK_DOWN_SPEED, type KitOrigin, type Knock, LANDING_IDS, LAND_SOUND_IDS, type LandSoundId, type LandingId, type LiquidId, type LoopHandle, MATERIAL_SURFACES, MISSING_BITS, type MaterialId, type ModuleArea, type ModuleBench, type ModuleControl, type ModuleHost, type ModuleItemFluid, type ModuleItemSeal, type ModuleLayer, type ModuleMetric, type ModuleScenario, type ModuleView, type MuzzlePose, type MuzzleSource, type NumberControl, type ObjectState, type PartBreach, type PartShape, type PartSpec, type PartState, type PartStatus, type PartUnits, type PileSpec, type PlayerState, type Quat, type RayHit, type Reinforcement, STAGE_EVENT, SURFACE_IDS, SWING_LEAD_SECONDS, type SealBlock, type SealSpec, type SealState, type SegmentKind, type ShelterOptions, type Shot, type SoilLayer, type SoilProfile, type SoilState, type SoundHandle, type SoundRequest, type SpecReport, type StructureRole, type SurfaceId, type SurfaceLayer, type SurfaceRay, type SurfaceRayHit, TOOL_CLIP, TWIST_LIFT, type TensionRebar, type TestableItem, type TestableModule, type Thumbnail, type ToolAnimationStep, type ToolAnimator, type ToolClipId, type ToolClipPlayer, type ToolClipPlayerOptions, type ToolClipSet, type ToolCommand, type ToolCommandResult, type ToolKind, type ToolRig, type TunedMassDamper, type TwistOptions, type TwistStroke, type UnmarkedDrawing, type Use, type Vec3, type WarmUpProbes, type WindExposure, type WindState, applyPatches, blastBodySpeed, blastShove, bodyImpulse, bodyMass, checkAnimation, checkBench, checkCategorized, checkDeferredQueue, checkDestructible, checkHit, checkSpec, checkToolClips, createEnvironmentBus, createToolClipPlayer, deepMerge, defineCategories, fillFactor, footprintBlocker, footstepSoundId, hitSoundId, ignitionChance, isSurfaceId, kitOriginOf, knockOf, landSoundId, launchBody, leadClipEvents, markKitOrigin, mergeById, removeIds, resetWarnOnce, resolveEntry, resolveIgnitionRules, sampleClip, scaleClip, sealBlock, sealOpener, shotExtras, shotToHit, sideOnImpulse, sparkTargetFactor, stepKnock, surfaceOfMaterial, swingSoundId, takeLaunch, toolAnimationStep, twistStroke, unmarkedDrawings, useToHit };
|
|
2979
|
+
export { type ActionControl, type AnimationClipSpec, type AnimationEventSpec, type AnimationKey, type AnimationPose, type AreaPlacement, type AudioListener, type AudioSink, BLOW_IDS, BODY_FOLEY_IDS, BODY_SOUND_IDS, type BallisticExtras, type BenchChange, type BenchDeclaration, type BenchReport, type BenchSheet, type BlastImpulseOptions, type BlastOptions, type BlastReport, type BlastShove, type BlastShoveOptions, type BlastSource, type BlowId, type BlowTarget, type BodyFoleyId, type BodyRegion, type BodySlot, type BodySoundId, type BooleanControl, type BusyOptions, type BusySink, type BusyTask, type CategorizedOptions, type CategorizedReport, type CategoryDef, type CategoryOptions, type CategoryRegistry, type ChainDelay, type CheckOptions, type CheckSpecOptions, type ChoiceControl, type ChoiceOption, type ConfinementOptions, type ContainerSpec, type ContractChecker, type ContractContext, type ControlPatch, type ControlValue, type CostOptions, type Crack, DEFAULT_BLAST_IMPULSE, DEFAULT_BLAST_SHOVE, DEFAULT_ENVIRONMENT, DEFAULT_IGNITION_RULES, DEFAULT_SURFACE, DEFERRED_PRIORITY, DEFERRED_QUEUE_ID, type DamageStage, type DamageType, type DebrisKind, type DeepPartial, type DeferredQueue, type DeferredQueueOptions, type DeferredQueueReport, type Dent, type DestructibleImpl, type DestructibleSpec, type DestructionEvent, type DestructionEventType, type EffectHandle, type EffectRequest, type EffectSink, type Enclosure, type EnclosureBox, type EnvironmentBus, type EnvironmentKey, type EnvironmentState, type ExplosionChain, FIRST_PERSON_LAYER, FOOTSTEP_SOUND_IDS, FRAGMENT_COVER, FRAME_PHASES, type FluidKind, type Footprint, type FootprintObject, type FootstepSoundId, type FractureStyle, type Fragment, type FragmentHitOptions, type FragmentMark, type FrameOptions, type FramePhase, GAIT_IDS, type GaitId, type GroundLayout, type GroundZone, HEAVY_LANDING_SPEED, type HandPose, type HandTargetSource, type HandTargets, type Hit, type HitIgnition, type HitResult, type Hole, type HostEvent, type HostGraphics, type HostReach, type HostTool, type HostToolAttachment, IMPACT_CONTRACT, type IgnitionRules, type ImpactContract, type ItemAnimationContract, type ItemSeat, type ItemSounds, type ItemUseDef, type JointKind, type JointSpec, type JointState, KIT_ORIGIN_KEY, KNOCKED_DOWN_ANGLE, KNOCK_CHEST, KNOCK_DOWN_SPEED, type KitOrigin, type Knock, LANDING_IDS, LAND_SOUND_IDS, type LandSoundId, type LandingId, type LiquidId, type LoopHandle, MATERIAL_SURFACES, MISSING_BITS, type MaterialId, type ModuleArea, type ModuleBench, type ModuleControl, type ModuleHost, type ModuleItemFluid, type ModuleItemSeal, type ModuleLayer, type ModuleMetric, type ModuleScenario, type ModuleView, type MuzzlePose, type MuzzleSource, type NumberControl, type ObjectState, type PartBreach, type PartShape, type PartSpec, type PartState, type PartStatus, type PartUnits, type PileSpec, type PlayerState, type Quat, type RayHit, type Reinforcement, STAGE_EVENT, SURFACE_IDS, SWING_LEAD_SECONDS, type SealBlock, type SealSpec, type SealState, type SegmentKind, type ShelterOptions, type Shot, type SoilLayer, type SoilProfile, type SoilState, type SoundHandle, type SoundRequest, type SpecReport, type StructureRole, type SurfaceId, type SurfaceLayer, type SurfaceRay, type SurfaceRayHit, TOOL_CLIP, TWIST_LIFT, type TensionRebar, type TestableItem, type TestableModule, type Thumbnail, type ToolAnimationStep, type ToolAnimator, type ToolClipId, type ToolClipPlayer, type ToolClipPlayerOptions, type ToolClipSet, type ToolCommand, type ToolCommandResult, type ToolHand, type ToolKind, type ToolRig, type TunedMassDamper, type TwistOptions, type TwistStroke, type UnmarkedDrawing, type Use, type Vec3, type WarmUpProbes, type WindExposure, type WindState, applyPatches, blastBodySpeed, blastShove, bodyImpulse, bodyMass, checkAnimation, checkBench, checkCategorized, checkDeferredQueue, checkDestructible, checkHit, checkSpec, checkToolClips, createEnvironmentBus, createToolClipPlayer, deepMerge, defineCategories, fillFactor, footprintBlocker, footstepSoundId, hitSoundId, ignitionChance, isSurfaceId, kitOriginOf, knockOf, landSoundId, launchBody, leadClipEvents, markKitOrigin, mergeById, removeIds, resetWarnOnce, resolveEntry, resolveIgnitionRules, sampleClip, scaleClip, sealBlock, sealOpener, shotExtras, shotToHit, sideOnImpulse, sparkTargetFactor, stepKnock, surfaceOfMaterial, swingSoundId, takeLaunch, toolAnimationStep, twistStroke, unmarkedDrawings, useToHit };
|
package/dist/index.global.js
CHANGED
|
@@ -31,6 +31,7 @@ var GameContracts = (() => {
|
|
|
31
31
|
DEFAULT_SURFACE: () => DEFAULT_SURFACE,
|
|
32
32
|
DEFERRED_PRIORITY: () => DEFERRED_PRIORITY,
|
|
33
33
|
DEFERRED_QUEUE_ID: () => DEFERRED_QUEUE_ID,
|
|
34
|
+
FIRST_PERSON_LAYER: () => FIRST_PERSON_LAYER,
|
|
34
35
|
FOOTSTEP_SOUND_IDS: () => FOOTSTEP_SOUND_IDS,
|
|
35
36
|
FRAGMENT_COVER: () => FRAGMENT_COVER,
|
|
36
37
|
FRAME_PHASES: () => FRAME_PHASES,
|
|
@@ -608,6 +609,9 @@ var GameContracts = (() => {
|
|
|
608
609
|
return void 0;
|
|
609
610
|
};
|
|
610
611
|
|
|
612
|
+
// src/hands.ts
|
|
613
|
+
var FIRST_PERSON_LAYER = 9;
|
|
614
|
+
|
|
611
615
|
// src/twist.ts
|
|
612
616
|
var TWIST_LIFT = 0.012;
|
|
613
617
|
var TURNING = 0.7;
|