evotars 0.0.2 → 0.0.3

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 (73) hide show
  1. package/dist/app.d.ts +19 -0
  2. package/dist/config/config.d.ts +22 -0
  3. package/dist/config/constants.d.ts +1 -0
  4. package/dist/entities/EmoteSpitter.d.ts +15 -0
  5. package/dist/entities/Evotar.d.ts +79 -0
  6. package/dist/entities/Message.d.ts +27 -0
  7. package/dist/entities/Name.d.ts +14 -0
  8. package/dist/entities/SpriteContainer.d.ts +16 -0
  9. package/dist/entities/TrailEffect.d.ts +15 -0
  10. package/dist/evotars.d.ts +14 -0
  11. package/dist/evotars.js +789 -0
  12. package/dist/evotars.umd.cjs +1 -0
  13. package/dist/helpers/timer.d.ts +14 -0
  14. package/dist/helpers/types.d.ts +10 -0
  15. package/dist/index.d.ts +1 -0
  16. package/dist/services/assetsLoader.d.ts +14 -0
  17. package/dist/services/evotarsManager.d.ts +30 -0
  18. package/dist/services/soundService.d.ts +12 -0
  19. package/dist/services/spriteProvider.d.ts +33 -0
  20. package/dist/types/dto/action.d.ts +49 -0
  21. package/{src/types/dto/chatter.ts → dist/types/dto/chatter.d.ts} +2 -2
  22. package/dist/types/dto/event.d.ts +9 -0
  23. package/dist/types/dto/message.d.ts +8 -0
  24. package/dist/types/dto/settings.d.ts +5 -0
  25. package/dist/types/dto/user.d.ts +12 -0
  26. package/package.json +30 -3
  27. package/.editorconfig +0 -13
  28. package/.prettierrc.json +0 -3
  29. package/index.html +0 -13
  30. package/index.ts +0 -1
  31. package/public/fonts/Rubik.ttf +0 -0
  32. package/public/sounds/jump.mp3 +0 -0
  33. package/public/sprites/agent/agent.json +0 -166
  34. package/public/sprites/agent/agent.png +0 -0
  35. package/public/sprites/cat/cat.json +0 -231
  36. package/public/sprites/cat/cat.png +0 -0
  37. package/public/sprites/dude/dude.json +0 -231
  38. package/public/sprites/dude/dude.png +0 -0
  39. package/public/sprites/girl/girl.json +0 -231
  40. package/public/sprites/girl/girl.png +0 -0
  41. package/public/sprites/nerd/nerd.json +0 -231
  42. package/public/sprites/nerd/nerd.png +0 -0
  43. package/public/sprites/senior/senior.json +0 -231
  44. package/public/sprites/senior/senior.png +0 -0
  45. package/public/sprites/sith/sith.json +0 -166
  46. package/public/sprites/sith/sith.png +0 -0
  47. package/src/app.ts +0 -63
  48. package/src/config/config.ts +0 -133
  49. package/src/config/constants.ts +0 -1
  50. package/src/dudes.ts +0 -71
  51. package/src/entities/Dude.ts +0 -453
  52. package/src/entities/DudeEmoteSpitter.ts +0 -60
  53. package/src/entities/DudeMessage.ts +0 -163
  54. package/src/entities/DudeName.ts +0 -39
  55. package/src/entities/DudeSpriteContainer.ts +0 -68
  56. package/src/entities/DudeTrailEffect.ts +0 -72
  57. package/src/helpers/timer.ts +0 -43
  58. package/src/helpers/types.ts +0 -11
  59. package/src/index.ts +0 -1
  60. package/src/main.ts +0 -75
  61. package/src/services/assetsLoader.ts +0 -27
  62. package/src/services/dudesManager.ts +0 -305
  63. package/src/services/soundService.ts +0 -28
  64. package/src/services/spriteProvider.ts +0 -93
  65. package/src/styles.css +0 -16
  66. package/src/types/dto/action.ts +0 -68
  67. package/src/types/dto/event.ts +0 -9
  68. package/src/types/dto/message.ts +0 -8
  69. package/src/types/dto/settings.ts +0 -5
  70. package/src/types/dto/user.ts +0 -13
  71. package/tsconfig.json +0 -23
  72. /package/{src/types/dto/index.ts → dist/types/dto/index.d.ts} +0 -0
  73. /package/{src/types/index.ts → dist/types/index.d.ts} +0 -0
package/dist/app.d.ts ADDED
@@ -0,0 +1,19 @@
1
+ import { SettingsEntity } from './types';
2
+ import { SoundManifest } from './services/soundService';
3
+ import { Evotar } from './entities/Evotar';
4
+ import * as PIXI from 'pixi.js';
5
+ export type AppOptions = {
6
+ manifest: PIXI.AssetsManifest;
7
+ sound: SoundManifest;
8
+ };
9
+ export declare class App {
10
+ stage: PIXI.Container;
11
+ evotars: Record<string, Evotar>;
12
+ chatterIds: string[];
13
+ settings: SettingsEntity;
14
+ renderer: PIXI.Renderer;
15
+ init(options: AppOptions, element: HTMLElement): Promise<void>;
16
+ updateSettings(data: SettingsEntity): void;
17
+ update(): void;
18
+ }
19
+ export declare const app: App;
@@ -0,0 +1,22 @@
1
+ export type Sprites = {
2
+ [key: string]: SpriteConfig;
3
+ };
4
+ export type Config = {
5
+ sprites: Sprites;
6
+ };
7
+ export type SpriteConfig = {
8
+ name: string;
9
+ w: number;
10
+ h: number;
11
+ collider: {
12
+ x: number;
13
+ y: number;
14
+ w: number;
15
+ h: number;
16
+ };
17
+ pivot: {
18
+ x: number;
19
+ y: number;
20
+ };
21
+ };
22
+ export declare const config: Config;
@@ -0,0 +1 @@
1
+ export declare const FIXED_DELTA_TIME: number;
@@ -0,0 +1,15 @@
1
+ import { Point } from '../helpers/types';
2
+ import * as PIXI from 'pixi.js';
3
+ export type EvotarEmoteSpitterProps = {
4
+ position: Point;
5
+ };
6
+ export declare class EvotarEmoteSpitter {
7
+ container: PIXI.Container;
8
+ private emotes;
9
+ private moveSpeed;
10
+ private alphaSpeed;
11
+ private scaleSpeed;
12
+ private timer?;
13
+ add(url: string): void;
14
+ update(props: EvotarEmoteSpitterProps): void;
15
+ }
@@ -0,0 +1,79 @@
1
+ import { EvotarTrailEffect } from './TrailEffect';
2
+ import { EvotarSpriteTags } from '../services/spriteProvider';
3
+ import { Timer } from '../helpers/timer';
4
+ import { SpriteConfig } from '../config/config';
5
+ import * as TWEEN from '@tweenjs/tween.js';
6
+ import * as PIXI from 'pixi.js';
7
+ export type EvotarProps = {
8
+ name?: string;
9
+ sprite?: SpriteConfig;
10
+ color?: PIXI.Color;
11
+ direction?: number;
12
+ scale?: number;
13
+ isAnonymous?: boolean;
14
+ zIndex?: number;
15
+ };
16
+ export type EvotarSpawnProps = {
17
+ isFalling?: boolean;
18
+ positionX?: number;
19
+ onComplete?: () => void;
20
+ };
21
+ export type EvotarDepawnProps = {
22
+ onComplete?: () => void;
23
+ };
24
+ type UserProps = {
25
+ color?: PIXI.Color;
26
+ };
27
+ export declare const DEFAULT_EVOTAR_SCALE = 4;
28
+ export declare class Evotar {
29
+ container: PIXI.Container;
30
+ private userState;
31
+ private state;
32
+ private animationState?;
33
+ private sprite?;
34
+ private tagSprites;
35
+ trail: EvotarTrailEffect;
36
+ private name;
37
+ private message;
38
+ private emoteSpitter;
39
+ private velocity;
40
+ private runSpeed;
41
+ private gravity;
42
+ private dashAcc;
43
+ private isJumping;
44
+ private isDashing;
45
+ private isDespawned;
46
+ landTimer?: Timer;
47
+ stateTimer?: Timer;
48
+ scaleTimer?: Timer;
49
+ spawnTween?: TWEEN.Tween<PIXI.Container>;
50
+ fadeTween?: TWEEN.Tween<PIXI.Container>;
51
+ scaleTween?: TWEEN.Tween<Evotar>;
52
+ constructor(props?: EvotarProps);
53
+ spawn(props?: EvotarSpawnProps): void;
54
+ despawn(props?: EvotarDepawnProps): void;
55
+ scale(options: {
56
+ value: number;
57
+ duration: number;
58
+ cooldown: number;
59
+ }): void;
60
+ jump(options: {
61
+ velocityX: number;
62
+ velocityY: number;
63
+ cooldown: number;
64
+ }): void;
65
+ dash(options: {
66
+ force: number;
67
+ cooldown: number;
68
+ }): void;
69
+ setSprite(sprite: SpriteConfig): void;
70
+ setProps(props: EvotarProps): void;
71
+ setUserProps(props: UserProps): void;
72
+ private move;
73
+ update(): void;
74
+ isOnGround(y: number): boolean;
75
+ addMessage(message: string): void;
76
+ spitEmotes(emotes: string[]): void;
77
+ setAnimationState(state: EvotarSpriteTags, force?: boolean): Promise<void>;
78
+ }
79
+ export {};
@@ -0,0 +1,27 @@
1
+ import { Point } from '../helpers/types';
2
+
3
+ import * as PIXI from 'pixi.js';
4
+ export type EvotarMesageProps = {
5
+ position: Point;
6
+ };
7
+ export declare class EvotarMessage {
8
+ private beforeShow;
9
+ container: PIXI.Container;
10
+ animated: PIXI.Container;
11
+ private text;
12
+ private padding;
13
+ private borderRadius;
14
+ private boxColor;
15
+ private fadeShift;
16
+ private isChecking;
17
+ private messageQueue;
18
+ private showTween?;
19
+ private hideTween?;
20
+ private timer?;
21
+ constructor(beforeShow: () => void);
22
+ private trim;
23
+ update(props: EvotarMesageProps): void;
24
+ add(message: string): void;
25
+ private drawBox;
26
+ private show;
27
+ }
@@ -0,0 +1,14 @@
1
+ import { Point, Rect } from '../helpers/types';
2
+
3
+ import * as PIXI from 'pixi.js';
4
+ export type EvotarNameProps = {
5
+ name: string;
6
+ position: Point;
7
+ isVisible: boolean;
8
+ };
9
+ export declare class EvotarName {
10
+ text: PIXI.Text;
11
+ constructor();
12
+ update(props: EvotarNameProps): void;
13
+ rect: () => Rect;
14
+ }
@@ -0,0 +1,16 @@
1
+ import { EvotarLayerAnimatedSprite, EvotarSpriteLayers } from '../services/spriteProvider';
2
+ import { Point } from '../helpers/types';
3
+ import * as PIXI from 'pixi.js';
4
+ export type EvotarSpriteContainerProps = {
5
+ color: {
6
+ [key in EvotarSpriteLayers]?: PIXI.Color;
7
+ };
8
+ scale: Point;
9
+ play: boolean;
10
+ };
11
+ export declare class EvotarSpriteContainer {
12
+ container: PIXI.Container;
13
+ sprites: EvotarLayerAnimatedSprite[];
14
+ constructor(sprites: EvotarLayerAnimatedSprite[]);
15
+ update(props: EvotarSpriteContainerProps): void;
16
+ }
@@ -0,0 +1,15 @@
1
+ import { EvotarSpriteContainer } from './SpriteContainer';
2
+ import * as PIXI from 'pixi.js';
3
+ export type EvotarTrailEffectProps = {
4
+ play: boolean;
5
+ };
6
+ export declare class EvotarTrailEffect {
7
+ container: PIXI.Container;
8
+ private timer?;
9
+ private sprite?;
10
+ private opacityStep;
11
+ private shadowStep;
12
+ constructor();
13
+ setSprite(sprite: EvotarSpriteContainer): void;
14
+ update(props: EvotarTrailEffectProps): void;
15
+ }
@@ -0,0 +1,14 @@
1
+ import { AppOptions } from './app';
2
+ import { MessageEntity, RaidData, SettingsEntity, TwitchChatterEntity, UserActionEntity } from './types';
3
+
4
+ export declare class Evotars {
5
+ private readonly root;
6
+ private isRendered;
7
+ constructor(root: HTMLElement);
8
+ processMessage: (data: MessageEntity) => void;
9
+ processAction: (data: UserActionEntity) => void;
10
+ processChatters: (data: TwitchChatterEntity[]) => void;
11
+ processRaid: (data: RaidData) => void;
12
+ updateSettings(data: SettingsEntity): void;
13
+ run(options: AppOptions): Promise<void>;
14
+ }