fleethub-core 1.3.3 → 1.4.2
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/node/fleethub_core.d.ts +180 -162
- package/node/fleethub_core.js +56 -100
- package/node/fleethub_core_bg.wasm +0 -0
- package/node/fleethub_core_bg.wasm.d.ts +98 -96
- package/package.json +3 -3
- package/pkg/fleethub_core.d.ts +180 -162
- package/pkg/fleethub_core_bg.js +55 -99
- package/pkg/fleethub_core_bg.wasm +0 -0
- package/pkg/fleethub_core_bg.wasm.d.ts +98 -96
package/node/fleethub_core.d.ts
CHANGED
|
@@ -3,9 +3,7 @@
|
|
|
3
3
|
/**
|
|
4
4
|
*/
|
|
5
5
|
export function set_panic_hook(): void;
|
|
6
|
-
export interface
|
|
7
|
-
gear_id: number;
|
|
8
|
-
types: GearTypeIdArray;
|
|
6
|
+
export interface EBonuses {
|
|
9
7
|
firepower: number;
|
|
10
8
|
torpedo: number;
|
|
11
9
|
anti_air: number;
|
|
@@ -16,19 +14,18 @@ export interface EBonusFnGearInput {
|
|
|
16
14
|
bombing: number;
|
|
17
15
|
accuracy: number;
|
|
18
16
|
range: number;
|
|
19
|
-
radius: number;
|
|
20
|
-
stars: number;
|
|
21
|
-
ace: number;
|
|
22
17
|
}
|
|
23
18
|
|
|
24
|
-
export interface
|
|
19
|
+
export interface ShipInput {
|
|
25
20
|
ship_id: number;
|
|
26
21
|
ctype: number;
|
|
27
22
|
stype: number;
|
|
28
23
|
yomi: string;
|
|
29
24
|
}
|
|
30
25
|
|
|
31
|
-
export interface
|
|
26
|
+
export interface GearInput {
|
|
27
|
+
gear_id: number;
|
|
28
|
+
types: GearTypeIdArray;
|
|
32
29
|
firepower: number;
|
|
33
30
|
torpedo: number;
|
|
34
31
|
anti_air: number;
|
|
@@ -39,8 +36,13 @@ export interface EBonuses {
|
|
|
39
36
|
bombing: number;
|
|
40
37
|
accuracy: number;
|
|
41
38
|
range: number;
|
|
39
|
+
radius: number;
|
|
40
|
+
stars: number;
|
|
41
|
+
ace: number;
|
|
42
42
|
}
|
|
43
43
|
|
|
44
|
+
export type GearVecInput = GearInput[];
|
|
45
|
+
|
|
44
46
|
export type AirStateRank = "Rank0" | "Rank1" | "Rank2" | "Rank3";
|
|
45
47
|
|
|
46
48
|
export type AirState =
|
|
@@ -93,6 +95,62 @@ export interface DamageInfo {
|
|
|
93
95
|
damage_state_map: NumMap<DamageState, number>;
|
|
94
96
|
}
|
|
95
97
|
|
|
98
|
+
export interface BattleConfig {
|
|
99
|
+
formation: Record<Formation, NestedFormationDef>;
|
|
100
|
+
anti_air_cutin: Record<number, AntiAirCutinDef>;
|
|
101
|
+
day_cutin: Record<DayCutin, DayCutinDef>;
|
|
102
|
+
night_cutin: Record<NightCutin, NightCutinDef>;
|
|
103
|
+
}
|
|
104
|
+
|
|
105
|
+
export interface NightCutinDef {
|
|
106
|
+
tag: NightCutin;
|
|
107
|
+
hits: number;
|
|
108
|
+
type_factor: number | null;
|
|
109
|
+
power_mod: number | null;
|
|
110
|
+
accuracy_mod: number | null;
|
|
111
|
+
}
|
|
112
|
+
|
|
113
|
+
export interface DayCutinDef {
|
|
114
|
+
tag: DayCutin;
|
|
115
|
+
hits: number;
|
|
116
|
+
type_factor: number | null;
|
|
117
|
+
power_mod: number | null;
|
|
118
|
+
accuracy_mod: number | null;
|
|
119
|
+
}
|
|
120
|
+
|
|
121
|
+
export interface AntiAirCutinDef {
|
|
122
|
+
id: number;
|
|
123
|
+
type_factor: number | null;
|
|
124
|
+
multiplier: number | null;
|
|
125
|
+
guaranteed: number | null;
|
|
126
|
+
sequential: boolean | null;
|
|
127
|
+
}
|
|
128
|
+
|
|
129
|
+
export type NestedFormationDef =
|
|
130
|
+
| FormationDef
|
|
131
|
+
| { top_half: FormationDef; bottom_half: FormationDef };
|
|
132
|
+
|
|
133
|
+
export interface FormationDef {
|
|
134
|
+
tag: Formation;
|
|
135
|
+
protection_rate: number | null;
|
|
136
|
+
fleet_anti_air_mod: number;
|
|
137
|
+
shelling: FormationWarfareDef;
|
|
138
|
+
torpedo: FormationWarfareDef;
|
|
139
|
+
asw: FormationWarfareDef;
|
|
140
|
+
night: FormationWarfareDef;
|
|
141
|
+
shelling_support: FormationWarfareDef;
|
|
142
|
+
}
|
|
143
|
+
|
|
144
|
+
export interface FormationWarfareDef {
|
|
145
|
+
power_mod: number | null;
|
|
146
|
+
accuracy_mod: number | null;
|
|
147
|
+
evasion_mod: number | null;
|
|
148
|
+
}
|
|
149
|
+
|
|
150
|
+
export type AirWaveType = "Jet" | "LandBase" | "Carrier";
|
|
151
|
+
|
|
152
|
+
export type AswAttackType = "DepthCharge" | "Aircraft";
|
|
153
|
+
|
|
96
154
|
export type OrgType =
|
|
97
155
|
| "Single"
|
|
98
156
|
| "CarrierTaskForce"
|
|
@@ -475,7 +533,7 @@ export type GearAttr =
|
|
|
475
533
|
| "SurfaceRadar"
|
|
476
534
|
| "AirRadar"
|
|
477
535
|
| "DepthChargeProjector"
|
|
478
|
-
| "
|
|
536
|
+
| "SynergisticDepthCharge"
|
|
479
537
|
| "AntiSubMortar"
|
|
480
538
|
| "AntiSubWeapon"
|
|
481
539
|
| "AntiSubAircraft"
|
|
@@ -555,8 +613,112 @@ export interface ShipAntiAirInfo {
|
|
|
555
613
|
anti_air_propellant_barrage_chance: number | null;
|
|
556
614
|
}
|
|
557
615
|
|
|
616
|
+
export type ShipStateMap = Record<ShipKey, ShipState>;
|
|
617
|
+
|
|
618
|
+
export type ShipKey = "s1" | "s2" | "s3" | "s4" | "s5" | "s6" | "s7";
|
|
619
|
+
|
|
620
|
+
export interface OrgState {
|
|
621
|
+
id?: string;
|
|
622
|
+
f1?: FleetState;
|
|
623
|
+
f2?: FleetState;
|
|
624
|
+
f3?: FleetState;
|
|
625
|
+
f4?: FleetState;
|
|
626
|
+
a1?: AirSquadronState;
|
|
627
|
+
a2?: AirSquadronState;
|
|
628
|
+
a3?: AirSquadronState;
|
|
629
|
+
hq_level?: number;
|
|
630
|
+
org_type?: OrgType;
|
|
631
|
+
sortie?: string;
|
|
632
|
+
route_sup?: string;
|
|
633
|
+
boss_sup?: string;
|
|
634
|
+
}
|
|
635
|
+
|
|
636
|
+
export interface AirSquadronState {
|
|
637
|
+
id?: string;
|
|
638
|
+
mode?: AirSquadronMode;
|
|
639
|
+
g1?: GearState;
|
|
640
|
+
g2?: GearState;
|
|
641
|
+
g3?: GearState;
|
|
642
|
+
g4?: GearState;
|
|
643
|
+
g5?: GearState;
|
|
644
|
+
gx?: GearState;
|
|
645
|
+
ss1?: number;
|
|
646
|
+
ss2?: number;
|
|
647
|
+
ss3?: number;
|
|
648
|
+
ss4?: number;
|
|
649
|
+
ss5?: number;
|
|
650
|
+
}
|
|
651
|
+
|
|
652
|
+
export type AirSquadronMode = "Sortie" | "AirDefense";
|
|
653
|
+
|
|
654
|
+
export interface FleetState {
|
|
655
|
+
id?: string;
|
|
656
|
+
len?: number;
|
|
657
|
+
s1?: ShipState;
|
|
658
|
+
s2?: ShipState;
|
|
659
|
+
s3?: ShipState;
|
|
660
|
+
s4?: ShipState;
|
|
661
|
+
s5?: ShipState;
|
|
662
|
+
s6?: ShipState;
|
|
663
|
+
s7?: ShipState;
|
|
664
|
+
}
|
|
665
|
+
|
|
666
|
+
export interface ShipState {
|
|
667
|
+
id?: string;
|
|
668
|
+
ship_id: number;
|
|
669
|
+
level?: number;
|
|
670
|
+
current_hp?: number;
|
|
671
|
+
morale?: number;
|
|
672
|
+
ammo?: number;
|
|
673
|
+
fuel?: number;
|
|
674
|
+
max_hp_mod?: number;
|
|
675
|
+
firepower_mod?: number;
|
|
676
|
+
torpedo_mod?: number;
|
|
677
|
+
armor_mod?: number;
|
|
678
|
+
anti_air_mod?: number;
|
|
679
|
+
evasion_mod?: number;
|
|
680
|
+
asw_mod?: number;
|
|
681
|
+
los_mod?: number;
|
|
682
|
+
luck_mod?: number;
|
|
683
|
+
g1?: GearState;
|
|
684
|
+
g2?: GearState;
|
|
685
|
+
g3?: GearState;
|
|
686
|
+
g4?: GearState;
|
|
687
|
+
g5?: GearState;
|
|
688
|
+
gx?: GearState;
|
|
689
|
+
ss1?: number;
|
|
690
|
+
ss2?: number;
|
|
691
|
+
ss3?: number;
|
|
692
|
+
ss4?: number;
|
|
693
|
+
ss5?: number;
|
|
694
|
+
overrides?: ShipOverrides;
|
|
695
|
+
}
|
|
696
|
+
|
|
697
|
+
export interface ShipOverrides {
|
|
698
|
+
naked_max_hp?: number;
|
|
699
|
+
naked_luck?: number;
|
|
700
|
+
naked_evasion?: number;
|
|
701
|
+
naked_asw?: number;
|
|
702
|
+
naked_los?: number;
|
|
703
|
+
}
|
|
704
|
+
|
|
705
|
+
export interface GearState {
|
|
706
|
+
id?: string;
|
|
707
|
+
gear_id: number;
|
|
708
|
+
exp?: number;
|
|
709
|
+
stars?: number;
|
|
710
|
+
}
|
|
711
|
+
|
|
558
712
|
export type Side = "Player" | "Enemy";
|
|
559
713
|
|
|
714
|
+
export type NightBattleAttackType =
|
|
715
|
+
| { t: "NightAttack"; c: NightAttackType }
|
|
716
|
+
| { t: "Asw"; c: AswAttackType };
|
|
717
|
+
|
|
718
|
+
export type DayBattleAttackType =
|
|
719
|
+
| { t: "Shelling"; c: ShellingAttackType }
|
|
720
|
+
| { t: "Asw"; c: AswAttackType };
|
|
721
|
+
|
|
560
722
|
export type NightAttackType = "Normal" | "ArkRoyal" | "Carrier";
|
|
561
723
|
|
|
562
724
|
export type NightSpecialAttack =
|
|
@@ -620,14 +782,6 @@ export interface HitRateParams {
|
|
|
620
782
|
hit_percentage_bonus: number;
|
|
621
783
|
}
|
|
622
784
|
|
|
623
|
-
export type NightBattleAttackType =
|
|
624
|
-
| { t: "NightAttack"; c: NightAttackType }
|
|
625
|
-
| { t: "Asw"; c: AswAttackType };
|
|
626
|
-
|
|
627
|
-
export type DayBattleAttackType =
|
|
628
|
-
| { t: "Shelling"; c: ShellingAttackType }
|
|
629
|
-
| { t: "Asw"; c: AswAttackType };
|
|
630
|
-
|
|
631
785
|
export interface WarfareInfo {
|
|
632
786
|
day: AttackInfo<DayBattleAttackType, DayCutin | null> | null;
|
|
633
787
|
closing_torpedo: AttackInfo<null, null> | null;
|
|
@@ -654,93 +808,6 @@ export interface WarfareAnalyzerShipEnvironment {
|
|
|
654
808
|
custom_mods: CustomModifiers;
|
|
655
809
|
}
|
|
656
810
|
|
|
657
|
-
export type ShipStateMap = Record<ShipKey, ShipState>;
|
|
658
|
-
|
|
659
|
-
export type ShipKey = "s1" | "s2" | "s3" | "s4" | "s5" | "s6" | "s7";
|
|
660
|
-
|
|
661
|
-
export interface OrgState {
|
|
662
|
-
id?: string;
|
|
663
|
-
f1?: FleetState;
|
|
664
|
-
f2?: FleetState;
|
|
665
|
-
f3?: FleetState;
|
|
666
|
-
f4?: FleetState;
|
|
667
|
-
a1?: AirSquadronState;
|
|
668
|
-
a2?: AirSquadronState;
|
|
669
|
-
a3?: AirSquadronState;
|
|
670
|
-
hq_level?: number;
|
|
671
|
-
org_type?: OrgType;
|
|
672
|
-
sortie?: string;
|
|
673
|
-
route_sup?: string;
|
|
674
|
-
boss_sup?: string;
|
|
675
|
-
}
|
|
676
|
-
|
|
677
|
-
export interface AirSquadronState {
|
|
678
|
-
id?: string;
|
|
679
|
-
mode?: AirSquadronMode;
|
|
680
|
-
g1?: GearState;
|
|
681
|
-
g2?: GearState;
|
|
682
|
-
g3?: GearState;
|
|
683
|
-
g4?: GearState;
|
|
684
|
-
g5?: GearState;
|
|
685
|
-
gx?: GearState;
|
|
686
|
-
ss1?: number;
|
|
687
|
-
ss2?: number;
|
|
688
|
-
ss3?: number;
|
|
689
|
-
ss4?: number;
|
|
690
|
-
ss5?: number;
|
|
691
|
-
}
|
|
692
|
-
|
|
693
|
-
export type AirSquadronMode = "Sortie" | "AirDefense";
|
|
694
|
-
|
|
695
|
-
export interface FleetState {
|
|
696
|
-
id?: string;
|
|
697
|
-
len?: number;
|
|
698
|
-
s1?: ShipState;
|
|
699
|
-
s2?: ShipState;
|
|
700
|
-
s3?: ShipState;
|
|
701
|
-
s4?: ShipState;
|
|
702
|
-
s5?: ShipState;
|
|
703
|
-
s6?: ShipState;
|
|
704
|
-
s7?: ShipState;
|
|
705
|
-
}
|
|
706
|
-
|
|
707
|
-
export interface ShipState {
|
|
708
|
-
id?: string;
|
|
709
|
-
ship_id: number;
|
|
710
|
-
level?: number;
|
|
711
|
-
current_hp?: number;
|
|
712
|
-
morale?: number;
|
|
713
|
-
ammo?: number;
|
|
714
|
-
fuel?: number;
|
|
715
|
-
max_hp_mod?: number;
|
|
716
|
-
firepower_mod?: number;
|
|
717
|
-
torpedo_mod?: number;
|
|
718
|
-
armor_mod?: number;
|
|
719
|
-
anti_air_mod?: number;
|
|
720
|
-
evasion_mod?: number;
|
|
721
|
-
asw_mod?: number;
|
|
722
|
-
los_mod?: number;
|
|
723
|
-
luck_mod?: number;
|
|
724
|
-
g1?: GearState;
|
|
725
|
-
g2?: GearState;
|
|
726
|
-
g3?: GearState;
|
|
727
|
-
g4?: GearState;
|
|
728
|
-
g5?: GearState;
|
|
729
|
-
gx?: GearState;
|
|
730
|
-
ss1?: number;
|
|
731
|
-
ss2?: number;
|
|
732
|
-
ss3?: number;
|
|
733
|
-
ss4?: number;
|
|
734
|
-
ss5?: number;
|
|
735
|
-
}
|
|
736
|
-
|
|
737
|
-
export interface GearState {
|
|
738
|
-
id?: string;
|
|
739
|
-
gear_id: number;
|
|
740
|
-
exp?: number;
|
|
741
|
-
stars?: number;
|
|
742
|
-
}
|
|
743
|
-
|
|
744
811
|
export type GearTypeIdArray = [number, number, number, number, number];
|
|
745
812
|
|
|
746
813
|
export type SlotSizeVec = (number | null)[];
|
|
@@ -805,62 +872,6 @@ export interface NightContactChance {
|
|
|
805
872
|
total: number;
|
|
806
873
|
}
|
|
807
874
|
|
|
808
|
-
export interface BattleConfig {
|
|
809
|
-
formation: Record<Formation, NestedFormationDef>;
|
|
810
|
-
anti_air_cutin: Record<number, AntiAirCutinDef>;
|
|
811
|
-
day_cutin: Record<DayCutin, DayCutinDef>;
|
|
812
|
-
night_cutin: Record<NightCutin, NightCutinDef>;
|
|
813
|
-
}
|
|
814
|
-
|
|
815
|
-
export interface NightCutinDef {
|
|
816
|
-
tag: NightCutin;
|
|
817
|
-
hits: number;
|
|
818
|
-
chance_denom: number | null;
|
|
819
|
-
power_mod: number | null;
|
|
820
|
-
accuracy_mod: number | null;
|
|
821
|
-
}
|
|
822
|
-
|
|
823
|
-
export interface DayCutinDef {
|
|
824
|
-
tag: DayCutin;
|
|
825
|
-
hits: number;
|
|
826
|
-
chance_denom: number | null;
|
|
827
|
-
power_mod: number | null;
|
|
828
|
-
accuracy_mod: number | null;
|
|
829
|
-
}
|
|
830
|
-
|
|
831
|
-
export interface AntiAirCutinDef {
|
|
832
|
-
id: number;
|
|
833
|
-
chance_numer: number | null;
|
|
834
|
-
multiplier: number | null;
|
|
835
|
-
guaranteed: number | null;
|
|
836
|
-
sequential: boolean | null;
|
|
837
|
-
}
|
|
838
|
-
|
|
839
|
-
export type NestedFormationDef =
|
|
840
|
-
| FormationDef
|
|
841
|
-
| { top_half: FormationDef; bottom_half: FormationDef };
|
|
842
|
-
|
|
843
|
-
export interface FormationDef {
|
|
844
|
-
tag: Formation;
|
|
845
|
-
protection_rate: number | null;
|
|
846
|
-
fleet_anti_air_mod: number;
|
|
847
|
-
shelling: FormationWarfareDef;
|
|
848
|
-
torpedo: FormationWarfareDef;
|
|
849
|
-
asw: FormationWarfareDef;
|
|
850
|
-
night: FormationWarfareDef;
|
|
851
|
-
shelling_support: FormationWarfareDef;
|
|
852
|
-
}
|
|
853
|
-
|
|
854
|
-
export interface FormationWarfareDef {
|
|
855
|
-
power_mod: number | null;
|
|
856
|
-
accuracy_mod: number | null;
|
|
857
|
-
evasion_mod: number | null;
|
|
858
|
-
}
|
|
859
|
-
|
|
860
|
-
export type AirWaveType = "Jet" | "LandBase" | "Carrier";
|
|
861
|
-
|
|
862
|
-
export type AswAttackType = "DepthCharge" | "Aircraft";
|
|
863
|
-
|
|
864
875
|
/**
|
|
865
876
|
*/
|
|
866
877
|
export class AirSquadron {
|
|
@@ -1072,9 +1083,8 @@ export class FhCore {
|
|
|
1072
1083
|
free(): void;
|
|
1073
1084
|
/**
|
|
1074
1085
|
* @param {MasterData} js_master
|
|
1075
|
-
* @param {Function} js_fn
|
|
1076
1086
|
*/
|
|
1077
|
-
constructor(js_master: MasterData
|
|
1087
|
+
constructor(js_master: MasterData);
|
|
1078
1088
|
/**
|
|
1079
1089
|
* @param {GearState | undefined} input
|
|
1080
1090
|
* @returns {Gear | undefined}
|
|
@@ -1105,6 +1115,10 @@ export class FhCore {
|
|
|
1105
1115
|
* @returns {Ship | undefined}
|
|
1106
1116
|
*/
|
|
1107
1117
|
create_ship_by_id(ship_id: number): Ship | undefined;
|
|
1118
|
+
/**
|
|
1119
|
+
* @returns {Ship[]}
|
|
1120
|
+
*/
|
|
1121
|
+
create_all_ships(): Ship[];
|
|
1108
1122
|
/**
|
|
1109
1123
|
* @param {Uint16Array} main
|
|
1110
1124
|
* @param {Uint16Array | undefined} escort
|
|
@@ -1977,6 +1991,10 @@ export class Ship {
|
|
|
1977
1991
|
* @returns {number | undefined}
|
|
1978
1992
|
*/
|
|
1979
1993
|
readonly torpedo: number | undefined;
|
|
1994
|
+
/**
|
|
1995
|
+
* @returns {number}
|
|
1996
|
+
*/
|
|
1997
|
+
readonly torpedo_accuracy_mod: number;
|
|
1980
1998
|
/**
|
|
1981
1999
|
* @returns {boolean}
|
|
1982
2000
|
*/
|
package/node/fleethub_core.js
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
let imports = {};
|
|
2
2
|
imports['__wbindgen_placeholder__'] = module.exports;
|
|
3
3
|
let wasm;
|
|
4
|
+
const { createEquipmentBonuses } = require(`equipment-bonus`);
|
|
4
5
|
const { TextEncoder, TextDecoder } = require(`util`);
|
|
5
6
|
|
|
6
7
|
const heap = new Array(32).fill(undefined);
|
|
@@ -111,90 +112,10 @@ function addHeapObject(obj) {
|
|
|
111
112
|
return idx;
|
|
112
113
|
}
|
|
113
114
|
|
|
114
|
-
function debugString(val) {
|
|
115
|
-
// primitive types
|
|
116
|
-
const type = typeof val;
|
|
117
|
-
if (type == 'number' || type == 'boolean' || val == null) {
|
|
118
|
-
return `${val}`;
|
|
119
|
-
}
|
|
120
|
-
if (type == 'string') {
|
|
121
|
-
return `"${val}"`;
|
|
122
|
-
}
|
|
123
|
-
if (type == 'symbol') {
|
|
124
|
-
const description = val.description;
|
|
125
|
-
if (description == null) {
|
|
126
|
-
return 'Symbol';
|
|
127
|
-
} else {
|
|
128
|
-
return `Symbol(${description})`;
|
|
129
|
-
}
|
|
130
|
-
}
|
|
131
|
-
if (type == 'function') {
|
|
132
|
-
const name = val.name;
|
|
133
|
-
if (typeof name == 'string' && name.length > 0) {
|
|
134
|
-
return `Function(${name})`;
|
|
135
|
-
} else {
|
|
136
|
-
return 'Function';
|
|
137
|
-
}
|
|
138
|
-
}
|
|
139
|
-
// objects
|
|
140
|
-
if (Array.isArray(val)) {
|
|
141
|
-
const length = val.length;
|
|
142
|
-
let debug = '[';
|
|
143
|
-
if (length > 0) {
|
|
144
|
-
debug += debugString(val[0]);
|
|
145
|
-
}
|
|
146
|
-
for(let i = 1; i < length; i++) {
|
|
147
|
-
debug += ', ' + debugString(val[i]);
|
|
148
|
-
}
|
|
149
|
-
debug += ']';
|
|
150
|
-
return debug;
|
|
151
|
-
}
|
|
152
|
-
// Test for built-in
|
|
153
|
-
const builtInMatches = /\[object ([^\]]+)\]/.exec(toString.call(val));
|
|
154
|
-
let className;
|
|
155
|
-
if (builtInMatches.length > 1) {
|
|
156
|
-
className = builtInMatches[1];
|
|
157
|
-
} else {
|
|
158
|
-
// Failed to match the standard '[object ClassName]'
|
|
159
|
-
return toString.call(val);
|
|
160
|
-
}
|
|
161
|
-
if (className == 'Object') {
|
|
162
|
-
// we're a user defined class or Object
|
|
163
|
-
// JSON.stringify avoids problems with cycles, and is generally much
|
|
164
|
-
// easier than looping through ownProperties of `val`.
|
|
165
|
-
try {
|
|
166
|
-
return 'Object(' + JSON.stringify(val) + ')';
|
|
167
|
-
} catch (_) {
|
|
168
|
-
return 'Object';
|
|
169
|
-
}
|
|
170
|
-
}
|
|
171
|
-
// errors
|
|
172
|
-
if (val instanceof Error) {
|
|
173
|
-
return `${val.name}: ${val.message}\n${val.stack}`;
|
|
174
|
-
}
|
|
175
|
-
// TODO we could test for more things here, like `Set`s and `Map`s.
|
|
176
|
-
return className;
|
|
177
|
-
}
|
|
178
|
-
|
|
179
115
|
const u32CvtShim = new Uint32Array(2);
|
|
180
116
|
|
|
181
117
|
const uint64CvtShim = new BigUint64Array(u32CvtShim.buffer);
|
|
182
118
|
|
|
183
|
-
function _assertClass(instance, klass) {
|
|
184
|
-
if (!(instance instanceof klass)) {
|
|
185
|
-
throw new Error(`expected instance of ${klass.name}`);
|
|
186
|
-
}
|
|
187
|
-
return instance.ptr;
|
|
188
|
-
}
|
|
189
|
-
|
|
190
|
-
let cachegetFloat64Memory0 = null;
|
|
191
|
-
function getFloat64Memory0() {
|
|
192
|
-
if (cachegetFloat64Memory0 === null || cachegetFloat64Memory0.buffer !== wasm.memory.buffer) {
|
|
193
|
-
cachegetFloat64Memory0 = new Float64Array(wasm.memory.buffer);
|
|
194
|
-
}
|
|
195
|
-
return cachegetFloat64Memory0;
|
|
196
|
-
}
|
|
197
|
-
|
|
198
119
|
function isLikeNone(x) {
|
|
199
120
|
return x === undefined || x === null;
|
|
200
121
|
}
|
|
@@ -217,6 +138,14 @@ function getArrayJsValueFromWasm0(ptr, len) {
|
|
|
217
138
|
return result;
|
|
218
139
|
}
|
|
219
140
|
|
|
141
|
+
let cachegetFloat64Memory0 = null;
|
|
142
|
+
function getFloat64Memory0() {
|
|
143
|
+
if (cachegetFloat64Memory0 === null || cachegetFloat64Memory0.buffer !== wasm.memory.buffer) {
|
|
144
|
+
cachegetFloat64Memory0 = new Float64Array(wasm.memory.buffer);
|
|
145
|
+
}
|
|
146
|
+
return cachegetFloat64Memory0;
|
|
147
|
+
}
|
|
148
|
+
|
|
220
149
|
let cachegetUint16Memory0 = null;
|
|
221
150
|
function getUint16Memory0() {
|
|
222
151
|
if (cachegetUint16Memory0 === null || cachegetUint16Memory0.buffer !== wasm.memory.buffer) {
|
|
@@ -228,11 +157,13 @@ function getUint16Memory0() {
|
|
|
228
157
|
function getArrayU16FromWasm0(ptr, len) {
|
|
229
158
|
return getUint16Memory0().subarray(ptr / 2, ptr / 2 + len);
|
|
230
159
|
}
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
}
|
|
160
|
+
|
|
161
|
+
function _assertClass(instance, klass) {
|
|
162
|
+
if (!(instance instanceof klass)) {
|
|
163
|
+
throw new Error(`expected instance of ${klass.name}`);
|
|
164
|
+
}
|
|
165
|
+
return instance.ptr;
|
|
166
|
+
}
|
|
236
167
|
|
|
237
168
|
function passArray16ToWasm0(arg, malloc) {
|
|
238
169
|
const ptr = malloc(arg.length * 2);
|
|
@@ -251,6 +182,11 @@ function passArray8ToWasm0(arg, malloc) {
|
|
|
251
182
|
WASM_VECTOR_LEN = arg.length;
|
|
252
183
|
return ptr;
|
|
253
184
|
}
|
|
185
|
+
/**
|
|
186
|
+
*/
|
|
187
|
+
module.exports.set_panic_hook = function() {
|
|
188
|
+
wasm.set_panic_hook();
|
|
189
|
+
};
|
|
254
190
|
|
|
255
191
|
function handleError(f, args) {
|
|
256
192
|
try {
|
|
@@ -815,12 +751,11 @@ class FhCore {
|
|
|
815
751
|
}
|
|
816
752
|
/**
|
|
817
753
|
* @param {MasterData} js_master
|
|
818
|
-
* @param {Function} js_fn
|
|
819
754
|
*/
|
|
820
|
-
constructor(js_master
|
|
755
|
+
constructor(js_master) {
|
|
821
756
|
try {
|
|
822
757
|
const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
|
|
823
|
-
wasm.fhcore_new(retptr, addHeapObject(js_master)
|
|
758
|
+
wasm.fhcore_new(retptr, addHeapObject(js_master));
|
|
824
759
|
var r0 = getInt32Memory0()[retptr / 4 + 0];
|
|
825
760
|
var r1 = getInt32Memory0()[retptr / 4 + 1];
|
|
826
761
|
var r2 = getInt32Memory0()[retptr / 4 + 2];
|
|
@@ -881,6 +816,13 @@ class FhCore {
|
|
|
881
816
|
return ret === 0 ? undefined : Ship.__wrap(ret);
|
|
882
817
|
}
|
|
883
818
|
/**
|
|
819
|
+
* @returns {Ship[]}
|
|
820
|
+
*/
|
|
821
|
+
create_all_ships() {
|
|
822
|
+
const ret = wasm.fhcore_create_all_ships(this.ptr);
|
|
823
|
+
return takeObject(ret);
|
|
824
|
+
}
|
|
825
|
+
/**
|
|
884
826
|
* @param {Uint16Array} main
|
|
885
827
|
* @param {Uint16Array | undefined} escort
|
|
886
828
|
* @returns {Comp}
|
|
@@ -3103,6 +3045,13 @@ class Ship {
|
|
|
3103
3045
|
return ret;
|
|
3104
3046
|
}
|
|
3105
3047
|
/**
|
|
3048
|
+
* @returns {number}
|
|
3049
|
+
*/
|
|
3050
|
+
get torpedo_accuracy_mod() {
|
|
3051
|
+
const ret = wasm.ship_torpedo_accuracy_mod(this.ptr);
|
|
3052
|
+
return ret;
|
|
3053
|
+
}
|
|
3054
|
+
/**
|
|
3106
3055
|
* @returns {boolean}
|
|
3107
3056
|
*/
|
|
3108
3057
|
is_installation() {
|
|
@@ -3281,10 +3230,20 @@ class Ship {
|
|
|
3281
3230
|
}
|
|
3282
3231
|
module.exports.Ship = Ship;
|
|
3283
3232
|
|
|
3233
|
+
module.exports.__wbg_ship_new = function(arg0) {
|
|
3234
|
+
const ret = Ship.__wrap(arg0);
|
|
3235
|
+
return addHeapObject(ret);
|
|
3236
|
+
};
|
|
3237
|
+
|
|
3284
3238
|
module.exports.__wbindgen_object_drop_ref = function(arg0) {
|
|
3285
3239
|
takeObject(arg0);
|
|
3286
3240
|
};
|
|
3287
3241
|
|
|
3242
|
+
module.exports.__wbg_createEquipmentBonuses_824ede8c43fa78b2 = function(arg0, arg1) {
|
|
3243
|
+
const ret = createEquipmentBonuses(takeObject(arg0), takeObject(arg1));
|
|
3244
|
+
return addHeapObject(ret);
|
|
3245
|
+
};
|
|
3246
|
+
|
|
3288
3247
|
module.exports.__wbindgen_json_serialize = function(arg0, arg1) {
|
|
3289
3248
|
const obj = getObject(arg1);
|
|
3290
3249
|
const ret = JSON.stringify(obj === undefined ? null : obj);
|
|
@@ -3379,6 +3338,11 @@ module.exports.__wbg_msCrypto_d07655bf62361f21 = function(arg0) {
|
|
|
3379
3338
|
return addHeapObject(ret);
|
|
3380
3339
|
};
|
|
3381
3340
|
|
|
3341
|
+
module.exports.__wbg_new_94fb1279cf6afea5 = function() {
|
|
3342
|
+
const ret = new Array();
|
|
3343
|
+
return addHeapObject(ret);
|
|
3344
|
+
};
|
|
3345
|
+
|
|
3382
3346
|
module.exports.__wbg_newnoargs_e23b458e372830de = function(arg0, arg1) {
|
|
3383
3347
|
const ret = new Function(getStringFromWasm0(arg0, arg1));
|
|
3384
3348
|
return addHeapObject(ret);
|
|
@@ -3394,10 +3358,10 @@ module.exports.__wbindgen_object_clone_ref = function(arg0) {
|
|
|
3394
3358
|
return addHeapObject(ret);
|
|
3395
3359
|
};
|
|
3396
3360
|
|
|
3397
|
-
module.exports.
|
|
3398
|
-
const ret = getObject(arg0).
|
|
3399
|
-
return
|
|
3400
|
-
}
|
|
3361
|
+
module.exports.__wbg_push_40c6a90f1805aa90 = function(arg0, arg1) {
|
|
3362
|
+
const ret = getObject(arg0).push(getObject(arg1));
|
|
3363
|
+
return ret;
|
|
3364
|
+
};
|
|
3401
3365
|
|
|
3402
3366
|
module.exports.__wbg_self_99737b4dcdf6f0d8 = function() { return handleError(function () {
|
|
3403
3367
|
const ret = self.self;
|
|
@@ -3453,14 +3417,6 @@ module.exports.__wbg_subarray_da527dbd24eafb6b = function(arg0, arg1, arg2) {
|
|
|
3453
3417
|
return addHeapObject(ret);
|
|
3454
3418
|
};
|
|
3455
3419
|
|
|
3456
|
-
module.exports.__wbindgen_debug_string = function(arg0, arg1) {
|
|
3457
|
-
const ret = debugString(getObject(arg1));
|
|
3458
|
-
const ptr0 = passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
|
|
3459
|
-
const len0 = WASM_VECTOR_LEN;
|
|
3460
|
-
getInt32Memory0()[arg0 / 4 + 1] = len0;
|
|
3461
|
-
getInt32Memory0()[arg0 / 4 + 0] = ptr0;
|
|
3462
|
-
};
|
|
3463
|
-
|
|
3464
3420
|
module.exports.__wbindgen_throw = function(arg0, arg1) {
|
|
3465
3421
|
throw new Error(getStringFromWasm0(arg0, arg1));
|
|
3466
3422
|
};
|
|
Binary file
|