fleethub-core 1.11.18 → 1.11.19

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.
@@ -8,21 +8,6 @@ export function parse_ship_conditions(value: ShipConditions): ShipConditions;
8
8
  /**
9
9
  */
10
10
  export function set_panic_hook(): void;
11
- export type GearTypeIdArray = [number, number, number, number, number];
12
-
13
- export interface DamageReport {
14
- miss_damage_min: number;
15
- miss_damage_max: number;
16
- normal_damage_min: number;
17
- normal_damage_max: number;
18
- critical_damage_min: number;
19
- critical_damage_max: number;
20
- normal_scratch_rate: number;
21
- critical_scratch_rate: number;
22
- damage_density: Histogram<number, number>;
23
- damage_state_density: Histogram<DamageState, number>;
24
- }
25
-
26
11
  export interface CompAnalyzerConfig {
27
12
  engagement: Engagement;
28
13
  formation: Formation;
@@ -184,6 +169,8 @@ export interface NightFleetConditions {
184
169
 
185
170
  export type ContactRank = "Rank1" | "Rank2" | "Rank3";
186
171
 
172
+ export type DamageState = "Normal" | "Shouha" | "Chuuha" | "Taiha" | "Sunk";
173
+
187
174
  export interface FleetState {
188
175
  id?: string;
189
176
  len?: number;
@@ -218,6 +205,22 @@ export interface ShipConditions extends ShipPosition {
218
205
  amagiri_index?: number | null;
219
206
  }
220
207
 
208
+ export type SpecialEnemyType =
209
+ | "None"
210
+ | "SoftSkinned"
211
+ | "Pillbox"
212
+ | "IsolatedIsland"
213
+ | "SupplyDepot"
214
+ | "NewSupplyDepot"
215
+ | "HarbourSummerPrincess"
216
+ | "PtImp"
217
+ | "BattleshipSummerPrincess"
218
+ | "HeavyCruiserSummerPrincess"
219
+ | "FrenchBattleshipPrincess"
220
+ | "AnchorageWaterDemonVacationMode"
221
+ | "DockPrincess"
222
+ | "SummerAircraftCarrierDemon";
223
+
221
224
  export type FhResult<T> = { Ok: T } | { Err: string };
222
225
 
223
226
  export interface MasterData extends MasterBattleDefinitions {
@@ -732,46 +735,6 @@ export type SlotSizeVec = (number | null)[];
732
735
 
733
736
  export type SpeedGroup = "A" | "B1" | "B2" | "C";
734
737
 
735
- export type GearVecInput = GearInput[];
736
-
737
- export interface GearInput {
738
- gear_id: number;
739
- types: GearTypeIdArray;
740
- firepower: number;
741
- torpedo: number;
742
- anti_air: number;
743
- armor: number;
744
- evasion: number;
745
- asw: number;
746
- los: number;
747
- bombing: number;
748
- accuracy: number;
749
- range: number;
750
- radius: number;
751
- stars: number;
752
- ace: number;
753
- }
754
-
755
- export interface ShipInput {
756
- ship_id: number;
757
- ctype: number;
758
- stype: number;
759
- yomi: string;
760
- }
761
-
762
- export interface EBonuses {
763
- firepower: number;
764
- torpedo: number;
765
- anti_air: number;
766
- armor: number;
767
- evasion: number;
768
- asw: number;
769
- los: number;
770
- bombing: number;
771
- accuracy: number;
772
- range: number;
773
- }
774
-
775
738
  export interface MasterShip {
776
739
  ship_id: number;
777
740
  name: string;
@@ -806,17 +769,16 @@ export interface MasterShip {
806
769
 
807
770
  export type StatInterval = [number | null, number | null];
808
771
 
809
- export interface FleetCutinReport<T> {
810
- cutin: FleetCutin;
811
- rate: number | null;
812
- formation: Formation;
813
- attacks: FleetCutinAttackReport<T>[];
814
- }
815
-
816
- export interface FleetCutinAttackReport<T> extends AttackReport<T> {
817
- index: number;
818
- ship_id: number;
819
- power_mod: number;
772
+ export interface AttackAnalysis {
773
+ attacker_is_player: boolean;
774
+ attacker_ship_id: number;
775
+ target_ship_id: number;
776
+ historical_params: HistoricalParams;
777
+ day: ActionReport<DayPhaseAttackStyle>;
778
+ night: ActionReport<NightPhaseAttackStyle>;
779
+ closing_torpedo: ActionReport<TorpedoAttackStyle>;
780
+ opening_asw: ActionReport<AswAttackStyle>;
781
+ support_shelling: ActionReport<SupportShellingStyle>;
820
782
  }
821
783
 
822
784
  export type DayCutin =
@@ -958,6 +920,27 @@ export type GearCategory =
958
920
  | "LandBased"
959
921
  | "Misc";
960
922
 
923
+ export type ShipAttr =
924
+ | "Unknown"
925
+ | "NightCarrier"
926
+ | "Installation"
927
+ | "RoyalNavy"
928
+ | "Kai2"
929
+ | "TurbineSpeedBonus"
930
+ | "NewModelBoilerSpeedBonus"
931
+ | "Pillbox"
932
+ | "IsolatedIsland"
933
+ | "HarbourSummerPrincess"
934
+ | "SupplyDepot"
935
+ | "NewSupplyDepot"
936
+ | "PtImp"
937
+ | "BattleshipSummerPrincess"
938
+ | "HeavyCruiserSummerPrincess"
939
+ | "AnchorageWaterDemonVacationMode"
940
+ | "FrenchBattleshipPrincess"
941
+ | "DockPrincess"
942
+ | "SummerAircraftCarrierDemon";
943
+
961
944
  export type ShipCategory =
962
945
  | "Battleship"
963
946
  | "AircraftCarrier"
@@ -993,56 +976,73 @@ export type ShipType =
993
976
  | "CT"
994
977
  | "AO";
995
978
 
996
- export interface AttackAnalysis {
997
- attacker_is_player: boolean;
998
- attacker_ship_id: number;
999
- target_ship_id: number;
1000
- historical_params: HistoricalParams;
1001
- day: ActionReport<DayPhaseAttackStyle>;
1002
- night: ActionReport<NightPhaseAttackStyle>;
1003
- closing_torpedo: ActionReport<TorpedoAttackStyle>;
1004
- opening_asw: ActionReport<AswAttackStyle>;
1005
- support_shelling: ActionReport<SupportShellingStyle>;
979
+ export type GearTypeIdArray = [number, number, number, number, number];
980
+
981
+ export type GearVecInput = GearInput[];
982
+
983
+ export interface GearInput {
984
+ gear_id: number;
985
+ types: GearTypeIdArray;
986
+ firepower: number;
987
+ torpedo: number;
988
+ anti_air: number;
989
+ armor: number;
990
+ evasion: number;
991
+ asw: number;
992
+ los: number;
993
+ bombing: number;
994
+ accuracy: number;
995
+ range: number;
996
+ radius: number;
997
+ stars: number;
998
+ ace: number;
1006
999
  }
1007
1000
 
1008
- export type DamageState = "Normal" | "Shouha" | "Chuuha" | "Taiha" | "Sunk";
1001
+ export interface ShipInput {
1002
+ ship_id: number;
1003
+ ctype: number;
1004
+ stype: number;
1005
+ yomi: string;
1006
+ }
1009
1007
 
1010
- export type ShipAttr =
1011
- | "Unknown"
1012
- | "NightCarrier"
1013
- | "Installation"
1014
- | "RoyalNavy"
1015
- | "Kai2"
1016
- | "TurbineSpeedBonus"
1017
- | "NewModelBoilerSpeedBonus"
1018
- | "Pillbox"
1019
- | "IsolatedIsland"
1020
- | "HarbourSummerPrincess"
1021
- | "SupplyDepot"
1022
- | "NewSupplyDepot"
1023
- | "PtImp"
1024
- | "BattleshipSummerPrincess"
1025
- | "HeavyCruiserSummerPrincess"
1026
- | "AnchorageWaterDemonVacationMode"
1027
- | "FrenchBattleshipPrincess"
1028
- | "DockPrincess"
1029
- | "SummerAircraftCarrierDemon";
1008
+ export interface EBonuses {
1009
+ firepower: number;
1010
+ torpedo: number;
1011
+ anti_air: number;
1012
+ armor: number;
1013
+ evasion: number;
1014
+ asw: number;
1015
+ los: number;
1016
+ bombing: number;
1017
+ accuracy: number;
1018
+ range: number;
1019
+ }
1030
1020
 
1031
- export type SpecialEnemyType =
1032
- | "None"
1033
- | "SoftSkinned"
1034
- | "Pillbox"
1035
- | "IsolatedIsland"
1036
- | "SupplyDepot"
1037
- | "NewSupplyDepot"
1038
- | "HarbourSummerPrincess"
1039
- | "PtImp"
1040
- | "BattleshipSummerPrincess"
1041
- | "HeavyCruiserSummerPrincess"
1042
- | "FrenchBattleshipPrincess"
1043
- | "AnchorageWaterDemonVacationMode"
1044
- | "DockPrincess"
1045
- | "SummerAircraftCarrierDemon";
1021
+ export interface FleetCutinReport<T> {
1022
+ cutin: FleetCutin;
1023
+ rate: number | null;
1024
+ formation: Formation;
1025
+ attacks: FleetCutinAttackReport<T>[];
1026
+ }
1027
+
1028
+ export interface FleetCutinAttackReport<T> extends AttackReport<T> {
1029
+ index: number;
1030
+ ship_id: number;
1031
+ power_mod: number;
1032
+ }
1033
+
1034
+ export interface DamageReport {
1035
+ miss_damage_min: number;
1036
+ miss_damage_max: number;
1037
+ normal_damage_min: number;
1038
+ normal_damage_max: number;
1039
+ critical_damage_min: number;
1040
+ critical_damage_max: number;
1041
+ normal_scratch_rate: number;
1042
+ critical_scratch_rate: number;
1043
+ damage_density: Histogram<number, number>;
1044
+ damage_state_density: Histogram<DamageState, number>;
1045
+ }
1046
1046
 
1047
1047
  /**
1048
1048
  */
@@ -1295,6 +1295,11 @@ export class FhCore {
1295
1295
  * @returns {Org | undefined}
1296
1296
  */
1297
1297
  create_org(input?: OrgState): Org | undefined;
1298
+ /**
1299
+ * @param {number} ship_id
1300
+ * @returns {ShipState | undefined}
1301
+ */
1302
+ create_ship_state_by_id(ship_id: number): ShipState | undefined;
1298
1303
  /**
1299
1304
  * @param {number} ship_id
1300
1305
  * @returns {Ship | undefined}
@@ -139,13 +139,6 @@ function getArrayJsValueFromWasm0(ptr, len) {
139
139
  return result;
140
140
  }
141
141
 
142
- function _assertClass(instance, klass) {
143
- if (!(instance instanceof klass)) {
144
- throw new Error(`expected instance of ${klass.name}`);
145
- }
146
- return instance.ptr;
147
- }
148
-
149
142
  let cachedFloat64Memory0 = null;
150
143
 
151
144
  function getFloat64Memory0() {
@@ -154,6 +147,13 @@ function getFloat64Memory0() {
154
147
  }
155
148
  return cachedFloat64Memory0;
156
149
  }
150
+
151
+ function _assertClass(instance, klass) {
152
+ if (!(instance instanceof klass)) {
153
+ throw new Error(`expected instance of ${klass.name}`);
154
+ }
155
+ return instance.ptr;
156
+ }
157
157
  /**
158
158
  * @param {ShipConditions} value
159
159
  * @returns {ShipConditions}
@@ -863,6 +863,14 @@ class FhCore {
863
863
  }
864
864
  /**
865
865
  * @param {number} ship_id
866
+ * @returns {ShipState | undefined}
867
+ */
868
+ create_ship_state_by_id(ship_id) {
869
+ const ret = wasm.fhcore_create_ship_state_by_id(this.__wbg_ptr, ship_id);
870
+ return takeObject(ret);
871
+ }
872
+ /**
873
+ * @param {number} ship_id
866
874
  * @returns {Ship | undefined}
867
875
  */
868
876
  create_ship_by_id(ship_id) {
@@ -2963,7 +2971,7 @@ module.exports.__wbg_ship_new = function(arg0) {
2963
2971
  return addHeapObject(ret);
2964
2972
  };
2965
2973
 
2966
- module.exports.__wbg_createEquipmentBonuses_03da72c9fa1a8001 = function(arg0, arg1) {
2974
+ module.exports.__wbg_createEquipmentBonuses_9b9d0a315ee50a1e = function(arg0, arg1) {
2967
2975
  const ret = createEquipmentBonuses(takeObject(arg0), takeObject(arg1));
2968
2976
  return addHeapObject(ret);
2969
2977
  };
Binary file
@@ -1,19 +1,28 @@
1
1
  /* tslint:disable */
2
2
  /* eslint-disable */
3
3
  export const memory: WebAssembly.Memory;
4
- export function __wbg_airsquadron_free(a: number): void;
5
- export function __wbg_get_airsquadron_id(a: number, b: number): void;
6
- export function __wbg_set_airsquadron_id(a: number, b: number, c: number): void;
7
- export function __wbg_get_airsquadron_hash(a: number): number;
8
- export function __wbg_set_airsquadron_hash(a: number, b: number): void;
9
- export function __wbg_get_airsquadron_mode(a: number): number;
10
- export function __wbg_set_airsquadron_mode(a: number, b: number): void;
11
- export function airsquadron_get_gear(a: number, b: number, c: number): number;
12
- export function airsquadron_get_slot_size(a: number, b: number, c: number): void;
13
- export function airsquadron_get_max_slot_size(a: number, b: number, c: number): void;
14
- export function airsquadron_fighter_power(a: number): number;
15
- export function airsquadron_interception_power(a: number): number;
16
- export function airsquadron_radius(a: number): number;
4
+ export function __wbg_fleet_free(a: number): void;
5
+ export function __wbg_get_fleet_id(a: number, b: number): void;
6
+ export function __wbg_set_fleet_id(a: number, b: number, c: number): void;
7
+ export function __wbg_get_fleet_hash(a: number): number;
8
+ export function __wbg_get_fleet_len(a: number): number;
9
+ export function fleet_meta(a: number): number;
10
+ export function fleet_ship_keys(a: number, b: number): void;
11
+ export function fleet_ship_ids(a: number, b: number): void;
12
+ export function fleet_get_gear_ids_by_improvable(a: number, b: number): void;
13
+ export function fleet_get_gear_ids_by_proficiency(a: number, b: number): void;
14
+ export function fleet_get_damage_bound(a: number, b: number, c: number, d: number): number;
15
+ export function fleet_get_remaining_fuel(a: number, b: number, c: number, d: number, e: number): number;
16
+ export function fleet_get_remaining_ammo(a: number, b: number, c: number, d: number, e: number): number;
17
+ export function fleet_count_ships(a: number): number;
18
+ export function fleet_get_ship(a: number, b: number): number;
19
+ export function fleet_fleet_los_mod(a: number, b: number): void;
20
+ export function fleet_fighter_power(a: number, b: number, c: number): void;
21
+ export function fleet_elos(a: number, b: number, c: number, d: number): void;
22
+ export function fleet_aviation_detection_score(a: number, b: number): void;
23
+ export function fleet_expedition_bonus(a: number): number;
24
+ export function fleet_sum_ship_stat_by(a: number, b: number, c: number, d: number): void;
25
+ export function fleet_reset_battle_state(a: number): void;
17
26
  export function __wbg_ship_free(a: number): void;
18
27
  export function __wbg_get_ship_id(a: number, b: number): void;
19
28
  export function __wbg_set_ship_id(a: number, b: number, c: number): void;
@@ -105,29 +114,20 @@ export function ship_basic_defense_power(a: number, b: number, c: number): void;
105
114
  export function ship_transport_point(a: number): number;
106
115
  export function ship_elos(a: number, b: number, c: number): void;
107
116
  export function ship_ohko_power(a: number, b: number): void;
117
+ export function __wbg_airsquadron_free(a: number): void;
118
+ export function __wbg_get_airsquadron_id(a: number, b: number): void;
119
+ export function __wbg_set_airsquadron_id(a: number, b: number, c: number): void;
120
+ export function __wbg_get_airsquadron_hash(a: number): number;
121
+ export function __wbg_set_airsquadron_hash(a: number, b: number): void;
122
+ export function __wbg_get_airsquadron_mode(a: number): number;
123
+ export function __wbg_set_airsquadron_mode(a: number, b: number): void;
124
+ export function airsquadron_get_gear(a: number, b: number, c: number): number;
125
+ export function airsquadron_get_slot_size(a: number, b: number, c: number): void;
126
+ export function airsquadron_get_max_slot_size(a: number, b: number, c: number): void;
127
+ export function airsquadron_fighter_power(a: number): number;
128
+ export function airsquadron_interception_power(a: number): number;
129
+ export function airsquadron_radius(a: number): number;
108
130
  export function parse_ship_conditions(a: number): number;
109
- export function __wbg_fleet_free(a: number): void;
110
- export function __wbg_get_fleet_id(a: number, b: number): void;
111
- export function __wbg_set_fleet_id(a: number, b: number, c: number): void;
112
- export function __wbg_get_fleet_hash(a: number): number;
113
- export function __wbg_get_fleet_len(a: number): number;
114
- export function fleet_meta(a: number): number;
115
- export function fleet_ship_keys(a: number, b: number): void;
116
- export function fleet_ship_ids(a: number, b: number): void;
117
- export function fleet_get_gear_ids_by_improvable(a: number, b: number): void;
118
- export function fleet_get_gear_ids_by_proficiency(a: number, b: number): void;
119
- export function fleet_get_damage_bound(a: number, b: number, c: number, d: number): number;
120
- export function fleet_get_remaining_fuel(a: number, b: number, c: number, d: number, e: number): number;
121
- export function fleet_get_remaining_ammo(a: number, b: number, c: number, d: number, e: number): number;
122
- export function fleet_count_ships(a: number): number;
123
- export function fleet_get_ship(a: number, b: number): number;
124
- export function fleet_fleet_los_mod(a: number, b: number): void;
125
- export function fleet_fighter_power(a: number, b: number, c: number): void;
126
- export function fleet_elos(a: number, b: number, c: number, d: number): void;
127
- export function fleet_aviation_detection_score(a: number, b: number): void;
128
- export function fleet_expedition_bonus(a: number): number;
129
- export function fleet_sum_ship_stat_by(a: number, b: number, c: number, d: number): void;
130
- export function fleet_reset_battle_state(a: number): void;
131
131
  export function __wbg_comp_free(a: number): void;
132
132
  export function __wbg_get_comp_org_type(a: number): number;
133
133
  export function __wbg_get_comp_hq_level(a: number): number;
@@ -267,6 +267,7 @@ export function fhcore_create_ship(a: number, b: number): number;
267
267
  export function fhcore_create_air_squadron(a: number, b: number): number;
268
268
  export function fhcore_create_fleet(a: number, b: number): number;
269
269
  export function fhcore_create_org(a: number, b: number): number;
270
+ export function fhcore_create_ship_state_by_id(a: number, b: number): number;
270
271
  export function fhcore_create_ship_by_id(a: number, b: number): number;
271
272
  export function fhcore_create_all_ships(a: number): number;
272
273
  export function fhcore_create_comp_by_map_enemy(a: number, b: number, c: number, d: number, e: number): number;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "fleethub-core",
3
- "version": "1.11.18",
3
+ "version": "1.11.19",
4
4
  "license": "UNLICENSED",
5
5
  "exports": {
6
6
  "import": "./pkg/fleethub_core.js",
@@ -8,21 +8,6 @@ export function parse_ship_conditions(value: ShipConditions): ShipConditions;
8
8
  /**
9
9
  */
10
10
  export function set_panic_hook(): void;
11
- export type GearTypeIdArray = [number, number, number, number, number];
12
-
13
- export interface DamageReport {
14
- miss_damage_min: number;
15
- miss_damage_max: number;
16
- normal_damage_min: number;
17
- normal_damage_max: number;
18
- critical_damage_min: number;
19
- critical_damage_max: number;
20
- normal_scratch_rate: number;
21
- critical_scratch_rate: number;
22
- damage_density: Histogram<number, number>;
23
- damage_state_density: Histogram<DamageState, number>;
24
- }
25
-
26
11
  export interface CompAnalyzerConfig {
27
12
  engagement: Engagement;
28
13
  formation: Formation;
@@ -184,6 +169,8 @@ export interface NightFleetConditions {
184
169
 
185
170
  export type ContactRank = "Rank1" | "Rank2" | "Rank3";
186
171
 
172
+ export type DamageState = "Normal" | "Shouha" | "Chuuha" | "Taiha" | "Sunk";
173
+
187
174
  export interface FleetState {
188
175
  id?: string;
189
176
  len?: number;
@@ -218,6 +205,22 @@ export interface ShipConditions extends ShipPosition {
218
205
  amagiri_index?: number | null;
219
206
  }
220
207
 
208
+ export type SpecialEnemyType =
209
+ | "None"
210
+ | "SoftSkinned"
211
+ | "Pillbox"
212
+ | "IsolatedIsland"
213
+ | "SupplyDepot"
214
+ | "NewSupplyDepot"
215
+ | "HarbourSummerPrincess"
216
+ | "PtImp"
217
+ | "BattleshipSummerPrincess"
218
+ | "HeavyCruiserSummerPrincess"
219
+ | "FrenchBattleshipPrincess"
220
+ | "AnchorageWaterDemonVacationMode"
221
+ | "DockPrincess"
222
+ | "SummerAircraftCarrierDemon";
223
+
221
224
  export type FhResult<T> = { Ok: T } | { Err: string };
222
225
 
223
226
  export interface MasterData extends MasterBattleDefinitions {
@@ -732,46 +735,6 @@ export type SlotSizeVec = (number | null)[];
732
735
 
733
736
  export type SpeedGroup = "A" | "B1" | "B2" | "C";
734
737
 
735
- export type GearVecInput = GearInput[];
736
-
737
- export interface GearInput {
738
- gear_id: number;
739
- types: GearTypeIdArray;
740
- firepower: number;
741
- torpedo: number;
742
- anti_air: number;
743
- armor: number;
744
- evasion: number;
745
- asw: number;
746
- los: number;
747
- bombing: number;
748
- accuracy: number;
749
- range: number;
750
- radius: number;
751
- stars: number;
752
- ace: number;
753
- }
754
-
755
- export interface ShipInput {
756
- ship_id: number;
757
- ctype: number;
758
- stype: number;
759
- yomi: string;
760
- }
761
-
762
- export interface EBonuses {
763
- firepower: number;
764
- torpedo: number;
765
- anti_air: number;
766
- armor: number;
767
- evasion: number;
768
- asw: number;
769
- los: number;
770
- bombing: number;
771
- accuracy: number;
772
- range: number;
773
- }
774
-
775
738
  export interface MasterShip {
776
739
  ship_id: number;
777
740
  name: string;
@@ -806,17 +769,16 @@ export interface MasterShip {
806
769
 
807
770
  export type StatInterval = [number | null, number | null];
808
771
 
809
- export interface FleetCutinReport<T> {
810
- cutin: FleetCutin;
811
- rate: number | null;
812
- formation: Formation;
813
- attacks: FleetCutinAttackReport<T>[];
814
- }
815
-
816
- export interface FleetCutinAttackReport<T> extends AttackReport<T> {
817
- index: number;
818
- ship_id: number;
819
- power_mod: number;
772
+ export interface AttackAnalysis {
773
+ attacker_is_player: boolean;
774
+ attacker_ship_id: number;
775
+ target_ship_id: number;
776
+ historical_params: HistoricalParams;
777
+ day: ActionReport<DayPhaseAttackStyle>;
778
+ night: ActionReport<NightPhaseAttackStyle>;
779
+ closing_torpedo: ActionReport<TorpedoAttackStyle>;
780
+ opening_asw: ActionReport<AswAttackStyle>;
781
+ support_shelling: ActionReport<SupportShellingStyle>;
820
782
  }
821
783
 
822
784
  export type DayCutin =
@@ -958,6 +920,27 @@ export type GearCategory =
958
920
  | "LandBased"
959
921
  | "Misc";
960
922
 
923
+ export type ShipAttr =
924
+ | "Unknown"
925
+ | "NightCarrier"
926
+ | "Installation"
927
+ | "RoyalNavy"
928
+ | "Kai2"
929
+ | "TurbineSpeedBonus"
930
+ | "NewModelBoilerSpeedBonus"
931
+ | "Pillbox"
932
+ | "IsolatedIsland"
933
+ | "HarbourSummerPrincess"
934
+ | "SupplyDepot"
935
+ | "NewSupplyDepot"
936
+ | "PtImp"
937
+ | "BattleshipSummerPrincess"
938
+ | "HeavyCruiserSummerPrincess"
939
+ | "AnchorageWaterDemonVacationMode"
940
+ | "FrenchBattleshipPrincess"
941
+ | "DockPrincess"
942
+ | "SummerAircraftCarrierDemon";
943
+
961
944
  export type ShipCategory =
962
945
  | "Battleship"
963
946
  | "AircraftCarrier"
@@ -993,56 +976,73 @@ export type ShipType =
993
976
  | "CT"
994
977
  | "AO";
995
978
 
996
- export interface AttackAnalysis {
997
- attacker_is_player: boolean;
998
- attacker_ship_id: number;
999
- target_ship_id: number;
1000
- historical_params: HistoricalParams;
1001
- day: ActionReport<DayPhaseAttackStyle>;
1002
- night: ActionReport<NightPhaseAttackStyle>;
1003
- closing_torpedo: ActionReport<TorpedoAttackStyle>;
1004
- opening_asw: ActionReport<AswAttackStyle>;
1005
- support_shelling: ActionReport<SupportShellingStyle>;
979
+ export type GearTypeIdArray = [number, number, number, number, number];
980
+
981
+ export type GearVecInput = GearInput[];
982
+
983
+ export interface GearInput {
984
+ gear_id: number;
985
+ types: GearTypeIdArray;
986
+ firepower: number;
987
+ torpedo: number;
988
+ anti_air: number;
989
+ armor: number;
990
+ evasion: number;
991
+ asw: number;
992
+ los: number;
993
+ bombing: number;
994
+ accuracy: number;
995
+ range: number;
996
+ radius: number;
997
+ stars: number;
998
+ ace: number;
1006
999
  }
1007
1000
 
1008
- export type DamageState = "Normal" | "Shouha" | "Chuuha" | "Taiha" | "Sunk";
1001
+ export interface ShipInput {
1002
+ ship_id: number;
1003
+ ctype: number;
1004
+ stype: number;
1005
+ yomi: string;
1006
+ }
1009
1007
 
1010
- export type ShipAttr =
1011
- | "Unknown"
1012
- | "NightCarrier"
1013
- | "Installation"
1014
- | "RoyalNavy"
1015
- | "Kai2"
1016
- | "TurbineSpeedBonus"
1017
- | "NewModelBoilerSpeedBonus"
1018
- | "Pillbox"
1019
- | "IsolatedIsland"
1020
- | "HarbourSummerPrincess"
1021
- | "SupplyDepot"
1022
- | "NewSupplyDepot"
1023
- | "PtImp"
1024
- | "BattleshipSummerPrincess"
1025
- | "HeavyCruiserSummerPrincess"
1026
- | "AnchorageWaterDemonVacationMode"
1027
- | "FrenchBattleshipPrincess"
1028
- | "DockPrincess"
1029
- | "SummerAircraftCarrierDemon";
1008
+ export interface EBonuses {
1009
+ firepower: number;
1010
+ torpedo: number;
1011
+ anti_air: number;
1012
+ armor: number;
1013
+ evasion: number;
1014
+ asw: number;
1015
+ los: number;
1016
+ bombing: number;
1017
+ accuracy: number;
1018
+ range: number;
1019
+ }
1030
1020
 
1031
- export type SpecialEnemyType =
1032
- | "None"
1033
- | "SoftSkinned"
1034
- | "Pillbox"
1035
- | "IsolatedIsland"
1036
- | "SupplyDepot"
1037
- | "NewSupplyDepot"
1038
- | "HarbourSummerPrincess"
1039
- | "PtImp"
1040
- | "BattleshipSummerPrincess"
1041
- | "HeavyCruiserSummerPrincess"
1042
- | "FrenchBattleshipPrincess"
1043
- | "AnchorageWaterDemonVacationMode"
1044
- | "DockPrincess"
1045
- | "SummerAircraftCarrierDemon";
1021
+ export interface FleetCutinReport<T> {
1022
+ cutin: FleetCutin;
1023
+ rate: number | null;
1024
+ formation: Formation;
1025
+ attacks: FleetCutinAttackReport<T>[];
1026
+ }
1027
+
1028
+ export interface FleetCutinAttackReport<T> extends AttackReport<T> {
1029
+ index: number;
1030
+ ship_id: number;
1031
+ power_mod: number;
1032
+ }
1033
+
1034
+ export interface DamageReport {
1035
+ miss_damage_min: number;
1036
+ miss_damage_max: number;
1037
+ normal_damage_min: number;
1038
+ normal_damage_max: number;
1039
+ critical_damage_min: number;
1040
+ critical_damage_max: number;
1041
+ normal_scratch_rate: number;
1042
+ critical_scratch_rate: number;
1043
+ damage_density: Histogram<number, number>;
1044
+ damage_state_density: Histogram<DamageState, number>;
1045
+ }
1046
1046
 
1047
1047
  /**
1048
1048
  */
@@ -1295,6 +1295,11 @@ export class FhCore {
1295
1295
  * @returns {Org | undefined}
1296
1296
  */
1297
1297
  create_org(input?: OrgState): Org | undefined;
1298
+ /**
1299
+ * @param {number} ship_id
1300
+ * @returns {ShipState | undefined}
1301
+ */
1302
+ create_ship_state_by_id(ship_id: number): ShipState | undefined;
1298
1303
  /**
1299
1304
  * @param {number} ship_id
1300
1305
  * @returns {Ship | undefined}
@@ -145,13 +145,6 @@ function getArrayJsValueFromWasm0(ptr, len) {
145
145
  return result;
146
146
  }
147
147
 
148
- function _assertClass(instance, klass) {
149
- if (!(instance instanceof klass)) {
150
- throw new Error(`expected instance of ${klass.name}`);
151
- }
152
- return instance.ptr;
153
- }
154
-
155
148
  let cachedFloat64Memory0 = null;
156
149
 
157
150
  function getFloat64Memory0() {
@@ -160,6 +153,13 @@ function getFloat64Memory0() {
160
153
  }
161
154
  return cachedFloat64Memory0;
162
155
  }
156
+
157
+ function _assertClass(instance, klass) {
158
+ if (!(instance instanceof klass)) {
159
+ throw new Error(`expected instance of ${klass.name}`);
160
+ }
161
+ return instance.ptr;
162
+ }
163
163
  /**
164
164
  * @param {ShipConditions} value
165
165
  * @returns {ShipConditions}
@@ -866,6 +866,14 @@ export class FhCore {
866
866
  }
867
867
  /**
868
868
  * @param {number} ship_id
869
+ * @returns {ShipState | undefined}
870
+ */
871
+ create_ship_state_by_id(ship_id) {
872
+ const ret = wasm.fhcore_create_ship_state_by_id(this.__wbg_ptr, ship_id);
873
+ return takeObject(ret);
874
+ }
875
+ /**
876
+ * @param {number} ship_id
869
877
  * @returns {Ship | undefined}
870
878
  */
871
879
  create_ship_by_id(ship_id) {
@@ -2961,7 +2969,7 @@ export function __wbg_ship_new(arg0) {
2961
2969
  return addHeapObject(ret);
2962
2970
  };
2963
2971
 
2964
- export function __wbg_createEquipmentBonuses_03da72c9fa1a8001(arg0, arg1) {
2972
+ export function __wbg_createEquipmentBonuses_9b9d0a315ee50a1e(arg0, arg1) {
2965
2973
  const ret = createEquipmentBonuses(takeObject(arg0), takeObject(arg1));
2966
2974
  return addHeapObject(ret);
2967
2975
  };
Binary file
@@ -1,19 +1,28 @@
1
1
  /* tslint:disable */
2
2
  /* eslint-disable */
3
3
  export const memory: WebAssembly.Memory;
4
- export function __wbg_airsquadron_free(a: number): void;
5
- export function __wbg_get_airsquadron_id(a: number, b: number): void;
6
- export function __wbg_set_airsquadron_id(a: number, b: number, c: number): void;
7
- export function __wbg_get_airsquadron_hash(a: number): number;
8
- export function __wbg_set_airsquadron_hash(a: number, b: number): void;
9
- export function __wbg_get_airsquadron_mode(a: number): number;
10
- export function __wbg_set_airsquadron_mode(a: number, b: number): void;
11
- export function airsquadron_get_gear(a: number, b: number, c: number): number;
12
- export function airsquadron_get_slot_size(a: number, b: number, c: number): void;
13
- export function airsquadron_get_max_slot_size(a: number, b: number, c: number): void;
14
- export function airsquadron_fighter_power(a: number): number;
15
- export function airsquadron_interception_power(a: number): number;
16
- export function airsquadron_radius(a: number): number;
4
+ export function __wbg_fleet_free(a: number): void;
5
+ export function __wbg_get_fleet_id(a: number, b: number): void;
6
+ export function __wbg_set_fleet_id(a: number, b: number, c: number): void;
7
+ export function __wbg_get_fleet_hash(a: number): number;
8
+ export function __wbg_get_fleet_len(a: number): number;
9
+ export function fleet_meta(a: number): number;
10
+ export function fleet_ship_keys(a: number, b: number): void;
11
+ export function fleet_ship_ids(a: number, b: number): void;
12
+ export function fleet_get_gear_ids_by_improvable(a: number, b: number): void;
13
+ export function fleet_get_gear_ids_by_proficiency(a: number, b: number): void;
14
+ export function fleet_get_damage_bound(a: number, b: number, c: number, d: number): number;
15
+ export function fleet_get_remaining_fuel(a: number, b: number, c: number, d: number, e: number): number;
16
+ export function fleet_get_remaining_ammo(a: number, b: number, c: number, d: number, e: number): number;
17
+ export function fleet_count_ships(a: number): number;
18
+ export function fleet_get_ship(a: number, b: number): number;
19
+ export function fleet_fleet_los_mod(a: number, b: number): void;
20
+ export function fleet_fighter_power(a: number, b: number, c: number): void;
21
+ export function fleet_elos(a: number, b: number, c: number, d: number): void;
22
+ export function fleet_aviation_detection_score(a: number, b: number): void;
23
+ export function fleet_expedition_bonus(a: number): number;
24
+ export function fleet_sum_ship_stat_by(a: number, b: number, c: number, d: number): void;
25
+ export function fleet_reset_battle_state(a: number): void;
17
26
  export function __wbg_ship_free(a: number): void;
18
27
  export function __wbg_get_ship_id(a: number, b: number): void;
19
28
  export function __wbg_set_ship_id(a: number, b: number, c: number): void;
@@ -105,29 +114,20 @@ export function ship_basic_defense_power(a: number, b: number, c: number): void;
105
114
  export function ship_transport_point(a: number): number;
106
115
  export function ship_elos(a: number, b: number, c: number): void;
107
116
  export function ship_ohko_power(a: number, b: number): void;
117
+ export function __wbg_airsquadron_free(a: number): void;
118
+ export function __wbg_get_airsquadron_id(a: number, b: number): void;
119
+ export function __wbg_set_airsquadron_id(a: number, b: number, c: number): void;
120
+ export function __wbg_get_airsquadron_hash(a: number): number;
121
+ export function __wbg_set_airsquadron_hash(a: number, b: number): void;
122
+ export function __wbg_get_airsquadron_mode(a: number): number;
123
+ export function __wbg_set_airsquadron_mode(a: number, b: number): void;
124
+ export function airsquadron_get_gear(a: number, b: number, c: number): number;
125
+ export function airsquadron_get_slot_size(a: number, b: number, c: number): void;
126
+ export function airsquadron_get_max_slot_size(a: number, b: number, c: number): void;
127
+ export function airsquadron_fighter_power(a: number): number;
128
+ export function airsquadron_interception_power(a: number): number;
129
+ export function airsquadron_radius(a: number): number;
108
130
  export function parse_ship_conditions(a: number): number;
109
- export function __wbg_fleet_free(a: number): void;
110
- export function __wbg_get_fleet_id(a: number, b: number): void;
111
- export function __wbg_set_fleet_id(a: number, b: number, c: number): void;
112
- export function __wbg_get_fleet_hash(a: number): number;
113
- export function __wbg_get_fleet_len(a: number): number;
114
- export function fleet_meta(a: number): number;
115
- export function fleet_ship_keys(a: number, b: number): void;
116
- export function fleet_ship_ids(a: number, b: number): void;
117
- export function fleet_get_gear_ids_by_improvable(a: number, b: number): void;
118
- export function fleet_get_gear_ids_by_proficiency(a: number, b: number): void;
119
- export function fleet_get_damage_bound(a: number, b: number, c: number, d: number): number;
120
- export function fleet_get_remaining_fuel(a: number, b: number, c: number, d: number, e: number): number;
121
- export function fleet_get_remaining_ammo(a: number, b: number, c: number, d: number, e: number): number;
122
- export function fleet_count_ships(a: number): number;
123
- export function fleet_get_ship(a: number, b: number): number;
124
- export function fleet_fleet_los_mod(a: number, b: number): void;
125
- export function fleet_fighter_power(a: number, b: number, c: number): void;
126
- export function fleet_elos(a: number, b: number, c: number, d: number): void;
127
- export function fleet_aviation_detection_score(a: number, b: number): void;
128
- export function fleet_expedition_bonus(a: number): number;
129
- export function fleet_sum_ship_stat_by(a: number, b: number, c: number, d: number): void;
130
- export function fleet_reset_battle_state(a: number): void;
131
131
  export function __wbg_comp_free(a: number): void;
132
132
  export function __wbg_get_comp_org_type(a: number): number;
133
133
  export function __wbg_get_comp_hq_level(a: number): number;
@@ -267,6 +267,7 @@ export function fhcore_create_ship(a: number, b: number): number;
267
267
  export function fhcore_create_air_squadron(a: number, b: number): number;
268
268
  export function fhcore_create_fleet(a: number, b: number): number;
269
269
  export function fhcore_create_org(a: number, b: number): number;
270
+ export function fhcore_create_ship_state_by_id(a: number, b: number): number;
270
271
  export function fhcore_create_ship_by_id(a: number, b: number): number;
271
272
  export function fhcore_create_all_ships(a: number): number;
272
273
  export function fhcore_create_comp_by_map_enemy(a: number, b: number, c: number, d: number, e: number): number;