bc-stubs 114.0.0 → 115.0.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/bc/NativeDeclarations/Female3DCG_Types.d.ts +22 -1
- package/bc/NativeDeclarations/FriendList.d.ts +11 -1
- package/bc/NativeDeclarations/Messages.d.ts +18 -1
- package/bc/NativeDeclarations/Platform.d.ts +285 -0
- package/bc/NativeDeclarations/Typedef.d.ts +241 -64
- package/bc/Screens/Character/Appearance/Appearance.d.ts +11 -4
- package/bc/Screens/Character/BackgroundSelection/BackgroundSelection.d.ts +1 -1
- package/bc/Screens/Character/FriendList/FriendList.d.ts +28 -0
- package/bc/Screens/Character/Login/Login.d.ts +11 -3
- package/bc/Screens/Character/Preference/Arousal.d.ts +1 -0
- package/bc/Screens/Character/Preference/Audio.d.ts +1 -0
- package/bc/Screens/Character/Preference/CensoredWords.d.ts +1 -0
- package/bc/Screens/Character/Preference/Controller.d.ts +2 -0
- package/bc/Screens/Character/Preference/Extensions.d.ts +5 -1
- package/bc/Screens/Character/Preference/General.d.ts +7 -2
- package/bc/Screens/Character/Preference/Graphics.d.ts +4 -0
- package/bc/Screens/Character/Preference/Notifications.d.ts +4 -0
- package/bc/Screens/Character/Preference/Preference.d.ts +6 -1
- package/bc/Screens/Character/Preference/Scripts.d.ts +1 -0
- package/bc/Screens/Character/Preference/Security.d.ts +1 -0
- package/bc/Screens/Character/Preference/Visibility.d.ts +11 -1
- package/bc/Screens/Inventory/ItemNeckRestraints/CollarLeash/CollarLeash.d.ts +1 -0
- package/bc/Screens/Online/ChatRoom/ChatRoom.d.ts +77 -9
- package/bc/Screens/Online/ChatRoom/ChatRoomMapView.d.ts +1 -5
- package/bc/Screens/Online/ChatSearch/ChatSearch.d.ts +2 -1
- package/bc/Screens/Online/Game/OnlineGame.d.ts +2 -0
- package/bc/Screens/Online/NicknameManagement/NicknameManagement.d.ts +1 -1
- package/bc/Screens/Room/Crafting/Crafting.d.ts +7 -9
- package/bc/Screens/Room/Platform/Platform.d.ts +150 -1714
- package/bc/Screens/Room/PlatformDialog/PlatformDialog.d.ts +32 -58
- package/bc/Screens/Room/PlatformProfile/PlatformProfile.d.ts +7 -7
- package/bc/Screens/Room/Shop2/Shop2.d.ts +2 -2
- package/bc/Scripts/Activity.d.ts +4 -2
- package/bc/Scripts/Asset.d.ts +5 -5
- package/bc/Scripts/Character.d.ts +20 -1
- package/bc/Scripts/Common.d.ts +5 -0
- package/bc/Scripts/CommonDraw.d.ts +10 -0
- package/bc/Scripts/Dialog.d.ts +463 -171
- package/bc/Scripts/DictionaryBuilder.d.ts +10 -0
- package/bc/Scripts/Drawing.d.ts +15 -1
- package/bc/Scripts/Element.d.ts +17 -2
- package/bc/Scripts/GLDraw.d.ts +26 -1
- package/bc/Scripts/Layering.d.ts +1 -1
- package/bc/Scripts/Pose.d.ts +2 -1
- package/bc/Scripts/Preference.d.ts +21 -10
- package/bc/Scripts/Server.d.ts +0 -9
- package/package.json +1 -1
|
@@ -657,6 +657,7 @@ interface AssetDefinitionBase extends AssetCommonPropertiesGroupAsset, AssetComm
|
|
|
657
657
|
AllowHideItem?: string[];
|
|
658
658
|
/** @deprecated */
|
|
659
659
|
AllowTypes?: never;
|
|
660
|
+
/** A list of {@link TypeRecord} keys for which a single layer expects multiple type-specific .png files. */
|
|
660
661
|
CreateLayerTypes?: string[];
|
|
661
662
|
/**
|
|
662
663
|
* Whether an item can be tightened or not.
|
|
@@ -805,6 +806,12 @@ type AssetDefinition = (
|
|
|
805
806
|
| AssetDefinition.Script
|
|
806
807
|
);
|
|
807
808
|
|
|
809
|
+
interface AssetLayerMaskTexureDefinition {
|
|
810
|
+
/** The groups that will be affected */
|
|
811
|
+
Groups?: AssetGroupName[];
|
|
812
|
+
/** If true, the texture mask will apply to all layers in the groups specified, event if their priority is higher than the mask layer */
|
|
813
|
+
ApplyToAbove?: boolean;
|
|
814
|
+
}
|
|
808
815
|
|
|
809
816
|
interface AssetLayerDefinition extends AssetCommonPropertiesGroupAssetLayer, AssetCommonPropertiesAssetLayer {
|
|
810
817
|
/** The layer's name */
|
|
@@ -819,7 +826,7 @@ interface AssetLayerDefinition extends AssetCommonPropertiesGroupAssetLayer, Ass
|
|
|
819
826
|
/** Whether the layer is hidden in the Color Picker UI. Defaults to false. */
|
|
820
827
|
HideColoring?: boolean;
|
|
821
828
|
|
|
822
|
-
/** A record (or a list thereof) with all screen names + option indices that should make the layer visible */
|
|
829
|
+
/** A record (or a list thereof) with all screen names + option indices, _i.e._ {@link TypeRecord} keys + values, that should make the layer visible */
|
|
823
830
|
AllowTypes?: AllowTypes.Definition;
|
|
824
831
|
|
|
825
832
|
/**
|
|
@@ -848,6 +855,15 @@ interface AssetLayerDefinition extends AssetCommonPropertiesGroupAssetLayer, Ass
|
|
|
848
855
|
*/
|
|
849
856
|
BlendingMode?: GlobalCompositeOperation;
|
|
850
857
|
|
|
858
|
+
|
|
859
|
+
/**
|
|
860
|
+
* Mark the layer as a mask layer, which will be used to apply alpha masks to other layers.
|
|
861
|
+
* Only the alpha channel of the image, and positioning are concerned for a mask layer.
|
|
862
|
+
* The color, priority and alpha are ignored for mask layers.
|
|
863
|
+
* The blending mode of the mask layer must be set to "destination-in" or "destination-out".
|
|
864
|
+
*/
|
|
865
|
+
TextureMask?: AssetLayerMaskTexureDefinition;
|
|
866
|
+
|
|
851
867
|
/**
|
|
852
868
|
* Specify that this is (one of) the asset's lock layer.
|
|
853
869
|
*
|
|
@@ -867,6 +883,11 @@ interface AssetLayerDefinition extends AssetCommonPropertiesGroupAssetLayer, Ass
|
|
|
867
883
|
*/
|
|
868
884
|
CopyLayerPoseMapping?: string;
|
|
869
885
|
|
|
886
|
+
/**
|
|
887
|
+
* A list of {@link TypeRecord} keys for which a single layer expects multiple type-specific .png files.
|
|
888
|
+
*
|
|
889
|
+
* By default files are expected for _all_ option indices associated with the key(s), unless the valid option set has been narrowed down according to {@link AssetLayerDefinition.AllowTypes}.
|
|
890
|
+
*/
|
|
870
891
|
CreateLayerTypes?: string[];
|
|
871
892
|
/* Specifies that this layer should not be drawn if the character is wearing any item with the given attributes */
|
|
872
893
|
HideForAttribute?: AssetAttribute[];
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
type FriendListModes = FriendListMode[];
|
|
2
2
|
type FriendListMode = "OnlineFriends" | "Beeps" | "AllFriends";
|
|
3
|
-
type FriendListSortingMode = 'None' | 'MemberName' | 'MemberNickname' | 'MemberNumber' | 'ChatRoomName' | 'RelationType';
|
|
3
|
+
type FriendListSortingMode = 'None' | 'MemberName' | 'MemberNickname' | 'MemberNumber' | 'ChatRoomName' | 'RelationType' | 'ChatRoomType';
|
|
4
4
|
type FriendListSortingDirection = 'Asc' | 'Desc';
|
|
5
5
|
|
|
6
6
|
type FriendListReturn<T extends ModuleType> = { Screen: ModuleScreens[T], Module: T, IsInChatRoom?: boolean, hasScrolledChat?: boolean };
|
|
@@ -19,6 +19,7 @@ type FriendRawRoom = {
|
|
|
19
19
|
name?: string;
|
|
20
20
|
caption: string;
|
|
21
21
|
canSearchRoom: boolean;
|
|
22
|
+
types: FriendListIcon[];
|
|
22
23
|
};
|
|
23
24
|
|
|
24
25
|
type FriendRawBeep = {
|
|
@@ -27,3 +28,12 @@ type FriendRawBeep = {
|
|
|
27
28
|
hasMessage?: boolean;
|
|
28
29
|
canBeep?: boolean;
|
|
29
30
|
};
|
|
31
|
+
|
|
32
|
+
interface FriendListIcon {
|
|
33
|
+
/** The {@link HTMLImageElement.src} of the icon */
|
|
34
|
+
src: string;
|
|
35
|
+
/** The `Character/FriendList` {@link TextGet} key of the icon's tooltip */
|
|
36
|
+
tooltipKey: string;
|
|
37
|
+
/** A string to-be used for sorting the icon-containing column cells */
|
|
38
|
+
sortKey: string;
|
|
39
|
+
}
|
|
@@ -750,6 +750,20 @@ interface ActivityNameDictionaryEntry {
|
|
|
750
750
|
ActivityName: ActivityName;
|
|
751
751
|
}
|
|
752
752
|
|
|
753
|
+
/**
|
|
754
|
+
* A dictionary entry indicating the ID of a message being replied to.
|
|
755
|
+
*/
|
|
756
|
+
interface ReplyIdDictionaryEntry {
|
|
757
|
+
ReplyId: string;
|
|
758
|
+
Tag: "ReplyId";
|
|
759
|
+
}
|
|
760
|
+
/**
|
|
761
|
+
* A dictionary entry indicating the ID of a message.
|
|
762
|
+
*/
|
|
763
|
+
interface MsgIdDictionaryEntry {
|
|
764
|
+
MsgId: string;
|
|
765
|
+
Tag: "MsgId";
|
|
766
|
+
}
|
|
753
767
|
/**
|
|
754
768
|
* A dictionary entry with metadata about the chat message transmitted.
|
|
755
769
|
*
|
|
@@ -777,7 +791,10 @@ type ChatMessageDictionaryEntry =
|
|
|
777
791
|
| ActivityCounterDictionaryEntry
|
|
778
792
|
| AssetGroupNameDictionaryEntry
|
|
779
793
|
| ActivityNameDictionaryEntry
|
|
780
|
-
| MessageEffectEntry
|
|
794
|
+
| MessageEffectEntry
|
|
795
|
+
| MsgIdDictionaryEntry
|
|
796
|
+
| ReplyIdDictionaryEntry ;
|
|
797
|
+
|
|
781
798
|
|
|
782
799
|
type ChatMessageDictionary = ChatMessageDictionaryEntry[];
|
|
783
800
|
|
|
@@ -0,0 +1,285 @@
|
|
|
1
|
+
declare namespace Platform {
|
|
2
|
+
|
|
3
|
+
type Perk = string;
|
|
4
|
+
|
|
5
|
+
type CharacterStatus = "Maid" | "Oracle" | "Archer" | "Thief"
|
|
6
|
+
|
|
7
|
+
type SoundCategory = string;
|
|
8
|
+
type SoundEffect = string;
|
|
9
|
+
|
|
10
|
+
type EffectType = "Teleport" | "Heal";
|
|
11
|
+
|
|
12
|
+
type AnimationName = "Petrified" | "Bound" | "HalfBoundWounded" | "Wounded" | "Aim" | "AimReady" | "AimFull" | "Bind" | "Jump" | "HalfBoundJump" | "Crawl" | "Stun" | "HalfBoundStun" | "Walk" | "HalfBoundWalk" | "WalkHit" | "Run" | "HalfBoundRun" | "Crouch" | "Block" | "Idle" | "HalfBoundIdle"
|
|
13
|
+
| "Uppercut" | "StandAttackFast" | "StandAttackSlow" | "CrouchAttackFast" | "CrouchAttackSlow" | "Scream" | "Backflip" | "FireProjectile" | "Left" | "Right";
|
|
14
|
+
|
|
15
|
+
type ItemName = "RedRose" | "PoisonApple" | "LeatherWhip" | "AnimalCollar";
|
|
16
|
+
|
|
17
|
+
interface AnimationSpec {
|
|
18
|
+
Name: AnimationName;
|
|
19
|
+
Cycle?: number[];
|
|
20
|
+
Speed?: number;
|
|
21
|
+
Audio?: SoundEffect[];
|
|
22
|
+
CycleLeft?: number[];
|
|
23
|
+
OffsetX?: number;
|
|
24
|
+
OffsetY?: number;
|
|
25
|
+
Width?: number;
|
|
26
|
+
Height?: number;
|
|
27
|
+
Image?: number;
|
|
28
|
+
Mirror?: boolean;
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
interface DummyTemplate {
|
|
32
|
+
Name: string;
|
|
33
|
+
Status: string;
|
|
34
|
+
Width: number;
|
|
35
|
+
Height: number;
|
|
36
|
+
Animation: AnimationSpec[];
|
|
37
|
+
|
|
38
|
+
OnBind?: () => void;
|
|
39
|
+
|
|
40
|
+
Loot?: { Name: ItemName, Expire: number; }[];
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
interface CharacterTemplate {
|
|
44
|
+
Name: string;
|
|
45
|
+
Status: string;
|
|
46
|
+
|
|
47
|
+
Width: number;
|
|
48
|
+
Height: number;
|
|
49
|
+
|
|
50
|
+
HitBox: RectTuple;
|
|
51
|
+
JumpHitBox?: RectTuple;
|
|
52
|
+
|
|
53
|
+
Health: number;
|
|
54
|
+
HealthPerLevel?: number;
|
|
55
|
+
ExperienceValue?: number;
|
|
56
|
+
|
|
57
|
+
Magic?: number;
|
|
58
|
+
MagicPerLevel?: number;
|
|
59
|
+
|
|
60
|
+
Projectile?: number;
|
|
61
|
+
ProjectileName?: ProjectileName;
|
|
62
|
+
ProjectileType?: ProjectileType;
|
|
63
|
+
ProjectileTime?: number;
|
|
64
|
+
ProjectileDamage?: number[];
|
|
65
|
+
ProjectileBothSides?: boolean;
|
|
66
|
+
|
|
67
|
+
Perk?: string;
|
|
68
|
+
PerkName?: PerkName[];
|
|
69
|
+
|
|
70
|
+
WalkSpeed: number;
|
|
71
|
+
RunSpeed?: number;
|
|
72
|
+
CrawlSpeed: number;
|
|
73
|
+
JumpForce?: number;
|
|
74
|
+
CollisionDamage?: number;
|
|
75
|
+
|
|
76
|
+
JumpOdds?: number;
|
|
77
|
+
LootOdds?: number;
|
|
78
|
+
RunOdds?: number;
|
|
79
|
+
ProjectileOdds?: number;
|
|
80
|
+
StandAttackSlowOdds?: number;
|
|
81
|
+
|
|
82
|
+
DamageBackOdds?: number;
|
|
83
|
+
DamageFaceOdds?: number;
|
|
84
|
+
DamageKnockForce?: number;
|
|
85
|
+
|
|
86
|
+
IdleAudio?: SoundEffect[];
|
|
87
|
+
DamageAudio?: SoundEffect[];
|
|
88
|
+
DownAudio?: SoundEffect[];
|
|
89
|
+
BindAudio?: SoundEffect[];
|
|
90
|
+
ProjectileHitAudio?: SoundEffect[];
|
|
91
|
+
|
|
92
|
+
RunHeight?: number;
|
|
93
|
+
FlyingHeight?: number;
|
|
94
|
+
IdleTurnToFace?: boolean;
|
|
95
|
+
PetrifyOnWound?: boolean;
|
|
96
|
+
|
|
97
|
+
Animation: AnimationSpec[];
|
|
98
|
+
|
|
99
|
+
Attack?: {
|
|
100
|
+
Name: string;
|
|
101
|
+
HitBox?: RectTuple;
|
|
102
|
+
HitAnimation?: number[];
|
|
103
|
+
|
|
104
|
+
Magic?: number;
|
|
105
|
+
Cooldown?: number;
|
|
106
|
+
|
|
107
|
+
StartAudio?: string[];
|
|
108
|
+
HitAudio?: string[];
|
|
109
|
+
|
|
110
|
+
Damage?: number[];
|
|
111
|
+
Speed: number;
|
|
112
|
+
JumpForce?: number;
|
|
113
|
+
}[];
|
|
114
|
+
|
|
115
|
+
|
|
116
|
+
OnBind?: () => void;
|
|
117
|
+
|
|
118
|
+
Loot?: { Name: ItemName, Expire: number; }[];
|
|
119
|
+
}
|
|
120
|
+
|
|
121
|
+
type ProjectileName = "Barrel" | "Arrow" | "Dagger";
|
|
122
|
+
type ProjectileType = "Wood" | "Iron";
|
|
123
|
+
|
|
124
|
+
interface Projectile {
|
|
125
|
+
IsProjectile: true;
|
|
126
|
+
Gravity: number;
|
|
127
|
+
ProjectileForce: number;
|
|
128
|
+
HitAudio: SoundEffect[];
|
|
129
|
+
}
|
|
130
|
+
|
|
131
|
+
interface Character extends CharacterTemplate, Projectile {
|
|
132
|
+
ID: number;
|
|
133
|
+
Camera: boolean;
|
|
134
|
+
X: number;
|
|
135
|
+
Y: number;
|
|
136
|
+
ForceX: number;
|
|
137
|
+
ForceY: number;
|
|
138
|
+
Experience: number;
|
|
139
|
+
Level: number;
|
|
140
|
+
BaseHealth: number;
|
|
141
|
+
BaseMagic?: number;
|
|
142
|
+
BaseProjectile?: number;
|
|
143
|
+
BaseProjectileTime?: number;
|
|
144
|
+
BaseWalkSpeed: number;
|
|
145
|
+
BaseRunSpeed: number;
|
|
146
|
+
|
|
147
|
+
MaxHealth: number;
|
|
148
|
+
MaxMagic?: number;
|
|
149
|
+
MaxProjectile?: number;
|
|
150
|
+
|
|
151
|
+
Fix: boolean;
|
|
152
|
+
Combat: boolean;
|
|
153
|
+
Dialog: string;
|
|
154
|
+
|
|
155
|
+
Run: boolean;
|
|
156
|
+
NextJump: number;
|
|
157
|
+
|
|
158
|
+
DamageBackOdds: number;
|
|
159
|
+
DamageFaceOdds: number;
|
|
160
|
+
|
|
161
|
+
FaceLeft: boolean;
|
|
162
|
+
|
|
163
|
+
HalfBound: boolean;
|
|
164
|
+
Bound: boolean;
|
|
165
|
+
Petrified: boolean;
|
|
166
|
+
|
|
167
|
+
OnBind?: () => void;
|
|
168
|
+
|
|
169
|
+
Immunity: number;
|
|
170
|
+
Damage: { Value: number, Expire: number }[];
|
|
171
|
+
RiseTime: number;
|
|
172
|
+
ProjectileAim: number;
|
|
173
|
+
|
|
174
|
+
Action: { Name: AnimationName, Start: number, Expire: number, Target?: number, Done?: boolean };
|
|
175
|
+
Effect?: { Name: EffectType, End: number };
|
|
176
|
+
|
|
177
|
+
Anim?: AnimationSpec;
|
|
178
|
+
}
|
|
179
|
+
|
|
180
|
+
interface PartyMember {
|
|
181
|
+
Character: string;
|
|
182
|
+
Status: Platform.CharacterStatus;
|
|
183
|
+
Level: number;
|
|
184
|
+
Experience: number;
|
|
185
|
+
Perk: string;
|
|
186
|
+
}
|
|
187
|
+
|
|
188
|
+
interface DialogCharacter {
|
|
189
|
+
Name: string;
|
|
190
|
+
Color: HexColor;
|
|
191
|
+
|
|
192
|
+
NickName?: string;
|
|
193
|
+
|
|
194
|
+
Love?: number;
|
|
195
|
+
LoverName?: string;
|
|
196
|
+
LoverLevel?: number;
|
|
197
|
+
OwnerName?: string;
|
|
198
|
+
OwnerLevel?: number;
|
|
199
|
+
|
|
200
|
+
Domination?: number;
|
|
201
|
+
|
|
202
|
+
IdlePose?: CharacterStatus[];
|
|
203
|
+
}
|
|
204
|
+
|
|
205
|
+
type RoomType = "Up" | "Down" | "Left" | "Right";
|
|
206
|
+
|
|
207
|
+
interface Room {
|
|
208
|
+
Name: string;
|
|
209
|
+
Text?: string;
|
|
210
|
+
Background: string;
|
|
211
|
+
AlternateBackground?: string;
|
|
212
|
+
BackgroundFilter?: string;
|
|
213
|
+
Music: string;
|
|
214
|
+
Width?: number;
|
|
215
|
+
Height?: number;
|
|
216
|
+
LimitLeft?: number | null;
|
|
217
|
+
LimitRight?: number | null;
|
|
218
|
+
Heal?: number;
|
|
219
|
+
Door?: {
|
|
220
|
+
Name: string;
|
|
221
|
+
FromX: number;
|
|
222
|
+
FromY: number;
|
|
223
|
+
FromW: number;
|
|
224
|
+
FromH: number;
|
|
225
|
+
FromType: RoomType;
|
|
226
|
+
ToX: number;
|
|
227
|
+
ToFaceLeft?: boolean;
|
|
228
|
+
}[];
|
|
229
|
+
|
|
230
|
+
Character?: {
|
|
231
|
+
Name: string;
|
|
232
|
+
Status: string;
|
|
233
|
+
X: number;
|
|
234
|
+
Fix?: boolean;
|
|
235
|
+
Combat?: boolean;
|
|
236
|
+
Battle?: boolean;
|
|
237
|
+
Dialog?: string;
|
|
238
|
+
}[];
|
|
239
|
+
|
|
240
|
+
Entry?: () => void;
|
|
241
|
+
}
|
|
242
|
+
|
|
243
|
+
interface Item {
|
|
244
|
+
Name: ItemName;
|
|
245
|
+
DisplayName: string;
|
|
246
|
+
Description: string;
|
|
247
|
+
OnGive: (Char: Platform.DialogCharacter) => void;
|
|
248
|
+
}
|
|
249
|
+
|
|
250
|
+
type EventType =
|
|
251
|
+
| "ThiefBossIntro" | "ThiefBossDefeat" | "ThiefBossSecondDefeat" | "ThiefBossRetreat"
|
|
252
|
+
| "EdlaranKey" | "EdlaranForestKey" | "EdlaranIntro" | "EdlaranCurseIntro" | "EdlaranUnlock" | "EdlaranBedroomIsabella"
|
|
253
|
+
| "EdlaranCountessBedroomOrgasmDom" | "EdlaranCountessBedroomOrgasmSub" | "EdlaranWineCellar" | "EdlaranJoin"
|
|
254
|
+
| "EdlaranForestIntro"
|
|
255
|
+
| "IntroForestBandit" | "ForestBanditCrate"
|
|
256
|
+
| "ForestCapture" | "ForestCaptureEnd" | "ForestCaptureRescueMelody"
|
|
257
|
+
| "BarnThiefRescueMelody"
|
|
258
|
+
| "CamilleEscape" | "CamilleDefeat"
|
|
259
|
+
| "JealousMaid" | "CursedMaid"
|
|
260
|
+
| "OliviaCollarKey" | "OliviaUnchain" | "OliviaBath" | "OliviaBathOrgasm"
|
|
261
|
+
| "OliviaCurseIntro" | "OliviaCurseRelease"
|
|
262
|
+
| "OliviaTerrace" | "OliviaTerraceKiss"
|
|
263
|
+
| "OliviaCabin" | "EdlaranCabin" | "LynCabin"
|
|
264
|
+
| "OliviaTent" | "EdlaranTent" | "LynTent"
|
|
265
|
+
| "IntroGuard" | "IntroGuardCurse"
|
|
266
|
+
| "DesertEntrance"
|
|
267
|
+
| "Curse"
|
|
268
|
+
| "LynJoin"
|
|
269
|
+
;
|
|
270
|
+
|
|
271
|
+
interface Event {
|
|
272
|
+
// Doesn't appear to be used for anything, just saved and loaded
|
|
273
|
+
}
|
|
274
|
+
|
|
275
|
+
type PerkName = "Healthy" | "Robust" | "Vigorous" | "Spring" | "Impact" | "Block" | "Deflect" | "Seduction" | "Persuasion" | "Manipulation" | "Apprentice" | "Witch" | "Meditation" | "Scholar" | "Heal" | "Cure" | "Howl" | "Roar" | "Teleport" | "Freedom" | "Fletcher" | "Burglar" | "Athletic" | "Sprint" | "Backflip" | "Acrobat" | "Archery" | "Celerity" | "Capacity" | "Sneak" | "Backstab" | "Kidnapper" | "Rigger" | "Thief" | "Bounce" | "Inventory" | "Duplicate";
|
|
276
|
+
|
|
277
|
+
type KeyCode = string;
|
|
278
|
+
|
|
279
|
+
type CooldownType = AnimationName | EffectType;
|
|
280
|
+
interface Cooldown {
|
|
281
|
+
Type: CooldownType;
|
|
282
|
+
Time: number;
|
|
283
|
+
Delay: number;
|
|
284
|
+
}
|
|
285
|
+
}
|