bard-legends-framework 1.8.2 → 1.9.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.mts +82 -77
- package/dist/index.d.ts +82 -77
- package/dist/index.js +3 -3
- package/dist/index.mjs +3 -3
- package/package.json +1 -1
package/dist/index.d.mts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as actions_lib from 'actions-lib';
|
|
2
|
-
import { IDAttachable,
|
|
2
|
+
import { IDAttachable, AttachmentID, Attachable, IdleSingleEvent, IdleSequence, Variable, Reducer, Sequence, SingleNotifier, Notifier, SingleEvent, Action, ClassID, NotifierCallbackFunction, IAttachment } from 'actions-lib';
|
|
3
3
|
import { Vector, DynamicID, Vec2, RGBColor, Radian, Rectangle, Grid, GridNeighborType, Line } from 'helpers-lib';
|
|
4
4
|
import p2$1 from 'p2';
|
|
5
5
|
import * as Pixi from 'pixi.js';
|
|
@@ -26,10 +26,14 @@ declare function ControllerDecorator<TController>(gateway: new () => TController
|
|
|
26
26
|
type EntityClassType<T extends Entity = Entity> = (new (...args: any[]) => T) & {
|
|
27
27
|
id: number;
|
|
28
28
|
};
|
|
29
|
+
type EntityID<T extends Entity> = AttachmentID & {
|
|
30
|
+
readonly __entity: T;
|
|
31
|
+
};
|
|
29
32
|
declare function EntityDecorator(): <T extends Entity>(EntityClass: EntityClassType<T>) => any;
|
|
30
33
|
declare abstract class Entity extends IDAttachable {
|
|
31
|
-
|
|
32
|
-
static
|
|
34
|
+
readonly id: EntityID<this>;
|
|
35
|
+
static getInstanceByID<T extends Entity>(this: EntityClassType<T>, entityID: EntityID<T> | undefined): T | undefined;
|
|
36
|
+
static getInstanceByIDOrFail<T extends Entity>(this: EntityClassType<T>, entityID: EntityID<T>): T;
|
|
33
37
|
static getEntities<T extends Entity>(this: EntityClassType<T>): T[];
|
|
34
38
|
constructor();
|
|
35
39
|
destroy(): void;
|
|
@@ -1062,38 +1066,40 @@ declare abstract class PhysicsEntity extends Entity {
|
|
|
1062
1066
|
get area(): number;
|
|
1063
1067
|
get mass(): number;
|
|
1064
1068
|
get collisions(): readonly CollisionReport[];
|
|
1065
|
-
readonly physicsWorldID:
|
|
1069
|
+
readonly physicsWorldID: PhysicsWorldID;
|
|
1066
1070
|
readonly physicsBodyGroup: PhysicsBodyGroup;
|
|
1067
1071
|
readonly includeInPathfinding: boolean;
|
|
1068
1072
|
protected readonly type: 'dynamic' | 'static';
|
|
1069
|
-
constructor(physicsWorldID:
|
|
1073
|
+
constructor(physicsWorldID: PhysicsWorldID, physicsEntityDefinition: PhysicsEntityDefinition, type: 'dynamic' | 'static');
|
|
1070
1074
|
abstract convertToDTO(): PhysicsBodyDTO;
|
|
1071
1075
|
destroy(): void;
|
|
1072
1076
|
canCollideWith(target: PhysicsEntity): boolean;
|
|
1073
1077
|
}
|
|
1074
1078
|
|
|
1075
|
-
|
|
1076
|
-
|
|
1077
|
-
readonly
|
|
1078
|
-
|
|
1079
|
-
|
|
1080
|
-
|
|
1081
|
-
|
|
1082
|
-
|
|
1083
|
-
readonly
|
|
1084
|
-
readonly
|
|
1085
|
-
readonly
|
|
1086
|
-
readonly
|
|
1087
|
-
|
|
1088
|
-
|
|
1089
|
-
|
|
1090
|
-
|
|
1091
|
-
readonly
|
|
1092
|
-
readonly
|
|
1093
|
-
readonly
|
|
1094
|
-
readonly
|
|
1095
|
-
|
|
1096
|
-
|
|
1079
|
+
type PhysicsWorldID = EntityID<PhysicsWorldEntity>;
|
|
1080
|
+
declare class PhysicsWorldEntity extends Entity {
|
|
1081
|
+
readonly mapSize: Vector;
|
|
1082
|
+
readonly mapSizeCenter: Vector;
|
|
1083
|
+
readonly modifyUpdateCycle: boolean;
|
|
1084
|
+
readonly p2World: p2$1.World;
|
|
1085
|
+
readonly materials: Readonly<Map<string, p2$1.Material>>;
|
|
1086
|
+
readonly materialDefinitions: Map<string, MaterialDefinition>;
|
|
1087
|
+
readonly physicsBodyGroupToP2Group: Map<string, number>;
|
|
1088
|
+
readonly physicsBodyGroupToP2Mask: Map<string, number>;
|
|
1089
|
+
readonly availabilityGridCache: Map<number, Map<PhysicsBodyGroup, Grid<boolean>>>;
|
|
1090
|
+
readonly vectorFieldCache: Map<string, VectorFieldPathFinder>;
|
|
1091
|
+
readonly bodiesInContactWith: Map<number, {
|
|
1092
|
+
p2Body: p2$1.Body;
|
|
1093
|
+
entity: PhysicsEntity;
|
|
1094
|
+
}>;
|
|
1095
|
+
readonly collisionReports: Map<number, CollisionReport[]>;
|
|
1096
|
+
readonly paused: Variable<boolean>;
|
|
1097
|
+
readonly lastP2Time: Variable<number>;
|
|
1098
|
+
readonly onPhysicsStep: Action<{
|
|
1099
|
+
time: number;
|
|
1100
|
+
delta: number;
|
|
1101
|
+
}>;
|
|
1102
|
+
constructor(mapSize: Vector, modifyUpdateCycle: boolean, p2World: p2$1.World, materials: Map<string, p2$1.Material>, materialContactDefinitions: Map<string, MaterialDefinition>, physicsBodyGroupToP2Group: Map<PhysicsBodyGroup, number>, physicsBodyGroupToP2Mask: Map<PhysicsBodyGroup, number>);
|
|
1097
1103
|
}
|
|
1098
1104
|
|
|
1099
1105
|
declare const BORDER_MATERIAL_NAME = "border";
|
|
@@ -1169,38 +1175,13 @@ interface MapSizeDTO {
|
|
|
1169
1175
|
readonly center: Vector;
|
|
1170
1176
|
}
|
|
1171
1177
|
|
|
1172
|
-
declare class PhysicsWorldEntity extends Entity {
|
|
1173
|
-
readonly mapSize: Vector;
|
|
1174
|
-
readonly mapSizeCenter: Vector;
|
|
1175
|
-
readonly modifyUpdateCycle: boolean;
|
|
1176
|
-
readonly p2World: p2$1.World;
|
|
1177
|
-
readonly materials: Readonly<Map<string, p2$1.Material>>;
|
|
1178
|
-
readonly materialDefinitions: Map<string, MaterialDefinition>;
|
|
1179
|
-
readonly physicsBodyGroupToP2Group: Map<string, number>;
|
|
1180
|
-
readonly physicsBodyGroupToP2Mask: Map<string, number>;
|
|
1181
|
-
readonly availabilityGridCache: Map<number, Map<PhysicsBodyGroup, Grid<boolean>>>;
|
|
1182
|
-
readonly vectorFieldCache: Map<string, VectorFieldPathFinder>;
|
|
1183
|
-
readonly bodiesInContactWith: Map<number, {
|
|
1184
|
-
p2Body: p2$1.Body;
|
|
1185
|
-
entity: PhysicsEntity;
|
|
1186
|
-
}>;
|
|
1187
|
-
readonly collisionReports: Map<number, CollisionReport[]>;
|
|
1188
|
-
readonly paused: Variable<boolean>;
|
|
1189
|
-
readonly lastP2Time: Variable<number>;
|
|
1190
|
-
readonly onPhysicsStep: Action<{
|
|
1191
|
-
time: number;
|
|
1192
|
-
delta: number;
|
|
1193
|
-
}>;
|
|
1194
|
-
constructor(mapSize: Vector, modifyUpdateCycle: boolean, p2World: p2$1.World, materials: Map<string, p2$1.Material>, materialContactDefinitions: Map<string, MaterialDefinition>, physicsBodyGroupToP2Group: Map<PhysicsBodyGroup, number>, physicsBodyGroupToP2Mask: Map<PhysicsBodyGroup, number>);
|
|
1195
|
-
}
|
|
1196
|
-
|
|
1197
1178
|
declare class PhysicsBodyGroupService {
|
|
1198
1179
|
createBodyGroupsAndMasks(physicsBodyGroups: readonly PhysicsBodyGroup[], interactingBodyGroups: InteractingBodyGroups): {
|
|
1199
1180
|
readonly physicsBodyGroupToP2Group: Map<PhysicsBodyGroup, number>;
|
|
1200
1181
|
readonly physicsBodyGroupToP2Mask: Map<PhysicsBodyGroup, number>;
|
|
1201
1182
|
};
|
|
1202
|
-
getGroupConstant(physicsWorldID:
|
|
1203
|
-
getMaskConstant(physicsWorldID:
|
|
1183
|
+
getGroupConstant(physicsWorldID: PhysicsWorldID, group: PhysicsBodyGroup): number;
|
|
1184
|
+
getMaskConstant(physicsWorldID: PhysicsWorldID, group: PhysicsBodyGroup): number;
|
|
1204
1185
|
canCollide(physicsWorld: PhysicsWorldEntity, groupType1: PhysicsBodyGroup, groupType2: PhysicsBodyGroup): boolean;
|
|
1205
1186
|
}
|
|
1206
1187
|
|
|
@@ -1224,16 +1205,16 @@ declare class AvailabilityGridService {
|
|
|
1224
1205
|
|
|
1225
1206
|
declare class PathFinderService {
|
|
1226
1207
|
constructor(_physicsAvailabilityGrid: AvailabilityGridService);
|
|
1227
|
-
findPathAStar(physicsWorldID:
|
|
1208
|
+
findPathAStar(physicsWorldID: PhysicsWorldID, startingPosition: Vector, target: Vector | number, collidableWithGroup: PhysicsBodyGroup, options?: {
|
|
1228
1209
|
neighborType?: GridNeighborType;
|
|
1229
1210
|
gridCellSize?: number;
|
|
1230
1211
|
}): PathFinderResult;
|
|
1231
|
-
findPathDirection(physicsWorldID:
|
|
1212
|
+
findPathDirection(physicsWorldID: PhysicsWorldID, startingPosition: Vector, target: Vector | number, collidableWithGroup: PhysicsBodyGroup, gridCellSize?: number): Radian | undefined;
|
|
1232
1213
|
}
|
|
1233
1214
|
|
|
1234
1215
|
declare class TestVisualsService {
|
|
1235
1216
|
constructor(_availabilityGridService: AvailabilityGridService, _pathFinderService: PathFinderService);
|
|
1236
|
-
printPathfindingTestGrid(physicsWorldID:
|
|
1217
|
+
printPathfindingTestGrid(physicsWorldID: PhysicsWorldID, testLayerID: number, target: Vector | number, physicsBodyGroup: PhysicsBodyGroup, area: Rectangle, gridCellSize: number): void;
|
|
1237
1218
|
createExplosionDebugVisual(physicsWorld: PhysicsWorldEntity, testLayerID: number, rayCasts: RayCast[], explosionCenter: Vector, radius: number, duration?: number): void;
|
|
1238
1219
|
createElipticExplosionDebugVisual(physicsWorld: PhysicsWorldEntity, testLayerID: number, rayCasts: RayCast[], explosionCenter: Vector, rotation: Radian, size: Vector, duration?: number): void;
|
|
1239
1220
|
createPhysicsEntityShapeVisual(p2Body: p2$1.Body, testLayerID: number, options?: {
|
|
@@ -1254,7 +1235,7 @@ declare class CollisionsService {
|
|
|
1254
1235
|
}
|
|
1255
1236
|
|
|
1256
1237
|
declare class BorderService {
|
|
1257
|
-
createBorders(physicsWorldID:
|
|
1238
|
+
createBorders(physicsWorldID: PhysicsWorldID, mapSize: Vector, borderBodyGroup: PhysicsBodyGroup): void;
|
|
1258
1239
|
}
|
|
1259
1240
|
|
|
1260
1241
|
declare class MaterialsService {
|
|
@@ -1262,16 +1243,16 @@ declare class MaterialsService {
|
|
|
1262
1243
|
materials: Map<string, p2$1.Material>;
|
|
1263
1244
|
materialDefinitions: Map<string, MaterialDefinition>;
|
|
1264
1245
|
};
|
|
1265
|
-
getMaterial(physicsWorldID:
|
|
1266
|
-
getMaterialDefinition(physicsWorldID:
|
|
1246
|
+
getMaterial(physicsWorldID: PhysicsWorldID, name: string): p2$1.Material;
|
|
1247
|
+
getMaterialDefinition(physicsWorldID: PhysicsWorldID, name: string): MaterialDefinition;
|
|
1267
1248
|
}
|
|
1268
1249
|
|
|
1269
1250
|
declare class PhysicsWorldService {
|
|
1270
1251
|
constructor(_materialsService: MaterialsService, _borderService: BorderService, _availabilityGridService: AvailabilityGridService, _collisionsService: CollisionsService, _physicsBodyGroupService: PhysicsBodyGroupService);
|
|
1271
|
-
createPhysicsWorld(request: CreatePhysicsWorldRequestDTO):
|
|
1272
|
-
addBody(physicsWorldID:
|
|
1273
|
-
removeBody(physicsWorldID:
|
|
1274
|
-
setPaused(pause: boolean, physicsWorldID:
|
|
1252
|
+
createPhysicsWorld(request: CreatePhysicsWorldRequestDTO): PhysicsWorldID;
|
|
1253
|
+
addBody(physicsWorldID: PhysicsWorldID, body: p2$1.Body, addInEmptySpace: boolean, physicsBodyGroup: PhysicsBodyGroup, includeOnPathfinding: boolean): boolean;
|
|
1254
|
+
removeBody(physicsWorldID: PhysicsWorldID, body: p2$1.Body): void;
|
|
1255
|
+
setPaused(pause: boolean, physicsWorldID: PhysicsWorldID): void;
|
|
1275
1256
|
}
|
|
1276
1257
|
|
|
1277
1258
|
declare class RayCastingService {
|
|
@@ -1292,17 +1273,17 @@ declare class RayCastHitConverterService {
|
|
|
1292
1273
|
|
|
1293
1274
|
declare class ElipticExplosionService {
|
|
1294
1275
|
constructor(_rayCastingService: RayCastingService, _testVisualsService: TestVisualsService, _rayCastHitConverterService: RayCastHitConverterService, _impactService: ImpactService);
|
|
1295
|
-
createElipticExplosion(physicsWorldID:
|
|
1276
|
+
createElipticExplosion(physicsWorldID: PhysicsWorldID, explosionCenter: Vector, rotation: Radian, size: Vector, physicsBodyGroup: PhysicsBodyGroup, severity: number, options?: PhysicsExplosionOptions): ExplosionHit[];
|
|
1296
1277
|
}
|
|
1297
1278
|
|
|
1298
1279
|
declare class ExplosionService {
|
|
1299
1280
|
constructor(_rayCastingService: RayCastingService, _testVisualsService: TestVisualsService, _rayCastHitConverterService: RayCastHitConverterService, _impactService: ImpactService);
|
|
1300
|
-
createExplosion(physicsWorldID:
|
|
1281
|
+
createExplosion(physicsWorldID: PhysicsWorldID, explosionCenter: Vector, radius: number, physicsBodyGroup: PhysicsBodyGroup, severity: number, options?: PhysicsExplosionOptions): ExplosionHit[];
|
|
1301
1282
|
}
|
|
1302
1283
|
|
|
1303
1284
|
declare class PhysicsQueryService {
|
|
1304
|
-
getMapSize(physicsWorldID:
|
|
1305
|
-
subscribeToPhysicsStep(physicsWorldID:
|
|
1285
|
+
getMapSize(physicsWorldID: PhysicsWorldID): MapSizeDTO;
|
|
1286
|
+
subscribeToPhysicsStep(physicsWorldID: PhysicsWorldID, callback: NotifierCallbackFunction<{
|
|
1306
1287
|
time: number;
|
|
1307
1288
|
delta: number;
|
|
1308
1289
|
}>): IAttachment;
|
|
@@ -1310,20 +1291,44 @@ declare class PhysicsQueryService {
|
|
|
1310
1291
|
|
|
1311
1292
|
declare class PhysicsController {
|
|
1312
1293
|
constructor(_physicsWorldService: PhysicsWorldService, _pathFinderService: PathFinderService, _testVisualsService: TestVisualsService, _explosionService: ExplosionService, _elipticExplosionService: ElipticExplosionService, _hitTestService: HitTestService, _physicsQueryService: PhysicsQueryService, _impactService: ImpactService);
|
|
1313
|
-
createPhysicsWorld(request: CreatePhysicsWorldRequestDTO):
|
|
1314
|
-
getMapSize(physicsWorldID:
|
|
1315
|
-
setPaused(pause: boolean, physicsWorldID:
|
|
1294
|
+
createPhysicsWorld(request: CreatePhysicsWorldRequestDTO): PhysicsWorldID;
|
|
1295
|
+
getMapSize(physicsWorldID: PhysicsWorldID): MapSizeDTO;
|
|
1296
|
+
setPaused(pause: boolean, physicsWorldID: PhysicsWorldID): void;
|
|
1316
1297
|
hitTest(physicsEntityID: number, options?: Partial<HitTestOptions>): boolean;
|
|
1317
|
-
findPath(physicsWorldID:
|
|
1318
|
-
findPathDirection(physicsWorldID:
|
|
1298
|
+
findPath(physicsWorldID: PhysicsWorldID, startingPosition: Vector, target: Vector | number, collidableWithGroup: PhysicsBodyGroup, neighborType: GridNeighborType): PathFinderResult;
|
|
1299
|
+
findPathDirection(physicsWorldID: PhysicsWorldID, startingPosition: Vector, target: Vector | number, collidableWithGroup: PhysicsBodyGroup): Radian | undefined;
|
|
1319
1300
|
applyImpulse(physicsEntityID: number, hitPosition: Vector, hitDirection: Vector, severity: number): void;
|
|
1320
|
-
createExplosion(physicsWorldID:
|
|
1321
|
-
createElipticExplosion(physicsWorldID:
|
|
1322
|
-
printPathfindingTestGrid(physicsWorldID:
|
|
1301
|
+
createExplosion(physicsWorldID: PhysicsWorldID, explosionCenter: Vector, radius: number, physicsBodyGroup: PhysicsBodyGroup, severity: number, options?: PhysicsExplosionOptions): ExplosionHit[];
|
|
1302
|
+
createElipticExplosion(physicsWorldID: PhysicsWorldID, explosionCenter: Vector, rotation: Radian, size: Vector, physicsBodyGroup: PhysicsBodyGroup, severity: number, options?: PhysicsExplosionOptions): ExplosionHit[];
|
|
1303
|
+
printPathfindingTestGrid(physicsWorldID: PhysicsWorldID, testLayerID: number, target: Vector | number, physicsBodyGroup: PhysicsBodyGroup, area: Rectangle, gridCellSize?: number): void;
|
|
1323
1304
|
}
|
|
1324
1305
|
|
|
1325
1306
|
declare const PhysicsGateway_base: new () => PhysicsController;
|
|
1326
1307
|
declare class PhysicsGateway extends PhysicsGateway_base {
|
|
1327
1308
|
}
|
|
1328
1309
|
|
|
1329
|
-
|
|
1310
|
+
declare abstract class ImmovablePhysicsEntity extends PhysicsEntity {
|
|
1311
|
+
readonly position: Vector;
|
|
1312
|
+
readonly rotation: Radian;
|
|
1313
|
+
constructor(physicsWorldID: PhysicsWorldID, physicsEntityDefinition: PhysicsEntityDefinition);
|
|
1314
|
+
convertToDTO(): PhysicsBodyDTO;
|
|
1315
|
+
}
|
|
1316
|
+
|
|
1317
|
+
declare abstract class MovableEntity extends Entity {
|
|
1318
|
+
readonly position: Variable<Vector>;
|
|
1319
|
+
readonly rotation: Variable<Radian>;
|
|
1320
|
+
readonly velocity: Variable<Vector>;
|
|
1321
|
+
readonly rotationalSpeed: Variable<number>;
|
|
1322
|
+
constructor();
|
|
1323
|
+
}
|
|
1324
|
+
|
|
1325
|
+
declare abstract class MovablePhysicsEntity extends PhysicsEntity {
|
|
1326
|
+
readonly position: Variable<Vector>;
|
|
1327
|
+
readonly rotation: Variable<Radian>;
|
|
1328
|
+
readonly velocity: Variable<Vector>;
|
|
1329
|
+
readonly rotationalSpeed: Variable<number>;
|
|
1330
|
+
constructor(physicsWorldID: PhysicsWorldID, physicsEntityDefinition: PhysicsEntityDefinition);
|
|
1331
|
+
convertToDTO(): PhysicsBodyDTO;
|
|
1332
|
+
}
|
|
1333
|
+
|
|
1334
|
+
export { AdvancedSound, type AdvancedSoundOptions, AnimationFlicker, AnimationInterpolationFunctions, type AnimationOptions, Animations, AnimationsCompletionHandlingType, Animator, type AnimatorAnimation, type AssetDefinition, type AudioAppearTransitionType, BORDER_MATERIAL_NAME, BardLegendsHardReset, BlendMode, type BorderProperties, Camera, CameraGateway, type CircleShapeData, ClosestAvailableSpaceHelper, type CollisionDetails, type CollisionReport, Container, ContainerEventType, ControllerDecorator, type CreateDashedLineOptions, type CreatePhysicsWorldRequestDTO, Cursor, DEFAULT_SHADER_RESOLUTION, DeltaTime, DisplayObjectArray, type DisplayObjectArrayOptions, type DropShadowOptions, Entity, EntityDecorator, type EntityID, type ExplosionHit, FadeInContent, type FadeInContentOptions, FocusingAnimation, Game, Gateway, type GlowEffectOptions, type GlowOptions, type GlowingShapeDefinition, Graphics, type HitTestOptions, ImmovablePhysicsEntity, type InteractingBodyGroups, type KeyboardKeyInfo, KeyboardService, type MapSizeDTO, type MaterialContactDefinition, type MaterialDefinition, MenuEntity, type MenuOptions, MenuUI, MenuView, MouseService, MouseTargetFocusService, MovableEntity, MovablePhysicsEntity, Music, MusicPlayer, type MusicPlayerOptions, type PartialTextOptions, PathFinder, type PathFinderResult, type PhysicsBodyDTO, PhysicsEntity, type PhysicsEntityDefinition, type PhysicsExplosionOptions, PhysicsGateway, PhysicsShapeType, type PhysicsWorldID, Placeholder, type PolygonDefinition, type PolygonShapeData, ROTATIONAL_SPEED_LIMIT, type RayCast, type RayCastHit, ReAnimateHandlingType, type RectangleShapeData, RichText, type RichTextOptions, type RichTextRectangleCut, type RichTextStyles, SOUND_TRANSITION_DURATION, SPEED_LIMIT, Scene, SceneDecorator, ScrollAreaUI, ScrollDirection, type ScrollInContentOptions, ScrollMaskUI, Service, ServiceDecorator, type SetParentOptions, type ShapeDefinition, SingletonEntity, SlideInContent, SlideInContentByIndex, SlideStateAnimation, SlideStateAnimationState, Sound, type SoundDefinition, type SoundID, type SoundIDRegistry, type SoundOptions, Sprite, type SpriteDefinition, type SpriteID, type SpriteIDRegistry, StateAnimation, type StateAnimationOptions, type StateAnimationState, Text, type TextAlignment, type TextOptions, ThroughEmptyStateAnimation, UpdatableContainer, UpdateCycle, VectorFieldPathFinder, VectorSet, View, ViewDecorator, type ViewDecoratorMeta };
|
package/dist/index.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as actions_lib from 'actions-lib';
|
|
2
|
-
import { IDAttachable,
|
|
2
|
+
import { IDAttachable, AttachmentID, Attachable, IdleSingleEvent, IdleSequence, Variable, Reducer, Sequence, SingleNotifier, Notifier, SingleEvent, Action, ClassID, NotifierCallbackFunction, IAttachment } from 'actions-lib';
|
|
3
3
|
import { Vector, DynamicID, Vec2, RGBColor, Radian, Rectangle, Grid, GridNeighborType, Line } from 'helpers-lib';
|
|
4
4
|
import p2$1 from 'p2';
|
|
5
5
|
import * as Pixi from 'pixi.js';
|
|
@@ -26,10 +26,14 @@ declare function ControllerDecorator<TController>(gateway: new () => TController
|
|
|
26
26
|
type EntityClassType<T extends Entity = Entity> = (new (...args: any[]) => T) & {
|
|
27
27
|
id: number;
|
|
28
28
|
};
|
|
29
|
+
type EntityID<T extends Entity> = AttachmentID & {
|
|
30
|
+
readonly __entity: T;
|
|
31
|
+
};
|
|
29
32
|
declare function EntityDecorator(): <T extends Entity>(EntityClass: EntityClassType<T>) => any;
|
|
30
33
|
declare abstract class Entity extends IDAttachable {
|
|
31
|
-
|
|
32
|
-
static
|
|
34
|
+
readonly id: EntityID<this>;
|
|
35
|
+
static getInstanceByID<T extends Entity>(this: EntityClassType<T>, entityID: EntityID<T> | undefined): T | undefined;
|
|
36
|
+
static getInstanceByIDOrFail<T extends Entity>(this: EntityClassType<T>, entityID: EntityID<T>): T;
|
|
33
37
|
static getEntities<T extends Entity>(this: EntityClassType<T>): T[];
|
|
34
38
|
constructor();
|
|
35
39
|
destroy(): void;
|
|
@@ -1062,38 +1066,40 @@ declare abstract class PhysicsEntity extends Entity {
|
|
|
1062
1066
|
get area(): number;
|
|
1063
1067
|
get mass(): number;
|
|
1064
1068
|
get collisions(): readonly CollisionReport[];
|
|
1065
|
-
readonly physicsWorldID:
|
|
1069
|
+
readonly physicsWorldID: PhysicsWorldID;
|
|
1066
1070
|
readonly physicsBodyGroup: PhysicsBodyGroup;
|
|
1067
1071
|
readonly includeInPathfinding: boolean;
|
|
1068
1072
|
protected readonly type: 'dynamic' | 'static';
|
|
1069
|
-
constructor(physicsWorldID:
|
|
1073
|
+
constructor(physicsWorldID: PhysicsWorldID, physicsEntityDefinition: PhysicsEntityDefinition, type: 'dynamic' | 'static');
|
|
1070
1074
|
abstract convertToDTO(): PhysicsBodyDTO;
|
|
1071
1075
|
destroy(): void;
|
|
1072
1076
|
canCollideWith(target: PhysicsEntity): boolean;
|
|
1073
1077
|
}
|
|
1074
1078
|
|
|
1075
|
-
|
|
1076
|
-
|
|
1077
|
-
readonly
|
|
1078
|
-
|
|
1079
|
-
|
|
1080
|
-
|
|
1081
|
-
|
|
1082
|
-
|
|
1083
|
-
readonly
|
|
1084
|
-
readonly
|
|
1085
|
-
readonly
|
|
1086
|
-
readonly
|
|
1087
|
-
|
|
1088
|
-
|
|
1089
|
-
|
|
1090
|
-
|
|
1091
|
-
readonly
|
|
1092
|
-
readonly
|
|
1093
|
-
readonly
|
|
1094
|
-
readonly
|
|
1095
|
-
|
|
1096
|
-
|
|
1079
|
+
type PhysicsWorldID = EntityID<PhysicsWorldEntity>;
|
|
1080
|
+
declare class PhysicsWorldEntity extends Entity {
|
|
1081
|
+
readonly mapSize: Vector;
|
|
1082
|
+
readonly mapSizeCenter: Vector;
|
|
1083
|
+
readonly modifyUpdateCycle: boolean;
|
|
1084
|
+
readonly p2World: p2$1.World;
|
|
1085
|
+
readonly materials: Readonly<Map<string, p2$1.Material>>;
|
|
1086
|
+
readonly materialDefinitions: Map<string, MaterialDefinition>;
|
|
1087
|
+
readonly physicsBodyGroupToP2Group: Map<string, number>;
|
|
1088
|
+
readonly physicsBodyGroupToP2Mask: Map<string, number>;
|
|
1089
|
+
readonly availabilityGridCache: Map<number, Map<PhysicsBodyGroup, Grid<boolean>>>;
|
|
1090
|
+
readonly vectorFieldCache: Map<string, VectorFieldPathFinder>;
|
|
1091
|
+
readonly bodiesInContactWith: Map<number, {
|
|
1092
|
+
p2Body: p2$1.Body;
|
|
1093
|
+
entity: PhysicsEntity;
|
|
1094
|
+
}>;
|
|
1095
|
+
readonly collisionReports: Map<number, CollisionReport[]>;
|
|
1096
|
+
readonly paused: Variable<boolean>;
|
|
1097
|
+
readonly lastP2Time: Variable<number>;
|
|
1098
|
+
readonly onPhysicsStep: Action<{
|
|
1099
|
+
time: number;
|
|
1100
|
+
delta: number;
|
|
1101
|
+
}>;
|
|
1102
|
+
constructor(mapSize: Vector, modifyUpdateCycle: boolean, p2World: p2$1.World, materials: Map<string, p2$1.Material>, materialContactDefinitions: Map<string, MaterialDefinition>, physicsBodyGroupToP2Group: Map<PhysicsBodyGroup, number>, physicsBodyGroupToP2Mask: Map<PhysicsBodyGroup, number>);
|
|
1097
1103
|
}
|
|
1098
1104
|
|
|
1099
1105
|
declare const BORDER_MATERIAL_NAME = "border";
|
|
@@ -1169,38 +1175,13 @@ interface MapSizeDTO {
|
|
|
1169
1175
|
readonly center: Vector;
|
|
1170
1176
|
}
|
|
1171
1177
|
|
|
1172
|
-
declare class PhysicsWorldEntity extends Entity {
|
|
1173
|
-
readonly mapSize: Vector;
|
|
1174
|
-
readonly mapSizeCenter: Vector;
|
|
1175
|
-
readonly modifyUpdateCycle: boolean;
|
|
1176
|
-
readonly p2World: p2$1.World;
|
|
1177
|
-
readonly materials: Readonly<Map<string, p2$1.Material>>;
|
|
1178
|
-
readonly materialDefinitions: Map<string, MaterialDefinition>;
|
|
1179
|
-
readonly physicsBodyGroupToP2Group: Map<string, number>;
|
|
1180
|
-
readonly physicsBodyGroupToP2Mask: Map<string, number>;
|
|
1181
|
-
readonly availabilityGridCache: Map<number, Map<PhysicsBodyGroup, Grid<boolean>>>;
|
|
1182
|
-
readonly vectorFieldCache: Map<string, VectorFieldPathFinder>;
|
|
1183
|
-
readonly bodiesInContactWith: Map<number, {
|
|
1184
|
-
p2Body: p2$1.Body;
|
|
1185
|
-
entity: PhysicsEntity;
|
|
1186
|
-
}>;
|
|
1187
|
-
readonly collisionReports: Map<number, CollisionReport[]>;
|
|
1188
|
-
readonly paused: Variable<boolean>;
|
|
1189
|
-
readonly lastP2Time: Variable<number>;
|
|
1190
|
-
readonly onPhysicsStep: Action<{
|
|
1191
|
-
time: number;
|
|
1192
|
-
delta: number;
|
|
1193
|
-
}>;
|
|
1194
|
-
constructor(mapSize: Vector, modifyUpdateCycle: boolean, p2World: p2$1.World, materials: Map<string, p2$1.Material>, materialContactDefinitions: Map<string, MaterialDefinition>, physicsBodyGroupToP2Group: Map<PhysicsBodyGroup, number>, physicsBodyGroupToP2Mask: Map<PhysicsBodyGroup, number>);
|
|
1195
|
-
}
|
|
1196
|
-
|
|
1197
1178
|
declare class PhysicsBodyGroupService {
|
|
1198
1179
|
createBodyGroupsAndMasks(physicsBodyGroups: readonly PhysicsBodyGroup[], interactingBodyGroups: InteractingBodyGroups): {
|
|
1199
1180
|
readonly physicsBodyGroupToP2Group: Map<PhysicsBodyGroup, number>;
|
|
1200
1181
|
readonly physicsBodyGroupToP2Mask: Map<PhysicsBodyGroup, number>;
|
|
1201
1182
|
};
|
|
1202
|
-
getGroupConstant(physicsWorldID:
|
|
1203
|
-
getMaskConstant(physicsWorldID:
|
|
1183
|
+
getGroupConstant(physicsWorldID: PhysicsWorldID, group: PhysicsBodyGroup): number;
|
|
1184
|
+
getMaskConstant(physicsWorldID: PhysicsWorldID, group: PhysicsBodyGroup): number;
|
|
1204
1185
|
canCollide(physicsWorld: PhysicsWorldEntity, groupType1: PhysicsBodyGroup, groupType2: PhysicsBodyGroup): boolean;
|
|
1205
1186
|
}
|
|
1206
1187
|
|
|
@@ -1224,16 +1205,16 @@ declare class AvailabilityGridService {
|
|
|
1224
1205
|
|
|
1225
1206
|
declare class PathFinderService {
|
|
1226
1207
|
constructor(_physicsAvailabilityGrid: AvailabilityGridService);
|
|
1227
|
-
findPathAStar(physicsWorldID:
|
|
1208
|
+
findPathAStar(physicsWorldID: PhysicsWorldID, startingPosition: Vector, target: Vector | number, collidableWithGroup: PhysicsBodyGroup, options?: {
|
|
1228
1209
|
neighborType?: GridNeighborType;
|
|
1229
1210
|
gridCellSize?: number;
|
|
1230
1211
|
}): PathFinderResult;
|
|
1231
|
-
findPathDirection(physicsWorldID:
|
|
1212
|
+
findPathDirection(physicsWorldID: PhysicsWorldID, startingPosition: Vector, target: Vector | number, collidableWithGroup: PhysicsBodyGroup, gridCellSize?: number): Radian | undefined;
|
|
1232
1213
|
}
|
|
1233
1214
|
|
|
1234
1215
|
declare class TestVisualsService {
|
|
1235
1216
|
constructor(_availabilityGridService: AvailabilityGridService, _pathFinderService: PathFinderService);
|
|
1236
|
-
printPathfindingTestGrid(physicsWorldID:
|
|
1217
|
+
printPathfindingTestGrid(physicsWorldID: PhysicsWorldID, testLayerID: number, target: Vector | number, physicsBodyGroup: PhysicsBodyGroup, area: Rectangle, gridCellSize: number): void;
|
|
1237
1218
|
createExplosionDebugVisual(physicsWorld: PhysicsWorldEntity, testLayerID: number, rayCasts: RayCast[], explosionCenter: Vector, radius: number, duration?: number): void;
|
|
1238
1219
|
createElipticExplosionDebugVisual(physicsWorld: PhysicsWorldEntity, testLayerID: number, rayCasts: RayCast[], explosionCenter: Vector, rotation: Radian, size: Vector, duration?: number): void;
|
|
1239
1220
|
createPhysicsEntityShapeVisual(p2Body: p2$1.Body, testLayerID: number, options?: {
|
|
@@ -1254,7 +1235,7 @@ declare class CollisionsService {
|
|
|
1254
1235
|
}
|
|
1255
1236
|
|
|
1256
1237
|
declare class BorderService {
|
|
1257
|
-
createBorders(physicsWorldID:
|
|
1238
|
+
createBorders(physicsWorldID: PhysicsWorldID, mapSize: Vector, borderBodyGroup: PhysicsBodyGroup): void;
|
|
1258
1239
|
}
|
|
1259
1240
|
|
|
1260
1241
|
declare class MaterialsService {
|
|
@@ -1262,16 +1243,16 @@ declare class MaterialsService {
|
|
|
1262
1243
|
materials: Map<string, p2$1.Material>;
|
|
1263
1244
|
materialDefinitions: Map<string, MaterialDefinition>;
|
|
1264
1245
|
};
|
|
1265
|
-
getMaterial(physicsWorldID:
|
|
1266
|
-
getMaterialDefinition(physicsWorldID:
|
|
1246
|
+
getMaterial(physicsWorldID: PhysicsWorldID, name: string): p2$1.Material;
|
|
1247
|
+
getMaterialDefinition(physicsWorldID: PhysicsWorldID, name: string): MaterialDefinition;
|
|
1267
1248
|
}
|
|
1268
1249
|
|
|
1269
1250
|
declare class PhysicsWorldService {
|
|
1270
1251
|
constructor(_materialsService: MaterialsService, _borderService: BorderService, _availabilityGridService: AvailabilityGridService, _collisionsService: CollisionsService, _physicsBodyGroupService: PhysicsBodyGroupService);
|
|
1271
|
-
createPhysicsWorld(request: CreatePhysicsWorldRequestDTO):
|
|
1272
|
-
addBody(physicsWorldID:
|
|
1273
|
-
removeBody(physicsWorldID:
|
|
1274
|
-
setPaused(pause: boolean, physicsWorldID:
|
|
1252
|
+
createPhysicsWorld(request: CreatePhysicsWorldRequestDTO): PhysicsWorldID;
|
|
1253
|
+
addBody(physicsWorldID: PhysicsWorldID, body: p2$1.Body, addInEmptySpace: boolean, physicsBodyGroup: PhysicsBodyGroup, includeOnPathfinding: boolean): boolean;
|
|
1254
|
+
removeBody(physicsWorldID: PhysicsWorldID, body: p2$1.Body): void;
|
|
1255
|
+
setPaused(pause: boolean, physicsWorldID: PhysicsWorldID): void;
|
|
1275
1256
|
}
|
|
1276
1257
|
|
|
1277
1258
|
declare class RayCastingService {
|
|
@@ -1292,17 +1273,17 @@ declare class RayCastHitConverterService {
|
|
|
1292
1273
|
|
|
1293
1274
|
declare class ElipticExplosionService {
|
|
1294
1275
|
constructor(_rayCastingService: RayCastingService, _testVisualsService: TestVisualsService, _rayCastHitConverterService: RayCastHitConverterService, _impactService: ImpactService);
|
|
1295
|
-
createElipticExplosion(physicsWorldID:
|
|
1276
|
+
createElipticExplosion(physicsWorldID: PhysicsWorldID, explosionCenter: Vector, rotation: Radian, size: Vector, physicsBodyGroup: PhysicsBodyGroup, severity: number, options?: PhysicsExplosionOptions): ExplosionHit[];
|
|
1296
1277
|
}
|
|
1297
1278
|
|
|
1298
1279
|
declare class ExplosionService {
|
|
1299
1280
|
constructor(_rayCastingService: RayCastingService, _testVisualsService: TestVisualsService, _rayCastHitConverterService: RayCastHitConverterService, _impactService: ImpactService);
|
|
1300
|
-
createExplosion(physicsWorldID:
|
|
1281
|
+
createExplosion(physicsWorldID: PhysicsWorldID, explosionCenter: Vector, radius: number, physicsBodyGroup: PhysicsBodyGroup, severity: number, options?: PhysicsExplosionOptions): ExplosionHit[];
|
|
1301
1282
|
}
|
|
1302
1283
|
|
|
1303
1284
|
declare class PhysicsQueryService {
|
|
1304
|
-
getMapSize(physicsWorldID:
|
|
1305
|
-
subscribeToPhysicsStep(physicsWorldID:
|
|
1285
|
+
getMapSize(physicsWorldID: PhysicsWorldID): MapSizeDTO;
|
|
1286
|
+
subscribeToPhysicsStep(physicsWorldID: PhysicsWorldID, callback: NotifierCallbackFunction<{
|
|
1306
1287
|
time: number;
|
|
1307
1288
|
delta: number;
|
|
1308
1289
|
}>): IAttachment;
|
|
@@ -1310,20 +1291,44 @@ declare class PhysicsQueryService {
|
|
|
1310
1291
|
|
|
1311
1292
|
declare class PhysicsController {
|
|
1312
1293
|
constructor(_physicsWorldService: PhysicsWorldService, _pathFinderService: PathFinderService, _testVisualsService: TestVisualsService, _explosionService: ExplosionService, _elipticExplosionService: ElipticExplosionService, _hitTestService: HitTestService, _physicsQueryService: PhysicsQueryService, _impactService: ImpactService);
|
|
1313
|
-
createPhysicsWorld(request: CreatePhysicsWorldRequestDTO):
|
|
1314
|
-
getMapSize(physicsWorldID:
|
|
1315
|
-
setPaused(pause: boolean, physicsWorldID:
|
|
1294
|
+
createPhysicsWorld(request: CreatePhysicsWorldRequestDTO): PhysicsWorldID;
|
|
1295
|
+
getMapSize(physicsWorldID: PhysicsWorldID): MapSizeDTO;
|
|
1296
|
+
setPaused(pause: boolean, physicsWorldID: PhysicsWorldID): void;
|
|
1316
1297
|
hitTest(physicsEntityID: number, options?: Partial<HitTestOptions>): boolean;
|
|
1317
|
-
findPath(physicsWorldID:
|
|
1318
|
-
findPathDirection(physicsWorldID:
|
|
1298
|
+
findPath(physicsWorldID: PhysicsWorldID, startingPosition: Vector, target: Vector | number, collidableWithGroup: PhysicsBodyGroup, neighborType: GridNeighborType): PathFinderResult;
|
|
1299
|
+
findPathDirection(physicsWorldID: PhysicsWorldID, startingPosition: Vector, target: Vector | number, collidableWithGroup: PhysicsBodyGroup): Radian | undefined;
|
|
1319
1300
|
applyImpulse(physicsEntityID: number, hitPosition: Vector, hitDirection: Vector, severity: number): void;
|
|
1320
|
-
createExplosion(physicsWorldID:
|
|
1321
|
-
createElipticExplosion(physicsWorldID:
|
|
1322
|
-
printPathfindingTestGrid(physicsWorldID:
|
|
1301
|
+
createExplosion(physicsWorldID: PhysicsWorldID, explosionCenter: Vector, radius: number, physicsBodyGroup: PhysicsBodyGroup, severity: number, options?: PhysicsExplosionOptions): ExplosionHit[];
|
|
1302
|
+
createElipticExplosion(physicsWorldID: PhysicsWorldID, explosionCenter: Vector, rotation: Radian, size: Vector, physicsBodyGroup: PhysicsBodyGroup, severity: number, options?: PhysicsExplosionOptions): ExplosionHit[];
|
|
1303
|
+
printPathfindingTestGrid(physicsWorldID: PhysicsWorldID, testLayerID: number, target: Vector | number, physicsBodyGroup: PhysicsBodyGroup, area: Rectangle, gridCellSize?: number): void;
|
|
1323
1304
|
}
|
|
1324
1305
|
|
|
1325
1306
|
declare const PhysicsGateway_base: new () => PhysicsController;
|
|
1326
1307
|
declare class PhysicsGateway extends PhysicsGateway_base {
|
|
1327
1308
|
}
|
|
1328
1309
|
|
|
1329
|
-
|
|
1310
|
+
declare abstract class ImmovablePhysicsEntity extends PhysicsEntity {
|
|
1311
|
+
readonly position: Vector;
|
|
1312
|
+
readonly rotation: Radian;
|
|
1313
|
+
constructor(physicsWorldID: PhysicsWorldID, physicsEntityDefinition: PhysicsEntityDefinition);
|
|
1314
|
+
convertToDTO(): PhysicsBodyDTO;
|
|
1315
|
+
}
|
|
1316
|
+
|
|
1317
|
+
declare abstract class MovableEntity extends Entity {
|
|
1318
|
+
readonly position: Variable<Vector>;
|
|
1319
|
+
readonly rotation: Variable<Radian>;
|
|
1320
|
+
readonly velocity: Variable<Vector>;
|
|
1321
|
+
readonly rotationalSpeed: Variable<number>;
|
|
1322
|
+
constructor();
|
|
1323
|
+
}
|
|
1324
|
+
|
|
1325
|
+
declare abstract class MovablePhysicsEntity extends PhysicsEntity {
|
|
1326
|
+
readonly position: Variable<Vector>;
|
|
1327
|
+
readonly rotation: Variable<Radian>;
|
|
1328
|
+
readonly velocity: Variable<Vector>;
|
|
1329
|
+
readonly rotationalSpeed: Variable<number>;
|
|
1330
|
+
constructor(physicsWorldID: PhysicsWorldID, physicsEntityDefinition: PhysicsEntityDefinition);
|
|
1331
|
+
convertToDTO(): PhysicsBodyDTO;
|
|
1332
|
+
}
|
|
1333
|
+
|
|
1334
|
+
export { AdvancedSound, type AdvancedSoundOptions, AnimationFlicker, AnimationInterpolationFunctions, type AnimationOptions, Animations, AnimationsCompletionHandlingType, Animator, type AnimatorAnimation, type AssetDefinition, type AudioAppearTransitionType, BORDER_MATERIAL_NAME, BardLegendsHardReset, BlendMode, type BorderProperties, Camera, CameraGateway, type CircleShapeData, ClosestAvailableSpaceHelper, type CollisionDetails, type CollisionReport, Container, ContainerEventType, ControllerDecorator, type CreateDashedLineOptions, type CreatePhysicsWorldRequestDTO, Cursor, DEFAULT_SHADER_RESOLUTION, DeltaTime, DisplayObjectArray, type DisplayObjectArrayOptions, type DropShadowOptions, Entity, EntityDecorator, type EntityID, type ExplosionHit, FadeInContent, type FadeInContentOptions, FocusingAnimation, Game, Gateway, type GlowEffectOptions, type GlowOptions, type GlowingShapeDefinition, Graphics, type HitTestOptions, ImmovablePhysicsEntity, type InteractingBodyGroups, type KeyboardKeyInfo, KeyboardService, type MapSizeDTO, type MaterialContactDefinition, type MaterialDefinition, MenuEntity, type MenuOptions, MenuUI, MenuView, MouseService, MouseTargetFocusService, MovableEntity, MovablePhysicsEntity, Music, MusicPlayer, type MusicPlayerOptions, type PartialTextOptions, PathFinder, type PathFinderResult, type PhysicsBodyDTO, PhysicsEntity, type PhysicsEntityDefinition, type PhysicsExplosionOptions, PhysicsGateway, PhysicsShapeType, type PhysicsWorldID, Placeholder, type PolygonDefinition, type PolygonShapeData, ROTATIONAL_SPEED_LIMIT, type RayCast, type RayCastHit, ReAnimateHandlingType, type RectangleShapeData, RichText, type RichTextOptions, type RichTextRectangleCut, type RichTextStyles, SOUND_TRANSITION_DURATION, SPEED_LIMIT, Scene, SceneDecorator, ScrollAreaUI, ScrollDirection, type ScrollInContentOptions, ScrollMaskUI, Service, ServiceDecorator, type SetParentOptions, type ShapeDefinition, SingletonEntity, SlideInContent, SlideInContentByIndex, SlideStateAnimation, SlideStateAnimationState, Sound, type SoundDefinition, type SoundID, type SoundIDRegistry, type SoundOptions, Sprite, type SpriteDefinition, type SpriteID, type SpriteIDRegistry, StateAnimation, type StateAnimationOptions, type StateAnimationState, Text, type TextAlignment, type TextOptions, ThroughEmptyStateAnimation, UpdatableContainer, UpdateCycle, VectorFieldPathFinder, VectorSet, View, ViewDecorator, type ViewDecoratorMeta };
|