Modified:
- Callbacks:
- MC_PRE_PLAYERHUD_TRINKET_RENDER: now provides [Vector] CropOffset parameter and accepts CropOffset vector in the return table.
- EntityPlayer:
- AddInnateCollectible() now uses a system separate from item wisps, still doesn't save on game exit though!
- Change to HasCollectible and GetCollectibleNum:
new optional boolean (IgnoreSpoof), ignores collectible block when set to true
- Game:
- ShowGenericLeaderboard no longer fades to main menu
- PersistentGameData:
- TryUnlock now accepts an optional boolean to prevent popping up with the achievement paper for modded achievements
Additions:
- Game:
- SetDizzyAmount(amount, intensity)
- GetDizzyAmount()
- PlayerManager:
- AnyPlayerTypeHasTrinket(PlayerType, TrinketType, IgnoreModifiers = false)
- AnyPlayerTypeHasCollectible(PlayerType, CollectibleType, IgnoreModifiers = false)
- Lootlist:
- constructor
- PushEntry(Type, Variant, SubType, Seed = Random(), RNG = nil)
- GetEntries
- LootListEntry:
- [Get]Type/Variant/SubType/Seed/RNG
- EntityPlayer:
- Get/SetBombPlaceDelay
- Get/SetBloodLustCounter
- GetSpoofedCollectiblesList
- New functionality for blocking items:
BlockCollectible(int itemID)
UnblockCollectible(int itemID)
IsCollectibleBlocked(int itemID) - HasGoldenTrinket
- Get/SetHallowedGroundCountdown
- EntityTear:
- GetTearHaloSprite
- GetTearEffectSprite
- GetDeadEyeSprite
- ResetSpriteScale(bool Force) - New optional "force" boolean, when set to true forces the tear to re-evaluate which scale animation it should be playing
- EntityPickup:
- GetLootList(ShouldAdvance = false)
- GetPickupGhost
- UpdatePickupGhosts
- EntityNPC:
- GetFireplaceLoot
- GetShopkeeperLoot
- EntityFamiliar:
- [Get/Set]MoveDelayNum
- ItemConfigItem:
- HasCustomTag
- GetCustomTags
- Input:
- GetDeviceNameByIdx
- Isaac:
- Get/SetDwmWindowAttribute (for use with new DwmWindowAttributes enum)
- Get/SetWindowTitle (appends text to our title as to avoid confusion)
- SetIcon(int/string,bool) (takes a 0/1 int or a path to .ico file, bool bypasses the 16x16 resolution cap)
- Game
- SetBloom
- Console:
- Added a popup error when a script ran by luamod errors, highlighting the last error thrown, to prevent it from being instantly buried
- Isaac:
- StartNewGame(int playertype, int challenge, int difficulty, int seed), allows starting the game from within the main menu
- MenuManager:
- SetInputMask(int mask) for use with the new ButtonActionBitwise enum, selectively allows/disallows the game's menu read certain inputs, useful for custom menus
- GetInputMask()
- MinimapState Enum:
- Used for Minimap.SetState() and Minimap.GetState().
- RoomConfig:
RoomConfig:GetStage(StbType) - RoomConfigStage
- Get/Set DisplayName, Suffix, PlayerSpot, BossSpot, Music, Backdrop
- GetRoomSet(Mode)
- RoomConfigSet:
- Acts like other ArrayProxy classes, but for RoomConfigRoom
- __len and Get method, Size const variable
- Level
- Set/GetGreedWavesClearedWithoutRedHeartDamage: you read that right, finally, the highly requested function is here!
- Cutscenes
- Support for custom music for the music attribute on cutscenes.xml
- NightmareScene
- GetPlayerExtraPortraitSprite
- RoomTransition
- GetPlayerExtraPortraitSprite
- Sprite
- SetCustomShader(string Path) - Overrides only the default ColorOffset shader. Path starts at
.../resources/and expects to find both a .vs and .fs file. For example: SetCustomShader("shaders/my_shader") - ClearCustomShader()
- HasCustomShader(string Path) - Returns true if the specified shader is currently set. If no string is provided, returns true if any custom shader is applied.
- SetCustomChampionShader(string Path) - Same as SetCustomShader but for overriding ColorOffset_Champion instead.
- ClearCustomChampionShader()
- HasCustomChampionShader(string Path)
- SetCustomShader(string Path) - Overrides only the default ColorOffset shader. Path starts at
- LayerState
- SetCustomShader(string Path) - Same as sprite:SetCustomShader() but only for a single layer.
- ClearCustomShader()
- HasCustomShader(string Path)
- SetCustomChampionShader(string Path)
- ClearCustomChampionShader()
- HasCustomChampionShader(string Path)
- Callbacks:
- MC_PRE_PICKUP_GET_LOOT_LIST callback (Pickup, bool ShouldAdvance) - Return LootList to change loot content
- MC_PRE_PICKUP_UPDATE_GHOST_PICKUPS (Pickup) - Return true to apply pickup ghost to your pickup entitiy, false to cancel it
- MC_POST_PLAYER_TRIGGER_EFFECT_REMOVED (Player, ItemConfigItem)
- MC_POST_ROOM_TRIGGER_EFFECT_REMOVED (ItemConfigItem)
- MC_PRE_X_GRID_COLLISION and MC_X_GRID_COLLISION (EntityX, int gridIndex, GridEntity or nil) - PLAYER/TEAR/FAMILIAR/BOMB/PICKUP/PROJECTILE/NPC, Return true on PRE to ignore collision.
- MC_PRE_PLAYERHUD_RENDER_ACTIVE_ITEM(EntityPlayer, ActiveSlot, Vector offset, float alpha, float scale, Vector chargeBarOffset) - Return true to cancel rendering
- MC_PRE_PLAYER_REVIVE(EntityPlayer) - Return false to prevent the player from reviving
- MC_POST_PLAYER_REVIVE(EntityPlayer)
- MC_POST_PROJECTILE/TEAR_DEATH (EntityProjectile/EntityTear)
- MC_POST_BOSS_INTRO_SHOW (int BossID1,int BossID2)
- MC_POST_ROOM_TRANSITION_UPDATE ()
- MC_POST_ROOM_TRANSITION_RENDER ()
- MC_PRE_X_UPDATE (EntityX) - PLAYER/TEAR/FAMILIAR/BOMB/PICKUP/KNIFE/PROJECTILE/LASER/EFFECT/SLOT, return true to skip internal code, same as MC_PRE_NPC_UPDATE
- All stages now have a spritesheet suffix (formatted _[stage name, no spaces], ex _burningbasement)
- Added the "noshake" attribute to the players.xml which can "disable" the player portrait shaking animation in the nightmare scene/boss intro
- Added support for a "customtags" attribute in items.xml - a space-separated list of tags that can be checked with ItemConfigItem:HasCustomTag() or ItemConfigItem:GetCustomTags()
- Added custom tag "nometronome" to items.xml to prevent items from being picked by Metronome
- Improved startup time! (for both REPENTOGON and the game itself)
- Buffed Trisagion
- Added a new option in "Vanilla tweaks" section called "Fast lasers", it tracks the game's lag and (if present) reduces the number of samples used by lasers to ensure better performance
Fixes:
* Fixed Isaac.CreateTimer crashing the game when setting the delay argument to 0
* Fixed bonehearts not displaying correctly when set through players.xml
* Fixed console custom commands starting with "help" not triggering while being eaten away by repentogon's help cmd
* Fixed a crash that could occur if Isaac exited the Berserk! state without any remaining health with Spirit Shackles ready
* Fix Downpour/Dross rooms generated in The Void not having any water
* Potentially fixed reported but unreproducable instance of a trapdoor deal room variant being generated outside of floor 8
* Fixed incorrect declaration for ItemConfig::GetTaggedItems
* Fixed Gamma scale on the visual settings imgui menu
v1.0.8c -
Fixes:
- Fixed adding a callback function with an optional param to a vanilla callback that does not support optional params leading to that function never being called, where it used to previously.
- Fixed the result of Isaac.GetCallbacks() no longer having a metatable.
v1.0.8b -
Fixes:
- Fixed the MC_PLAYER_GET_HEALTH_TYPE callback causing the last heart to render underneath the first one.
v1.0.8a -
Fixes:
- Fixed issues with EntityPlayer:GetSmeltedTrinkets() and EntityPlayer:GetFootprintColor()