isaacscript-common 30.7.1 → 30.9.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.
@@ -3598,6 +3598,15 @@ export declare function doesAnyEntityExist(entityTypes: EntityType[] | readonly
3598
3598
  */
3599
3599
  export declare function doesEntityExist(entityType?: EntityType | -1, variant?: number, subType?: number, ignoreFriendly?: boolean): boolean;
3600
3600
 
3601
+ /**
3602
+ * Helper function to check if one or more of a specific kind of grid entity is present in the
3603
+ * current room. It uses the `countEntities` helper function to determine this.
3604
+ *
3605
+ * @param gridEntityType The grid entity type to match.
3606
+ * @param variant Optional. Default is -1, which matches every variant.
3607
+ */
3608
+ export declare function doesGridEntityExist(gridEntityType: GridEntityType, variant?: number): boolean;
3609
+
3601
3610
  /**
3602
3611
  * Returns whether or not all of the player's soul-heart-type hearts are black hearts.
3603
3612
  *
@@ -4667,6 +4676,11 @@ export declare function getCircleDiscretizedPoints(centerPos: Vector, radius: fl
4667
4676
  */
4668
4677
  export declare function getClosestEntityTo<T extends AnyEntity>(referenceEntity: Entity, entities: T[], filterFunc?: (entity: T) => boolean): T | undefined;
4669
4678
 
4679
+ /**
4680
+ * Helper function to get the closest player to a certain position. Note that this will never
4681
+ * include players with a non-undefined parent, since they are not real players (e.g. the Strawman
4682
+ * Keeper).
4683
+ */
4670
4684
  export declare function getClosestPlayer(position: Vector): EntityPlayer;
4671
4685
 
4672
4686
  /**
@@ -1,6 +1,6 @@
1
1
  --[[
2
2
 
3
- isaacscript-common 30.7.1
3
+ isaacscript-common 30.9.0
4
4
 
5
5
  This is the "isaacscript-common" library, which was created with the IsaacScript tool.
6
6
 
@@ -27731,6 +27731,7 @@ return ____exports
27731
27731
  ["src.functions.gridEntities"] = function(...)
27732
27732
  local ____lualib = require("lualib_bundle")
27733
27733
  local __TS__New = ____lualib.__TS__New
27734
+ local __TS__ArraySome = ____lualib.__TS__ArraySome
27734
27735
  local __TS__ArrayFilter = ____lualib.__TS__ArrayFilter
27735
27736
  local __TS__StringSplit = ____lualib.__TS__StringSplit
27736
27737
  local Set = ____lualib.Set
@@ -27888,6 +27889,25 @@ function ____exports.convertXMLGridEntityType(self, gridEntityXMLType, gridEntit
27888
27889
  end
27889
27890
  return {gridEntityType, variant}
27890
27891
  end
27892
+ function ____exports.doesGridEntityExist(self, gridEntityType, variant)
27893
+ if variant == nil then
27894
+ variant = -1
27895
+ end
27896
+ local room = game:GetRoom()
27897
+ local gridIndexes = ____exports.getAllGridIndexes(nil)
27898
+ return __TS__ArraySome(
27899
+ gridIndexes,
27900
+ function(____, gridIndex)
27901
+ local gridEntity = room:GetGridEntity(gridIndex)
27902
+ if gridEntity == nil then
27903
+ return false
27904
+ end
27905
+ local thisGridEntityType = gridEntity:GetType()
27906
+ local thisVariant = gridEntity:GetVariant()
27907
+ return gridEntityType == thisGridEntityType and (variant == -1 or variant == thisVariant)
27908
+ end
27909
+ )
27910
+ end
27891
27911
  function ____exports.getCollidingEntitiesWithGridEntity(self, gridEntity)
27892
27912
  local topLeft, bottomRight = table.unpack(____exports.getGridEntityCollisionPoints(nil, gridEntity))
27893
27913
  local closeEntities = Isaac.FindInRadius(gridEntity.Position, DISTANCE_OF_GRID_TILE * 2)
@@ -27965,7 +27985,7 @@ function ____exports.getGridEntitiesInRadius(self, targetPosition, radius)
27965
27985
  local gridIndex = room:GetGridIndex(position)
27966
27986
  local gridEntity = room:GetGridEntityFromPos(position)
27967
27987
  if gridEntity == nil or registeredGridIndexes:has(gridIndex) then
27968
- goto __continue24
27988
+ goto __continue27
27969
27989
  end
27970
27990
  registeredGridIndexes:add(gridIndex)
27971
27991
  local topLeft, bottomRight = table.unpack(____exports.getGridEntityCollisionPoints(nil, gridEntity))
@@ -27979,7 +27999,7 @@ function ____exports.getGridEntitiesInRadius(self, targetPosition, radius)
27979
27999
  gridEntities[#gridEntities + 1] = gridEntity
27980
28000
  end
27981
28001
  end
27982
- ::__continue24::
28002
+ ::__continue27::
27983
28003
  end
27984
28004
  end
27985
28005
  return gridEntities
@@ -48921,7 +48941,7 @@ local HealthType = ____HealthType.HealthType
48921
48941
  local ____direction = require("src.functions.direction")
48922
48942
  local directionToVector = ____direction.directionToVector
48923
48943
  local ____gridEntities = require("src.functions.gridEntities")
48924
- local spawnGridEntityWithVariant = ____gridEntities.spawnGridEntityWithVariant
48944
+ local spawnGridEntity = ____gridEntities.spawnGridEntity
48925
48945
  local ____levelGrid = require("src.functions.levelGrid")
48926
48946
  local getRoomAdjacentGridIndexes = ____levelGrid.getRoomAdjacentGridIndexes
48927
48947
  local getRoomGridIndexesForType = ____levelGrid.getRoomGridIndexesForType
@@ -49012,9 +49032,8 @@ function ____exports.spawnTrapdoorOrCrawlSpace(self, trapdoor)
49012
49032
  local room = game:GetRoom()
49013
49033
  local player = Isaac.GetPlayer()
49014
49034
  local position = room:FindFreeTilePosition(player.Position, 0)
49015
- local gridIndex = room:GetGridIndex(position)
49016
49035
  local gridEntityType = trapdoor and GridEntityType.TRAPDOOR or GridEntityType.CRAWL_SPACE
49017
- spawnGridEntityWithVariant(nil, gridEntityType, 0, gridIndex)
49036
+ spawnGridEntity(nil, gridEntityType, position)
49018
49037
  end
49019
49038
  function ____exports.warpToRoomType(self, roomType)
49020
49039
  local roomTypeName = ROOM_TYPE_NAMES[roomType]
@@ -49088,6 +49107,7 @@ local CollectibleType = ____isaac_2Dtypescript_2Ddefinitions.CollectibleType
49088
49107
  local Direction = ____isaac_2Dtypescript_2Ddefinitions.Direction
49089
49108
  local DisplayFlag = ____isaac_2Dtypescript_2Ddefinitions.DisplayFlag
49090
49109
  local GameStateFlag = ____isaac_2Dtypescript_2Ddefinitions.GameStateFlag
49110
+ local GridEntityType = ____isaac_2Dtypescript_2Ddefinitions.GridEntityType
49091
49111
  local GridRoom = ____isaac_2Dtypescript_2Ddefinitions.GridRoom
49092
49112
  local LevelStage = ____isaac_2Dtypescript_2Ddefinitions.LevelStage
49093
49113
  local PillColor = ____isaac_2Dtypescript_2Ddefinitions.PillColor
@@ -49853,6 +49873,12 @@ function ____exports.pocket(self, params)
49853
49873
  local player = Isaac.GetPlayer()
49854
49874
  player:SetPocketActiveItem(collectibleType, ActiveSlot.POCKET)
49855
49875
  end
49876
+ function ____exports.poop(self)
49877
+ local roomClass = game:GetRoom()
49878
+ local player = Isaac.GetPlayer()
49879
+ local tilePosition = roomClass:FindFreeTilePosition(player.Position, 0)
49880
+ spawnGridEntity(nil, GridEntityType.POOP, tilePosition)
49881
+ end
49856
49882
  function ____exports.position(self)
49857
49883
  ____exports.getPosition(nil)
49858
49884
  end
@@ -281,6 +281,8 @@ export declare function planetarium(): void;
281
281
  export declare function playSound(params: string): void;
282
282
  /** Sets the player's pocket item to the specified collectible type. */
283
283
  export declare function pocket(params: string): void;
284
+ /** Creates a poop grid entity next to the player. */
285
+ export declare function poop(): void;
284
286
  /**
285
287
  * Gives a poop mana charge. This only affects Tainted Blue Baby. Provide a number to give a custom
286
288
  * amount of charges. (You can use negative numbers to remove charges.)
@@ -1 +1 @@
1
- {"version":3,"file":"commands.d.ts","sourceRoot":"","sources":["../../../../../../src/classes/features/other/extraConsoleCommands/commands.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"commands.d.ts","sourceRoot":"","sources":["../../../../../../src/classes/features/other/extraConsoleCommands/commands.ts"],"names":[],"mappings":"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"}
@@ -11,6 +11,7 @@ local CollectibleType = ____isaac_2Dtypescript_2Ddefinitions.CollectibleType
11
11
  local Direction = ____isaac_2Dtypescript_2Ddefinitions.Direction
12
12
  local DisplayFlag = ____isaac_2Dtypescript_2Ddefinitions.DisplayFlag
13
13
  local GameStateFlag = ____isaac_2Dtypescript_2Ddefinitions.GameStateFlag
14
+ local GridEntityType = ____isaac_2Dtypescript_2Ddefinitions.GridEntityType
14
15
  local GridRoom = ____isaac_2Dtypescript_2Ddefinitions.GridRoom
15
16
  local LevelStage = ____isaac_2Dtypescript_2Ddefinitions.LevelStage
16
17
  local PillColor = ____isaac_2Dtypescript_2Ddefinitions.PillColor
@@ -920,6 +921,13 @@ function ____exports.pocket(self, params)
920
921
  local player = Isaac.GetPlayer()
921
922
  player:SetPocketActiveItem(collectibleType, ActiveSlot.POCKET)
922
923
  end
924
+ --- Creates a poop grid entity next to the player.
925
+ function ____exports.poop(self)
926
+ local roomClass = game:GetRoom()
927
+ local player = Isaac.GetPlayer()
928
+ local tilePosition = roomClass:FindFreeTilePosition(player.Position, 0)
929
+ spawnGridEntity(nil, GridEntityType.POOP, tilePosition)
930
+ end
923
931
  --- Alias for the "getPosition" command.
924
932
  function ____exports.position(self)
925
933
  ____exports.getPosition(nil)
@@ -1 +1 @@
1
- {"version":3,"file":"subroutines.d.ts","sourceRoot":"","sources":["../../../../../../src/classes/features/other/extraConsoleCommands/subroutines.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,SAAS,EAIT,QAAQ,EACT,MAAM,8BAA8B,CAAC;AAEtC,OAAO,EAAE,UAAU,EAAE,MAAM,8BAA8B,CAAC;AAkB1D,wBAAgB,QAAQ,CAAC,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,UAAU,GAAG,IAAI,CAcrE;AAED,wBAAgB,UAAU,CAAC,QAAQ,EAAE,OAAO,GAAG,IAAI,CAqBlD;AAED,wBAAgB,YAAY,CAC1B,MAAM,EAAE,MAAM,EACd,wBAAwB,EAAE,OAAO,GAChC,IAAI,CAYN;AAED,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,OAAO,GAAG,IAAI,CAY5E;AAED,wBAAgB,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS,GAAG,IAAI,CAgBrE;AAED,wBAAgB,yBAAyB,CAAC,QAAQ,EAAE,OAAO,GAAG,IAAI,CAUjE;AAED,wBAAgB,cAAc,CAAC,QAAQ,EAAE,QAAQ,GAAG,IAAI,CAWvD;AAED,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,QAAQ,GAAG,IAAI,CAuB3D"}
1
+ {"version":3,"file":"subroutines.d.ts","sourceRoot":"","sources":["../../../../../../src/classes/features/other/extraConsoleCommands/subroutines.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,SAAS,EAIT,QAAQ,EACT,MAAM,8BAA8B,CAAC;AAEtC,OAAO,EAAE,UAAU,EAAE,MAAM,8BAA8B,CAAC;AAkB1D,wBAAgB,QAAQ,CAAC,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,UAAU,GAAG,IAAI,CAcrE;AAED,wBAAgB,UAAU,CAAC,QAAQ,EAAE,OAAO,GAAG,IAAI,CAqBlD;AAED,wBAAgB,YAAY,CAC1B,MAAM,EAAE,MAAM,EACd,wBAAwB,EAAE,OAAO,GAChC,IAAI,CAYN;AAED,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,OAAO,GAAG,IAAI,CAY5E;AAED,wBAAgB,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS,GAAG,IAAI,CAgBrE;AAED,wBAAgB,yBAAyB,CAAC,QAAQ,EAAE,OAAO,GAAG,IAAI,CASjE;AAED,wBAAgB,cAAc,CAAC,QAAQ,EAAE,QAAQ,GAAG,IAAI,CAWvD;AAED,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,QAAQ,GAAG,IAAI,CAuB3D"}
@@ -12,7 +12,7 @@ local HealthType = ____HealthType.HealthType
12
12
  local ____direction = require("src.functions.direction")
13
13
  local directionToVector = ____direction.directionToVector
14
14
  local ____gridEntities = require("src.functions.gridEntities")
15
- local spawnGridEntityWithVariant = ____gridEntities.spawnGridEntityWithVariant
15
+ local spawnGridEntity = ____gridEntities.spawnGridEntity
16
16
  local ____levelGrid = require("src.functions.levelGrid")
17
17
  local getRoomAdjacentGridIndexes = ____levelGrid.getRoomAdjacentGridIndexes
18
18
  local getRoomGridIndexesForType = ____levelGrid.getRoomGridIndexesForType
@@ -103,9 +103,8 @@ function ____exports.spawnTrapdoorOrCrawlSpace(self, trapdoor)
103
103
  local room = game:GetRoom()
104
104
  local player = Isaac.GetPlayer()
105
105
  local position = room:FindFreeTilePosition(player.Position, 0)
106
- local gridIndex = room:GetGridIndex(position)
107
106
  local gridEntityType = trapdoor and GridEntityType.TRAPDOOR or GridEntityType.CRAWL_SPACE
108
- spawnGridEntityWithVariant(nil, gridEntityType, 0, gridIndex)
107
+ spawnGridEntity(nil, gridEntityType, position)
109
108
  end
110
109
  function ____exports.warpToRoomType(self, roomType)
111
110
  local roomTypeName = ROOM_TYPE_NAMES[roomType]
@@ -7,6 +7,14 @@ import { GridEntityID } from "../types/GridEntityID";
7
7
  * 1000.0 in a room XML file, but `GridEntityType.ROCK` is equal to 2.
8
8
  */
9
9
  export declare function convertXMLGridEntityType(gridEntityXMLType: GridEntityXMLType, gridEntityXMLVariant: int): [GridEntityType, int] | undefined;
10
+ /**
11
+ * Helper function to check if one or more of a specific kind of grid entity is present in the
12
+ * current room. It uses the `countEntities` helper function to determine this.
13
+ *
14
+ * @param gridEntityType The grid entity type to match.
15
+ * @param variant Optional. Default is -1, which matches every variant.
16
+ */
17
+ export declare function doesGridEntityExist(gridEntityType: GridEntityType, variant?: number): boolean;
10
18
  /**
11
19
  * Helper function to get every legal grid index for the current room.
12
20
  *
@@ -1 +1 @@
1
- {"version":3,"file":"gridEntities.d.ts","sourceRoot":"","sources":["../../../src/functions/gridEntities.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"gridEntities.d.ts","sourceRoot":"","sources":["../../../src/functions/gridEntities.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,6 @@
1
1
  local ____lualib = require("lualib_bundle")
2
2
  local __TS__New = ____lualib.__TS__New
3
+ local __TS__ArraySome = ____lualib.__TS__ArraySome
3
4
  local __TS__ArrayFilter = ____lualib.__TS__ArrayFilter
4
5
  local __TS__StringSplit = ____lualib.__TS__StringSplit
5
6
  local Set = ____lualib.Set
@@ -184,6 +185,30 @@ function ____exports.convertXMLGridEntityType(self, gridEntityXMLType, gridEntit
184
185
  end
185
186
  return {gridEntityType, variant}
186
187
  end
188
+ --- Helper function to check if one or more of a specific kind of grid entity is present in the
189
+ -- current room. It uses the `countEntities` helper function to determine this.
190
+ --
191
+ -- @param gridEntityType The grid entity type to match.
192
+ -- @param variant Optional. Default is -1, which matches every variant.
193
+ function ____exports.doesGridEntityExist(self, gridEntityType, variant)
194
+ if variant == nil then
195
+ variant = -1
196
+ end
197
+ local room = game:GetRoom()
198
+ local gridIndexes = ____exports.getAllGridIndexes(nil)
199
+ return __TS__ArraySome(
200
+ gridIndexes,
201
+ function(____, gridIndex)
202
+ local gridEntity = room:GetGridEntity(gridIndex)
203
+ if gridEntity == nil then
204
+ return false
205
+ end
206
+ local thisGridEntityType = gridEntity:GetType()
207
+ local thisVariant = gridEntity:GetVariant()
208
+ return gridEntityType == thisGridEntityType and (variant == -1 or variant == thisVariant)
209
+ end
210
+ )
211
+ end
187
212
  --- Gets the entities that have a hitbox that overlaps with any part of the square that the grid
188
213
  -- entity is on.
189
214
  --
@@ -296,7 +321,7 @@ function ____exports.getGridEntitiesInRadius(self, targetPosition, radius)
296
321
  local gridIndex = room:GetGridIndex(position)
297
322
  local gridEntity = room:GetGridEntityFromPos(position)
298
323
  if gridEntity == nil or registeredGridIndexes:has(gridIndex) then
299
- goto __continue24
324
+ goto __continue27
300
325
  end
301
326
  registeredGridIndexes:add(gridIndex)
302
327
  local topLeft, bottomRight = table.unpack(____exports.getGridEntityCollisionPoints(nil, gridEntity))
@@ -310,7 +335,7 @@ function ____exports.getGridEntitiesInRadius(self, targetPosition, radius)
310
335
  gridEntities[#gridEntities + 1] = gridEntity
311
336
  end
312
337
  end
313
- ::__continue24::
338
+ ::__continue27::
314
339
  end
315
340
  end
316
341
  return gridEntities
@@ -70,6 +70,11 @@ export declare function getActiveItemSlots(player: EntityPlayer, collectibleType
70
70
  export declare function getAzazelBrimstoneDistance(playerOrTearHeight: EntityPlayer | float): float;
71
71
  /** Helper function to get an array containing the characters of all of the current players. */
72
72
  export declare function getCharacters(): PlayerType[];
73
+ /**
74
+ * Helper function to get the closest player to a certain position. Note that this will never
75
+ * include players with a non-undefined parent, since they are not real players (e.g. the Strawman
76
+ * Keeper).
77
+ */
73
78
  export declare function getClosestPlayer(position: Vector): EntityPlayer;
74
79
  /**
75
80
  * Helper function to get an array of temporary effects for a player. This is helpful so that you
@@ -1 +1 @@
1
- {"version":3,"file":"players.d.ts","sourceRoot":"","sources":["../../../src/functions/players.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"players.d.ts","sourceRoot":"","sources":["../../../src/functions/players.ts"],"names":[],"mappings":"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"}
@@ -180,6 +180,9 @@ function ____exports.getAzazelBrimstoneDistance(self, playerOrTearHeight)
180
180
  local tearHeight = isNumber(nil, playerOrTearHeight) and playerOrTearHeight or playerOrTearHeight.TearHeight
181
181
  return 32 - 2.5 * tearHeight
182
182
  end
183
+ --- Helper function to get the closest player to a certain position. Note that this will never
184
+ -- include players with a non-undefined parent, since they are not real players (e.g. the Strawman
185
+ -- Keeper).
183
186
  function ____exports.getClosestPlayer(self, position)
184
187
  local closestPlayer
185
188
  local closestDistance = math.huge
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "isaacscript-common",
3
- "version": "30.7.1",
3
+ "version": "30.9.0",
4
4
  "description": "Helper functions and features for IsaacScript mods.",
5
5
  "keywords": [
6
6
  "isaac",
@@ -38,6 +38,7 @@ import {
38
38
  Direction,
39
39
  DisplayFlag,
40
40
  GameStateFlag,
41
+ GridEntityType,
41
42
  GridRoom,
42
43
  LevelStage,
43
44
  PillColor,
@@ -1098,6 +1099,15 @@ export function pocket(params: string): void {
1098
1099
  player.SetPocketActiveItem(collectibleType, ActiveSlot.POCKET);
1099
1100
  }
1100
1101
 
1102
+ /** Creates a poop grid entity next to the player. */
1103
+ export function poop(): void {
1104
+ const roomClass = game.GetRoom();
1105
+ const player = Isaac.GetPlayer();
1106
+ const tilePosition = roomClass.FindFreeTilePosition(player.Position, 0);
1107
+
1108
+ spawnGridEntity(GridEntityType.POOP, tilePosition);
1109
+ }
1110
+
1101
1111
  /**
1102
1112
  * Gives a poop mana charge. This only affects Tainted Blue Baby. Provide a number to give a custom
1103
1113
  * amount of charges. (You can use negative numbers to remove charges.)
@@ -8,7 +8,7 @@ import {
8
8
  import { game } from "../../../../core/cachedClasses";
9
9
  import { HealthType } from "../../../../enums/HealthType";
10
10
  import { directionToVector } from "../../../../functions/direction";
11
- import { spawnGridEntityWithVariant } from "../../../../functions/gridEntities";
11
+ import { spawnGridEntity } from "../../../../functions/gridEntities";
12
12
  import {
13
13
  getRoomAdjacentGridIndexes,
14
14
  getRoomGridIndexesForType,
@@ -116,12 +116,11 @@ export function spawnTrapdoorOrCrawlSpace(trapdoor: boolean): void {
116
116
  const room = game.GetRoom();
117
117
  const player = Isaac.GetPlayer();
118
118
  const position = room.FindFreeTilePosition(player.Position, 0);
119
- const gridIndex = room.GetGridIndex(position);
120
119
  const gridEntityType = trapdoor
121
120
  ? GridEntityType.TRAPDOOR
122
121
  : GridEntityType.CRAWL_SPACE;
123
122
 
124
- spawnGridEntityWithVariant(gridEntityType, 0, gridIndex);
123
+ spawnGridEntity(gridEntityType, position);
125
124
  }
126
125
 
127
126
  export function warpToRoomType(roomType: RoomType): void {
@@ -79,6 +79,35 @@ export function convertXMLGridEntityType(
79
79
  return [gridEntityType, variant];
80
80
  }
81
81
 
82
+ /**
83
+ * Helper function to check if one or more of a specific kind of grid entity is present in the
84
+ * current room. It uses the `countEntities` helper function to determine this.
85
+ *
86
+ * @param gridEntityType The grid entity type to match.
87
+ * @param variant Optional. Default is -1, which matches every variant.
88
+ */
89
+ export function doesGridEntityExist(
90
+ gridEntityType: GridEntityType,
91
+ variant = -1,
92
+ ): boolean {
93
+ const room = game.GetRoom();
94
+ const gridIndexes = getAllGridIndexes();
95
+
96
+ return gridIndexes.some((gridIndex) => {
97
+ const gridEntity = room.GetGridEntity(gridIndex);
98
+ if (gridEntity === undefined) {
99
+ return false;
100
+ }
101
+
102
+ const thisGridEntityType = gridEntity.GetType();
103
+ const thisVariant = gridEntity.GetVariant();
104
+ return (
105
+ gridEntityType === thisGridEntityType &&
106
+ (variant === -1 || variant === thisVariant)
107
+ );
108
+ });
109
+ }
110
+
82
111
  /**
83
112
  * Helper function to get every legal grid index for the current room.
84
113
  *
@@ -197,6 +197,11 @@ export function getCharacters(): PlayerType[] {
197
197
  return players.map((player) => player.GetPlayerType());
198
198
  }
199
199
 
200
+ /**
201
+ * Helper function to get the closest player to a certain position. Note that this will never
202
+ * include players with a non-undefined parent, since they are not real players (e.g. the Strawman
203
+ * Keeper).
204
+ */
200
205
  export function getClosestPlayer(position: Vector): EntityPlayer {
201
206
  let closestPlayer: EntityPlayer | undefined;
202
207
  let closestDistance = math.huge;