angry-pixel 1.1.2 → 1.1.4

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.
Files changed (216) hide show
  1. package/.vscode/settings.json +2 -0
  2. package/lib/component/Animator.d.ts +5 -2
  3. package/lib/component/Button.d.ts +42 -0
  4. package/lib/component/Camera.d.ts +7 -15
  5. package/lib/component/RigidBody.d.ts +1 -1
  6. package/lib/component/Sprite.d.ts +9 -18
  7. package/lib/component/Transform.d.ts +2 -3
  8. package/lib/component/collider/BoxCollider.d.ts +1 -1
  9. package/lib/component/collider/EdgeCollider.d.ts +2 -3
  10. package/lib/component/collider/PolygonCollider.d.ts +12 -2
  11. package/lib/component/collider/TilemapCollider.d.ts +14 -3
  12. package/lib/component/rendering/MaskRenderer.d.ts +2 -4
  13. package/lib/component/rendering/SpriteRenderer.d.ts +5 -9
  14. package/lib/component/rendering/TextRenderer.d.ts +13 -16
  15. package/lib/component/rendering/TiledTilemapRenderer.d.ts +78 -0
  16. package/lib/component/rendering/TilemapRenderer.d.ts +55 -0
  17. package/lib/core/Game.d.ts +6 -4
  18. package/lib/core/GameActor.d.ts +33 -4
  19. package/lib/core/GameObject.d.ts +26 -4
  20. package/lib/core/facades/AssetManagerFacade.d.ts +11 -0
  21. package/lib/core/facades/GameObjectManagerFacade.d.ts +7 -1
  22. package/lib/core/managers/AssetManager.d.ts +8 -4
  23. package/lib/core/managers/GameObjectManager.d.ts +1 -1
  24. package/lib/core/managers/HeadlessIterationManager.d.ts +29 -0
  25. package/lib/core/managers/IterationManager.d.ts +11 -3
  26. package/lib/core/managers/SceneManager.d.ts +5 -4
  27. package/lib/gameObject/GameCamera.d.ts +1 -2
  28. package/lib/index.cjs.js +15 -1
  29. package/lib/index.d.ts +5 -7
  30. package/lib/index.esm.js +15 -1
  31. package/lib/index.js +15 -1
  32. package/lib/input/GamepadController.d.ts +1 -1
  33. package/lib/input/MouseController.d.ts +1 -1
  34. package/lib/input/TouchController.d.ts +1 -1
  35. package/lib/physics/collision/CollisionManager.d.ts +1 -1
  36. package/lib/physics/collision/QuadTree.d.ts +1 -1
  37. package/lib/physics/collision/resolver/CollisionResolver.d.ts +1 -1
  38. package/lib/physics/collision/shape/Circumference.d.ts +1 -2
  39. package/lib/physics/collision/shape/Line.d.ts +1 -2
  40. package/lib/physics/collision/shape/Polygon.d.ts +1 -2
  41. package/lib/physics/collision/shape/Rectangle.d.ts +1 -1
  42. package/lib/physics/collision/shape/Shape.d.ts +1 -2
  43. package/lib/physics/rigodBody/RigidBodyData.d.ts +1 -1
  44. package/package.json +3 -2
  45. package/lib/Engine/Animation.d.ts +0 -12
  46. package/lib/Engine/Component.d.ts +0 -130
  47. package/lib/Engine/Components/Animator.d.ts +0 -20
  48. package/lib/Engine/Components/AudioPlayer.d.ts +0 -27
  49. package/lib/Engine/Components/Camera.d.ts +0 -30
  50. package/lib/Engine/Components/Colliders/AbstractColliderComponent.d.ts +0 -22
  51. package/lib/Engine/Components/Colliders/BoxCollider.d.ts +0 -32
  52. package/lib/Engine/Components/Colliders/TilemapCollider.d.ts +0 -15
  53. package/lib/Engine/Components/ComponentTypes.d.ts +0 -13
  54. package/lib/Engine/Components/Renderer/CsvTilemapRenderer.d.ts +0 -13
  55. package/lib/Engine/Components/Renderer/SpriteRenderer.d.ts +0 -46
  56. package/lib/Engine/Components/Renderer/TextRenderer.d.ts +0 -49
  57. package/lib/Engine/Components/Renderer/TiledTilemapRenderer.d.ts +0 -43
  58. package/lib/Engine/Components/Renderer/TilemapRenderer.d.ts +0 -72
  59. package/lib/Engine/Components/RigidBody.d.ts +0 -42
  60. package/lib/Engine/Components/Transform.d.ts +0 -30
  61. package/lib/Engine/Core/Asset/AssetManager.d.ts +0 -17
  62. package/lib/Engine/Core/Collision/Collider/ICollider.d.ts +0 -13
  63. package/lib/Engine/Core/Collision/Collider/RectangleCollider.d.ts +0 -31
  64. package/lib/Engine/Core/Collision/CollisionData.d.ts +0 -8
  65. package/lib/Engine/Core/Collision/CollisionManager.d.ts +0 -31
  66. package/lib/Engine/Core/Collision/QuadTree.d.ts +0 -32
  67. package/lib/Engine/Core/Collision/Resolver/AABBResolver.d.ts +0 -14
  68. package/lib/Engine/Core/Collision/Resolver/ICollisionResolver.d.ts +0 -5
  69. package/lib/Engine/Core/Collision/Resolver/SatResolver.d.ts +0 -14
  70. package/lib/Engine/Core/Collision/Shape/Rectangle.d.ts +0 -13
  71. package/lib/Engine/Core/Collision/Shape/Shape.d.ts +0 -28
  72. package/lib/Engine/Core/DependencyInjection/Config.d.ts +0 -3
  73. package/lib/Engine/Core/DependencyInjection/Container.d.ts +0 -12
  74. package/lib/Engine/Core/Dom/DomManager.d.ts +0 -9
  75. package/lib/Engine/Core/Exception/GameEngineException.d.ts +0 -4
  76. package/lib/Engine/Core/Exception/MiniEngineException.d.ts +0 -4
  77. package/lib/Engine/Core/GameLoop/IterationManager.d.ts +0 -18
  78. package/lib/Engine/Core/GameLoop/TimeManager.d.ts +0 -18
  79. package/lib/Engine/Core/GameObject/GameObjectManager.d.ts +0 -17
  80. package/lib/Engine/Core/Input/GamepadController.d.ts +0 -40
  81. package/lib/Engine/Core/Input/InputManager.d.ts +0 -11
  82. package/lib/Engine/Core/Input/KeyboardController.d.ts +0 -7
  83. package/lib/Engine/Core/Input/MouseController.d.ts +0 -21
  84. package/lib/Engine/Core/Input/TouchController.d.ts +0 -13
  85. package/lib/Engine/Core/Physics/PhysicsIterationManager.d.ts +0 -13
  86. package/lib/Engine/Core/Rendering/CameraData.d.ts +0 -9
  87. package/lib/Engine/Core/Rendering/Context2D/Context2DRenderer.d.ts +0 -19
  88. package/lib/Engine/Core/Rendering/CullingService.d.ts +0 -11
  89. package/lib/Engine/Core/Rendering/FontAtlasFactory.d.ts +0 -19
  90. package/lib/Engine/Core/Rendering/IContextRenderer.d.ts +0 -6
  91. package/lib/Engine/Core/Rendering/RenderData/ColliderRenderData.d.ts +0 -7
  92. package/lib/Engine/Core/Rendering/RenderData/GeometricRenderData.d.ts +0 -12
  93. package/lib/Engine/Core/Rendering/RenderData/ImageRenderData.d.ts +0 -22
  94. package/lib/Engine/Core/Rendering/RenderData/RenderData.d.ts +0 -22
  95. package/lib/Engine/Core/Rendering/RenderData/TextRenderData.d.ts +0 -22
  96. package/lib/Engine/Core/Rendering/RenderData/TilemapRenderData.d.ts +0 -22
  97. package/lib/Engine/Core/Rendering/RenderManager.d.ts +0 -22
  98. package/lib/Engine/Core/Rendering/WebGL/ProgramFactory.d.ts +0 -7
  99. package/lib/Engine/Core/Rendering/WebGL/ProgramManager.d.ts +0 -26
  100. package/lib/Engine/Core/Rendering/WebGL/Renderer/GeometricRenderer.d.ts +0 -22
  101. package/lib/Engine/Core/Rendering/WebGL/Renderer/ImageRenderer.d.ts +0 -16
  102. package/lib/Engine/Core/Rendering/WebGL/Renderer/TextRenderer.d.ts +0 -21
  103. package/lib/Engine/Core/Rendering/WebGL/Renderer/TilemapRenderer.d.ts +0 -19
  104. package/lib/Engine/Core/Rendering/WebGL/Shader/Legacy/imageFragmentShader.d.ts +0 -1
  105. package/lib/Engine/Core/Rendering/WebGL/Shader/Legacy/imageVertexShader.d.ts +0 -1
  106. package/lib/Engine/Core/Rendering/WebGL/Shader/imageFragmentShader.d.ts +0 -1
  107. package/lib/Engine/Core/Rendering/WebGL/Shader/imageVertexShader.d.ts +0 -1
  108. package/lib/Engine/Core/Rendering/WebGL/ShaderLoader.d.ts +0 -3
  109. package/lib/Engine/Core/Rendering/WebGL/TextureFactory.d.ts +0 -8
  110. package/lib/Engine/Core/Rendering/WebGL/TextureManager.d.ts +0 -11
  111. package/lib/Engine/Core/Rendering/WebGL/Utils.d.ts +0 -7
  112. package/lib/Engine/Core/Rendering/WebGL/WebGLRenderer.d.ts +0 -34
  113. package/lib/Engine/Core/Scene/SceneManager.d.ts +0 -18
  114. package/lib/Engine/Core/Tilemap/Tile.d.ts +0 -7
  115. package/lib/Engine/Core/Tilemap/TileData.d.ts +0 -10
  116. package/lib/Engine/Core/Time/GameIterationManager.d.ts +0 -11
  117. package/lib/Engine/Core/Time/GameLoopManager.d.ts +0 -10
  118. package/lib/Engine/Core/Time/TimeManager.d.ts +0 -18
  119. package/lib/Engine/Facades/AssetManagerFacade.d.ts +0 -28
  120. package/lib/Engine/Facades/DomManagerFacade.d.ts +0 -7
  121. package/lib/Engine/Facades/GameObjectManagerFacade.d.ts +0 -58
  122. package/lib/Engine/Facades/InputManagerFacade.d.ts +0 -12
  123. package/lib/Engine/Facades/SceneManagerFacade.d.ts +0 -17
  124. package/lib/Engine/Facades/TimeManagerFacade.d.ts +0 -9
  125. package/lib/Engine/Game.d.ts +0 -88
  126. package/lib/Engine/GameObject.d.ts +0 -157
  127. package/lib/Engine/GameObjects/GameCamera.d.ts +0 -17
  128. package/lib/Engine/GameObjects/SpacePointer.d.ts +0 -8
  129. package/lib/Engine/Math/Rectangle.d.ts +0 -50
  130. package/lib/Engine/Math/Rotation.d.ts +0 -16
  131. package/lib/Engine/Math/Utils.d.ts +0 -26
  132. package/lib/Engine/Math/Vector2.d.ts +0 -114
  133. package/lib/Engine/Scene.d.ts +0 -71
  134. package/lib/Engine/Sprite.d.ts +0 -31
  135. package/lib/Engine/Tileset.d.ts +0 -25
  136. package/lib/Engine/Utils/uuid.d.ts +0 -1
  137. package/lib/component/ComponentTypes.d.ts +0 -17
  138. package/lib/component/RigidBodyOld.d.ts +0 -39
  139. package/lib/component/colliderComponent/AbstractColliderComponent.d.ts +0 -22
  140. package/lib/component/colliderComponent/BoxCollider.d.ts +0 -32
  141. package/lib/component/colliderComponent/PolygonCollider.d.ts +0 -32
  142. package/lib/component/colliderComponent/TilemapCollider.d.ts +0 -15
  143. package/lib/component/colliderComponent/TriangleCollider.d.ts +0 -32
  144. package/lib/component/rendering/tilemap/CsvTilemapRenderer.d.ts +0 -13
  145. package/lib/component/rendering/tilemap/Tile.d.ts +0 -7
  146. package/lib/component/rendering/tilemap/TileData.d.ts +0 -10
  147. package/lib/component/rendering/tilemap/TiledTilemapRenderer.d.ts +0 -48
  148. package/lib/component/rendering/tilemap/TilemapRenderer.d.ts +0 -74
  149. package/lib/component/rendering/tilemap/Tileset.d.ts +0 -25
  150. package/lib/component/renderingComponent/MaskRenderer.d.ts +0 -29
  151. package/lib/component/renderingComponent/SpriteRenderer.d.ts +0 -46
  152. package/lib/component/renderingComponent/TextRenderer.d.ts +0 -49
  153. package/lib/component/renderingComponent/tilemap/CsvTilemapRenderer.d.ts +0 -13
  154. package/lib/component/renderingComponent/tilemap/Tile.d.ts +0 -7
  155. package/lib/component/renderingComponent/tilemap/TileData.d.ts +0 -10
  156. package/lib/component/renderingComponent/tilemap/TiledTilemapRenderer.d.ts +0 -43
  157. package/lib/component/renderingComponent/tilemap/TilemapRenderer.d.ts +0 -72
  158. package/lib/component/renderingComponent/tilemap/Tileset.d.ts +0 -25
  159. package/lib/core/managers/IterationManager copy.d.ts +0 -42
  160. package/lib/core/managers/IterationManagerOld.d.ts +0 -42
  161. package/lib/math/Rectangle.d.ts +0 -50
  162. package/lib/math/Rotation.d.ts +0 -13
  163. package/lib/math/Utils.d.ts +0 -39
  164. package/lib/math/Vector2.d.ts +0 -114
  165. package/lib/physics/PhysicsManager.d.ts +0 -24
  166. package/lib/physics/PhysicsManagerOld2.d.ts +0 -34
  167. package/lib/physics/collision/CollisionData.d.ts +0 -8
  168. package/lib/physics/collision/CollisionManagerOld.d.ts +0 -27
  169. package/lib/physics/collision/collider/ICollider.d.ts +0 -13
  170. package/lib/physics/collision/collider/RectangleCollider.d.ts +0 -31
  171. package/lib/physics/collision/resolver/CircumferenceCircumferenceResolver.d.ts +0 -7
  172. package/lib/physics/collision/resolver/CircumferencePolygonResolver.d.ts +0 -23
  173. package/lib/physics/collision/resolver/CircumferenceRectangleResolver.d.ts +0 -9
  174. package/lib/physics/collision/resolver/CollisionResolution.d.ts +0 -6
  175. package/lib/physics/collision/resolver/ICollisionResolver.d.ts +0 -5
  176. package/lib/physics/collision/resolver/PolygonPolygonResolver.d.ts +0 -15
  177. package/lib/physics/collision/resolver/RectangleRectangleResolver.d.ts +0 -11
  178. package/lib/physics/collision-old/CollisionData.d.ts +0 -8
  179. package/lib/physics/collision-old/CollisionManager.d.ts +0 -30
  180. package/lib/physics/collision-old/QuadTree.d.ts +0 -32
  181. package/lib/physics/collision-old/collider/ICollider.d.ts +0 -14
  182. package/lib/physics/collision-old/collider/RectangleCollider.d.ts +0 -32
  183. package/lib/physics/collision-old/resolver/AABBResolver.d.ts +0 -14
  184. package/lib/physics/collision-old/resolver/ICollisionResolver.d.ts +0 -5
  185. package/lib/physics/collision-old/resolver/SatResolver.d.ts +0 -14
  186. package/lib/physics/collision-old/shape/Rectangle.d.ts +0 -13
  187. package/lib/physics/collision-old/shape/Shape.d.ts +0 -28
  188. package/lib/rendering/CameraData.d.ts +0 -9
  189. package/lib/rendering/ContextRenderer.d.ts +0 -6
  190. package/lib/rendering/CullingService.d.ts +0 -10
  191. package/lib/rendering/FontAtlasFactory.d.ts +0 -24
  192. package/lib/rendering/RenderManager.d.ts +0 -22
  193. package/lib/rendering/context2D/Context2DRenderer.d.ts +0 -19
  194. package/lib/rendering/renderData/ColliderRenderData.d.ts +0 -7
  195. package/lib/rendering/renderData/GeometricRenderData.d.ts +0 -17
  196. package/lib/rendering/renderData/ImageRenderData.d.ts +0 -22
  197. package/lib/rendering/renderData/MaskRenderData.d.ts +0 -9
  198. package/lib/rendering/renderData/RenderData.d.ts +0 -22
  199. package/lib/rendering/renderData/TextRenderData.d.ts +0 -22
  200. package/lib/rendering/renderData/TilemapRenderData.d.ts +0 -28
  201. package/lib/rendering/webGL/ProgramFactory.d.ts +0 -7
  202. package/lib/rendering/webGL/ProgramManager.d.ts +0 -26
  203. package/lib/rendering/webGL/ShaderLoader.d.ts +0 -3
  204. package/lib/rendering/webGL/TextureFactory.d.ts +0 -8
  205. package/lib/rendering/webGL/TextureManager.d.ts +0 -11
  206. package/lib/rendering/webGL/Utils.d.ts +0 -7
  207. package/lib/rendering/webGL/WebGLRenderer.d.ts +0 -36
  208. package/lib/rendering/webGL/renderer/GeometricRenderer.d.ts +0 -21
  209. package/lib/rendering/webGL/renderer/ImageRenderer.d.ts +0 -16
  210. package/lib/rendering/webGL/renderer/MaskRenderer.d.ts +0 -14
  211. package/lib/rendering/webGL/renderer/TextRenderer.d.ts +0 -21
  212. package/lib/rendering/webGL/renderer/TilemapRenderer.d.ts +0 -19
  213. package/lib/rendering/webGL/shader/imageFragmentShader.d.ts +0 -1
  214. package/lib/rendering/webGL/shader/imageVertexShader.d.ts +0 -1
  215. package/lib/rendering/webGL/shader/legacy/imageFragmentShader.d.ts +0 -1
  216. package/lib/rendering/webGL/shader/legacy/imageVertexShader.d.ts +0 -1
@@ -0,0 +1,2 @@
1
+ {
2
+ }
@@ -10,10 +10,13 @@ export declare class Animator extends EngineComponent {
10
10
  private spriteRenderer;
11
11
  private animations;
12
12
  private currentAnimation;
13
+ private paused;
13
14
  protected init({ spriteRenderer }: AnimatorOptions): void;
14
15
  protected update(): void;
15
- addAnimation(name: string, animation: Animation, framerate?: number): this;
16
- playAnimation(name: string): void;
16
+ addAnimation(animation: Animation, name?: string, framerate?: number): this;
17
+ playAnimation(name?: string): void;
18
+ pause(): void;
19
+ resume(): void;
17
20
  stopAnimation(): void;
18
21
  isPlayingAnimation(name: string): boolean;
19
22
  }
@@ -0,0 +1,42 @@
1
+ import { Component } from "../core/Component";
2
+ import { InitOptions } from "../core/GameActor";
3
+ import { Vector2 } from "angry-pixel-math";
4
+ export declare enum ButtonType {
5
+ Rectangle = 0,
6
+ Circumference = 1
7
+ }
8
+ export interface ButtonOptions extends InitOptions {
9
+ type: ButtonType;
10
+ width?: number;
11
+ height?: number;
12
+ radius?: number;
13
+ touchEnabled?: boolean;
14
+ offset?: Vector2;
15
+ }
16
+ export declare class Button extends Component {
17
+ readonly allowMultiple: boolean;
18
+ type: ButtonType;
19
+ width: number;
20
+ height: number;
21
+ radius: number;
22
+ touchEnabled: boolean;
23
+ private _offset;
24
+ pressed: boolean;
25
+ private mouse;
26
+ private touch;
27
+ private position;
28
+ private distance;
29
+ private pressedLastFrame;
30
+ private scaled;
31
+ onClick: () => void;
32
+ onPressed: () => void;
33
+ get offset(): Vector2;
34
+ set offset(offset: Vector2);
35
+ protected init({ type, height, radius, touchEnabled, width, offset }: ButtonOptions): void;
36
+ protected update(): void;
37
+ private scale;
38
+ protected resolveMouseAndRectangle(): void;
39
+ protected resolveMouseAndCircumference(): void;
40
+ protected resolveTouchAndRectangle(): void;
41
+ protected resolveTouchAndCircumference(): void;
42
+ }
@@ -1,28 +1,20 @@
1
1
  import { CameraComponent } from "../core/Component";
2
- import { Rectangle } from "../math/Rectangle";
2
+ import { Rectangle } from "angry-pixel-math";
3
3
  export declare class Camera extends CameraComponent {
4
4
  readonly allowMultiple: boolean;
5
5
  private renderManager;
6
- private _layers;
7
- private _depth;
8
- private _zoom;
9
- private _originalViewportRect;
10
- private _viewportRect;
11
- private _worldSpaceRect;
12
6
  private canvas;
7
+ readonly viewportRect: Rectangle;
8
+ readonly worldSpaceRect: Rectangle;
9
+ depth: number;
10
+ layers: string[];
11
+ private _zoom;
13
12
  private cameraData;
14
- set layers(layers: string[]);
15
- get layers(): string[];
16
- set depth(depth: number);
17
- get depth(): number;
18
13
  set zoom(zoom: number);
19
14
  get zoom(): number;
20
- get originalViewportRect(): Rectangle;
21
- get worldSpaceRect(): Rectangle;
22
- get viewportRect(): Rectangle;
23
15
  addLayer(layer: string): void;
16
+ protected init(): void;
24
17
  protected update(): void;
25
- private updateOriginalViewportRect;
26
18
  private updateViewportRect;
27
19
  private updateWorldSpaceRect;
28
20
  private updateCameraData;
@@ -1,5 +1,5 @@
1
1
  import { EngineComponent } from "../core/Component";
2
- import { Vector2 } from "../math/Vector2";
2
+ import { Vector2 } from "angry-pixel-math";
3
3
  import { RigidBodyType } from "../physics/rigodBody/RigidBodyManager";
4
4
  import { InitOptions } from "../core/GameActor";
5
5
  export { RigidBodyType } from "../physics/rigodBody/RigidBodyManager";
@@ -1,31 +1,22 @@
1
- import { Vector2 } from "../math/Vector2";
1
+ import { Vector2 } from "angry-pixel-math";
2
+ import { Slice } from "angry-pixel-2d-renderer";
3
+ export { Slice };
2
4
  export interface SpriteConfig {
3
5
  image: HTMLImageElement;
4
6
  scale?: Vector2;
5
- slice?: Slice | null;
7
+ slice?: Slice;
6
8
  smooth?: boolean;
7
9
  }
8
- export interface Slice {
9
- x: number;
10
- y: number;
11
- width: number;
12
- height: number;
13
- }
14
10
  export declare class Sprite {
15
- private _image;
16
- private _slice;
17
- private _scale;
18
- private _smooth;
11
+ readonly image: HTMLImageElement;
12
+ readonly slice: Slice;
13
+ readonly scale: Vector2;
14
+ readonly smooth: boolean;
19
15
  private _width;
20
16
  private _height;
21
17
  private _loaded;
22
18
  constructor(config: SpriteConfig);
23
- get loaded(): boolean;
24
- get image(): HTMLImageElement;
25
- get slice(): Slice;
26
- get scale(): Vector2;
27
- get smooth(): boolean;
28
19
  get width(): number;
29
20
  get height(): number;
30
- private onLoad;
21
+ get loaded(): boolean;
31
22
  }
@@ -1,6 +1,5 @@
1
1
  import { TransformComponent } from "../core/Component";
2
- import { Rotation } from "../math/Rotation";
3
- import { Vector2 } from "../math/Vector2";
2
+ import { Rotation, Vector2 } from "angry-pixel-math";
4
3
  export declare class Transform extends TransformComponent {
5
4
  readonly allowMultiple: boolean;
6
5
  parentScale: boolean;
@@ -23,8 +22,8 @@ export declare class Transform extends TransformComponent {
23
22
  get innerPosition(): Vector2;
24
23
  set innerPosition(innerPosition: Vector2);
25
24
  get parent(): Transform | null;
25
+ set parent(parent: Transform | null);
26
26
  protected update(): void;
27
- private setParent;
28
27
  private setPositionFromParent;
29
28
  private translateInnerPosition;
30
29
  private updateScaledInnerPosition;
@@ -1,6 +1,6 @@
1
1
  import { Collider } from "./Collider";
2
- import { Rotation } from "../../math/Rotation";
3
2
  import { InitOptions } from "../../core/GameActor";
3
+ import { Rotation } from "angry-pixel-math";
4
4
  export interface BoxColliderOptions extends InitOptions {
5
5
  width: number;
6
6
  height: number;
@@ -1,8 +1,7 @@
1
1
  import { Collider } from "./Collider";
2
- import { Vector2 } from "../../math/Vector2";
3
- import { Rotation } from "../../math/Rotation";
4
2
  import { GameObject } from "../../core/GameObject";
5
3
  import { InitOptions } from "../../core/GameActor";
4
+ import { Vector2, Rotation } from "angry-pixel-math";
6
5
  export interface EdgeColliderOptions extends InitOptions {
7
6
  vertexModel: Vector2[];
8
7
  offsetX?: number;
@@ -24,7 +23,7 @@ export declare class EdgeCollider extends Collider {
24
23
  private finalRotation;
25
24
  private innerPosition;
26
25
  constructor(gameObject: GameObject, name?: string);
27
- protected config(config: EdgeColliderOptions): void;
26
+ protected init(config: EdgeColliderOptions): void;
28
27
  protected start(): void;
29
28
  protected update(): void;
30
29
  private updateSize;
@@ -1,8 +1,9 @@
1
1
  import { Collider } from "./Collider";
2
- import { Vector2 } from "../../math/Vector2";
3
- import { Rotation } from "../../math/Rotation";
2
+ import { ColliderData } from "../../physics/collision/ColliderData";
3
+ import { RenderComponent } from "../../core/Component";
4
4
  import { InitOptions } from "../../core/GameActor";
5
5
  import { GameObject } from "../../core/GameObject";
6
+ import { Vector2, Rotation } from "angry-pixel-math";
6
7
  export interface PolygonColliderOptions extends InitOptions {
7
8
  vertexModel: Vector2[];
8
9
  offsetX?: number;
@@ -32,3 +33,12 @@ export declare class PolygonCollider extends Collider {
32
33
  private translate;
33
34
  private updateShape;
34
35
  }
36
+ export declare class PolygonColliderRenderer extends RenderComponent {
37
+ private renderManager;
38
+ private renderData;
39
+ private collider;
40
+ protected init({ collider }: {
41
+ collider: ColliderData;
42
+ }): void;
43
+ protected update(): void;
44
+ }
@@ -1,17 +1,28 @@
1
- import { TilemapRenderer } from "../rendering/tilemap/TilemapRenderer";
1
+ import { ITilemapRenderer } from "../rendering/TilemapRenderer";
2
2
  import { Collider } from "./Collider";
3
3
  import { InitOptions } from "../../core/GameActor";
4
4
  export interface TilemapColliderOptions extends InitOptions {
5
- tilemapRenderer: TilemapRenderer;
5
+ tilemapRenderer: ITilemapRenderer;
6
+ composite?: boolean;
6
7
  layer?: string;
7
8
  debug?: boolean;
8
9
  }
9
10
  export declare class TilemapCollider extends Collider {
10
11
  private tilemapRenderer;
11
12
  private debug;
12
- private cacheVertex;
13
+ private composite;
14
+ private scaledWidth;
15
+ private scaledHeight;
16
+ private scaledTileWidth;
17
+ private scaledTileHeight;
18
+ private position;
13
19
  protected init(config: TilemapColliderOptions): void;
14
20
  protected start(): void;
21
+ private useBoxColliders;
22
+ private useLineColliders;
23
+ private hasTile;
24
+ private addLineCollider;
15
25
  private needsCollider;
26
+ private getNeighbors;
16
27
  protected update(): void;
17
28
  }
@@ -1,8 +1,6 @@
1
1
  import { RenderComponent } from "../../core/Component";
2
- import { Rotation } from "../../math/Rotation";
3
- import { Vector2 } from "../../math/Vector2";
4
- import { InitOptions } from "../../core/GameActor";
5
- export interface MaskRendererOptions extends InitOptions {
2
+ import { Vector2, Rotation } from "angry-pixel-math";
3
+ export interface MaskRendererOptions {
6
4
  width: number;
7
5
  height: number;
8
6
  color: string;
@@ -1,12 +1,9 @@
1
1
  import { RenderComponent } from "../../core/Component";
2
- import { Rotation } from "../../math/Rotation";
3
- import { Vector2 } from "../../math/Vector2";
4
2
  import { Sprite } from "../Sprite";
5
- import { InitOptions } from "../../core/GameActor";
6
- export interface SpriteRendererOptions extends InitOptions {
3
+ import { Rotation, Vector2 } from "angry-pixel-math";
4
+ export interface SpriteRendererOptions {
7
5
  sprite?: Sprite;
8
6
  offset?: Vector2;
9
- smooth?: boolean;
10
7
  rotation?: Rotation;
11
8
  flipHorizontal?: boolean;
12
9
  flipVertical?: boolean;
@@ -19,17 +16,16 @@ export interface SpriteRendererOptions extends InitOptions {
19
16
  }
20
17
  export declare class SpriteRenderer extends RenderComponent {
21
18
  private renderManager;
22
- sprite: Sprite | null;
19
+ sprite: Sprite;
23
20
  offset: Vector2;
24
21
  flipHorizontal: boolean;
25
22
  flipVertical: boolean;
26
23
  rotation: Rotation;
27
- smooth: boolean;
28
24
  opacity: number;
29
25
  private _tiled;
30
- maskColor: string | null;
26
+ maskColor: string;
31
27
  maskColorMix: number;
32
- tintColor: string | null;
28
+ tintColor: string;
33
29
  layer: string;
34
30
  private renderData;
35
31
  private innerPosition;
@@ -1,12 +1,10 @@
1
1
  import { RenderComponent } from "../../core/Component";
2
- import { Orientation } from "../../rendering/renderData/TextRenderData";
3
- import { Rotation } from "../../math/Rotation";
4
- import { Vector2 } from "../../math/Vector2";
5
- import { InitOptions } from "../../core/GameActor";
6
- export interface TextRendererOptions extends InitOptions {
2
+ import { Rotation, Vector2 } from "angry-pixel-math";
3
+ import { TextOrientation } from "angry-pixel-2d-renderer";
4
+ export { TextOrientation };
5
+ export interface TextRendererOptions {
7
6
  text: string;
8
- fontFamily: string;
9
- fontUrl?: string;
7
+ font: FontFace | string;
10
8
  fontSize?: number;
11
9
  color?: string;
12
10
  lineSeparation?: number;
@@ -14,18 +12,17 @@ export interface TextRendererOptions extends InitOptions {
14
12
  width?: number;
15
13
  height?: number;
16
14
  offset?: Vector2;
17
- smooth?: boolean;
18
15
  charRanges?: number[];
19
- bitmapSize?: number;
20
- bitmapOffset?: Vector2;
16
+ smooth?: boolean;
21
17
  rotation?: Rotation;
22
18
  opacity?: number;
23
- orientation?: Orientation;
19
+ orientation?: TextOrientation;
20
+ bitmapMargin?: Vector2;
21
+ bitmapSpacing?: Vector2;
24
22
  }
25
23
  export declare class TextRenderer extends RenderComponent {
26
24
  text: string;
27
- fontFamily: string;
28
- fontUrl: string;
25
+ font: FontFace | string;
29
26
  fontSize: number;
30
27
  width: number;
31
28
  height: number;
@@ -33,13 +30,13 @@ export declare class TextRenderer extends RenderComponent {
33
30
  color: string;
34
31
  lineSeparation: number;
35
32
  letterSpacing: number;
36
- bitmapSize: number;
37
33
  charRanges: number[];
38
34
  smooth: boolean;
39
- bitmapOffset: Vector2;
40
35
  rotation: Rotation;
41
36
  opacity: number;
42
- orientation: Orientation;
37
+ orientation: TextOrientation;
38
+ bitmapMargin: Vector2;
39
+ bitmapSpacing: Vector2;
43
40
  private renderManager;
44
41
  private renderData;
45
42
  private lastFrameText;
@@ -0,0 +1,78 @@
1
+ import { RenderComponent } from "../../core/Component";
2
+ import { ITilemapRenderer, Tileset, TilemapOrientation } from "./TilemapRenderer";
3
+ export interface TiledTilemapRendererOptions {
4
+ tiledData: TiledTilemap;
5
+ tilemapLayer: string;
6
+ tileset: Tileset;
7
+ tileWidth: number;
8
+ tileHeight: number;
9
+ layer?: string;
10
+ orientation?: TilemapOrientation;
11
+ smooth?: boolean;
12
+ }
13
+ export declare class TiledTilemapRenderer extends RenderComponent implements ITilemapRenderer {
14
+ private renderManager;
15
+ tiles: number[];
16
+ tileWidth: number;
17
+ tileHeight: number;
18
+ width: number;
19
+ height: number;
20
+ orientation: TilemapOrientation;
21
+ tintColor: string;
22
+ alpha: number;
23
+ private tiledData;
24
+ private tilemapLayer;
25
+ private tileset;
26
+ private layer;
27
+ private smooth?;
28
+ private tilesetTileIds;
29
+ private chunks;
30
+ private scaledTileWidth;
31
+ private scaledTileHeight;
32
+ realWidth: number;
33
+ realHeight: number;
34
+ private renderData;
35
+ protected init({ tiledData, tilemapLayer, tileset, tileWidth, tileHeight, layer, orientation, smooth, }: TiledTilemapRendererOptions): void;
36
+ protected update(): void;
37
+ private processTilemap;
38
+ private processChunk;
39
+ private getTilesetTileId;
40
+ private updateRenderData;
41
+ }
42
+ export interface TiledTilemap {
43
+ width: number;
44
+ height: number;
45
+ infinite: boolean;
46
+ layers: TiledLayer[];
47
+ renderorder: string;
48
+ tilesets: {
49
+ firstgid: number;
50
+ }[];
51
+ tilewidth: number;
52
+ tileheight: number;
53
+ }
54
+ export interface TiledChunk {
55
+ data: number[];
56
+ x: number;
57
+ y: number;
58
+ width: number;
59
+ height: number;
60
+ }
61
+ export interface TiledLayer {
62
+ name: string;
63
+ id: number;
64
+ chunks?: TiledChunk[];
65
+ data?: number[];
66
+ x: number;
67
+ y: number;
68
+ type: string;
69
+ width: number;
70
+ height: number;
71
+ opacity: number;
72
+ visible: boolean;
73
+ startx?: number;
74
+ starty?: number;
75
+ offsetx?: number;
76
+ offsety?: number;
77
+ tintcolor?: string;
78
+ }
@@ -0,0 +1,55 @@
1
+ import { TilemapOrientation } from "angry-pixel-2d-renderer";
2
+ import { Vector2 } from "angry-pixel-math";
3
+ import { RenderComponent } from "../../core/Component";
4
+ export { TilemapOrientation };
5
+ export interface Tileset {
6
+ image: HTMLImageElement;
7
+ width: number;
8
+ tileWidth: number;
9
+ tileHeight: number;
10
+ margin?: Vector2;
11
+ spacing?: Vector2;
12
+ }
13
+ export interface TilemapRendererOptions {
14
+ tiles: string;
15
+ tileset: Tileset;
16
+ width: number;
17
+ tileWidth: number;
18
+ tileHeight: number;
19
+ layer?: string;
20
+ orientation?: TilemapOrientation;
21
+ alpha?: number;
22
+ tintColor?: string;
23
+ smooth?: boolean;
24
+ }
25
+ export interface ITilemapRenderer {
26
+ tiles: number[];
27
+ width: number;
28
+ height: number;
29
+ tileWidth: number;
30
+ tileHeight: number;
31
+ orientation: TilemapOrientation;
32
+ realWidth: number;
33
+ realHeight: number;
34
+ }
35
+ export declare class TilemapRenderer extends RenderComponent implements ITilemapRenderer {
36
+ private renderManager;
37
+ tiles: number[];
38
+ width: number;
39
+ height: number;
40
+ tileWidth: number;
41
+ tileHeight: number;
42
+ tintColor: string;
43
+ alpha: number;
44
+ orientation: TilemapOrientation;
45
+ private tileset;
46
+ private renderData;
47
+ private layer;
48
+ private scaledTileWidth;
49
+ private scaledTileHeight;
50
+ realWidth: number;
51
+ realHeight: number;
52
+ protected init({ tiles, tileset, tileWidth, tileHeight, width, layer, orientation, alpha, tintColor, smooth, }: TilemapRendererOptions): void;
53
+ protected update(): void;
54
+ private updateRenderData;
55
+ }
@@ -1,17 +1,18 @@
1
1
  import { SceneClass } from "../core/managers/SceneManager";
2
2
  import { Container } from "../utils/Container";
3
- import { Rectangle } from "../math/Rectangle";
4
- import { Vector2 } from "../math/Vector2";
3
+ import { Rectangle, Vector2 } from "angry-pixel-math";
5
4
  import { CollisionMatrix } from "../physics/collision/CollisionManager";
5
+ import { InitOptions } from "./GameActor";
6
6
  export declare const container: Container;
7
7
  export interface GameConfig {
8
- containerNode: HTMLElement | null;
8
+ containerNode?: HTMLElement | null;
9
9
  gameWidth?: number;
10
10
  gameHeight?: number;
11
11
  debugEnabled?: boolean;
12
12
  canvasColor?: string;
13
13
  physicsFramerate?: number;
14
14
  spriteDefaultScale?: Vector2 | null;
15
+ headless?: boolean;
15
16
  collisions?: {
16
17
  method?: CollisionMethodConfig;
17
18
  quadTreeBounds?: Rectangle | null;
@@ -43,9 +44,10 @@ export declare class Game {
43
44
  *
44
45
  * @param sceneClass the class of the scene
45
46
  * @param name The name of the scene
47
+ * @param options [optional] This options will be passed to the init method
46
48
  * @param openingScene [default FALSE] If this is the opening scene, set TRUE, FALSE instead
47
49
  */
48
- addScene(sceneClass: SceneClass, name: string, openingScene?: boolean): void;
50
+ addScene(sceneClass: SceneClass, name: string, options?: InitOptions, openingScene?: boolean): void;
49
51
  /**
50
52
  * Run the game
51
53
  */
@@ -2,7 +2,7 @@ import { GameObject, GameObjectClass } from "./GameObject";
2
2
  import { GameObjectManager } from "./managers/GameObjectManager";
3
3
  import { FrameEvent } from "./managers/IterationManager";
4
4
  export interface InitOptions {
5
- [key: string]: unknown;
5
+ [key: string]: any;
6
6
  }
7
7
  export declare abstract class GameActor {
8
8
  protected readonly gameObjectManager: GameObjectManager;
@@ -25,6 +25,29 @@ export declare abstract class GameActor {
25
25
  * This method is called before destruction.
26
26
  */
27
27
  protected onDestroy?(): void;
28
+ /**
29
+ * Adds a new game object to the scene.
30
+ * @param gameObjectClass The game object class
31
+ * @returns The added game object
32
+ * @returns
33
+ */
34
+ protected addGameObject<T extends GameObject>(gameObjectClass: GameObjectClass<T>): T;
35
+ /**
36
+ * Adds a new game object to the scene.
37
+ * @param gameObjectClass The game object class
38
+ * @param name The name of the game object
39
+ * @returns The added game object
40
+ * @returns
41
+ */
42
+ protected addGameObject<T extends GameObject>(gameObjectClass: GameObjectClass<T>, name: string): T;
43
+ /**
44
+ * Adds a new game object to the scene.
45
+ * @param gameObjectClass The game object class
46
+ * @param options This options will be passed to the init method
47
+ * @returns The added game object
48
+ * @returns
49
+ */
50
+ protected addGameObject<T extends GameObject>(gameObjectClass: GameObjectClass<T>, options: InitOptions): T;
28
51
  /**
29
52
  * Adds a new game object to the scene.
30
53
  * @param gameObjectClass The game object class
@@ -33,24 +56,30 @@ export declare abstract class GameActor {
33
56
  * @returns The added game object
34
57
  * @returns
35
58
  */
36
- protected addGameObject<T extends GameObject>(gameObjectClass: GameObjectClass<T>, options?: InitOptions, name?: string): T;
59
+ protected addGameObject<T extends GameObject>(gameObjectClass: GameObjectClass<T>, options?: InitOptions | string, name?: string): T;
37
60
  /**
38
61
  * Returns all the game objects in the scene.
39
62
  * @returns The found game objects
40
63
  */
41
64
  protected findGameObjects(): GameObject[];
65
+ /**
66
+ * Returns a collection of found game objects for the given class
67
+ * @param gameObjectClass The game object class to find
68
+ * @returns The found game objects
69
+ */
70
+ protected findGameObjects<T extends GameObject>(gameObjectClass: GameObjectClass<T>): T[];
42
71
  /**
43
72
  * Returns the first game object found for the given class, or undefined otherwise.
44
73
  * @param gameObjectClass The game object class to find
45
74
  * @returns The found game object
46
75
  */
47
- findGameObject<T extends GameObject>(gameObjectClass: GameObjectClass<T>): T;
76
+ protected findGameObject<T extends GameObject>(gameObjectClass: GameObjectClass<T>): T;
48
77
  /**
49
78
  * Returns the first game object found for the given name, or undefined otherwise.
50
79
  * @param name The name of the game object to find
51
80
  * @returns The found game object
52
81
  */
53
- findGameObject<T extends GameObject>(name: string): T;
82
+ protected findGameObject<T extends GameObject>(name: string): T;
54
83
  /**
55
84
  * Returns a collection of game objects found for the given tag
56
85
  * @param tag The tag of the game objects to find
@@ -12,7 +12,7 @@ export declare class GameObject extends GameActor {
12
12
  layer: string;
13
13
  ui: boolean;
14
14
  keep: boolean;
15
- parent: GameObject | null;
15
+ private _parent;
16
16
  private _active;
17
17
  private sceneManager;
18
18
  private components;
@@ -21,6 +21,8 @@ export declare class GameObject extends GameActor {
21
21
  constructor(name?: string, parent?: GameObject);
22
22
  get active(): boolean;
23
23
  set active(active: boolean);
24
+ get parent(): GameObject | null;
25
+ set parent(parent: GameObject | null);
24
26
  private updateComponentsActiveStatus;
25
27
  private updateChildrenActiveStatus;
26
28
  get transform(): Transform;
@@ -36,11 +38,31 @@ export declare class GameObject extends GameActor {
36
38
  /**
37
39
  * Add a component to the game obejct
38
40
  * @param componentClass The class of the component
39
- * @param options [optional] The options passed to the init method of the component
40
- * @param name [optional] The name of the component
41
41
  * @returns The added component
42
42
  */
43
- addComponent<ComponentType extends Component = Component, OptionsType extends InitOptions = InitOptions>(componentClass: ComponentClass<ComponentType>, options?: OptionsType, name?: string): ComponentType;
43
+ addComponent<ComponentType extends Component = Component>(componentClass: ComponentClass<ComponentType>): ComponentType;
44
+ /**
45
+ * Add a component to the game obejct
46
+ * @param componentClass The class of the component
47
+ * @param options The options passed to the init method of the component
48
+ * @returns The added component
49
+ */
50
+ addComponent<ComponentType extends Component = Component, OptionsType extends InitOptions = InitOptions>(componentClass: ComponentClass<ComponentType>, options: OptionsType): ComponentType;
51
+ /**
52
+ * Add a component to the game obejct
53
+ * @param componentClass The class of the component
54
+ * @param name The name of the component
55
+ * @returns The added component
56
+ */
57
+ addComponent<ComponentType extends Component = Component>(componentClass: ComponentClass<ComponentType>, name: string): ComponentType;
58
+ /**
59
+ * Add a component to the game obejct
60
+ * @param componentClass The class of the component
61
+ * @param options The options passed to the init method of the component
62
+ * @param name The name of the component
63
+ * @returns The added component
64
+ */
65
+ addComponent<ComponentType extends Component = Component, OptionsType extends InitOptions = InitOptions>(componentClass: ComponentClass<ComponentType>, options: OptionsType, name: string): ComponentType;
44
66
  private checkMultipleComponent;
45
67
  /**
46
68
  * Returns all the components in the game object.