Created
October 30, 2021 03:51
-
-
Save oatmealine/6e2daa2b041541db1c80151dde7d64ce to your computer and use it in GitHub Desktop.
Luacheck config meant to be used for Isaac modding
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
-- isaac-related luacheck config | |
-- please use luacheck while possible!! | |
-- if you disagree with any of the policies given here | |
-- id suggest you discuss it with the team before you change it | |
-- (unless its a global mistake or similar) | |
return { | |
-- isaac has lots of globals and doesnt just drop them into one Isaac | |
-- namespace like the name would imply. fun! | |
-- lets define em | |
-- all globals defined here are read-only: | |
read_globals = { | |
-- namespaces | |
'Isaac', 'Game', 'Input', 'MusicManager', 'SFXManager', | |
-- classes | |
'Vector', 'Font', 'Color', 'KColor', 'RNG', 'Sprite', 'EntityPtr', 'EntityRef', 'ProjectileParams', | |
-- global functions | |
'RegisterMod', 'Random', 'RandomVector', 'GetPtrHash', 'include', | |
-- enums | |
'ActionTriggers', 'ActiveSlot', 'BabySubType', 'BackdropType', 'BatterySubType', 'BedSubType', 'BombSubType', 'BombVariant', 'ButtonAction', 'CacheFlag', 'Card', 'Challenge', 'ChampionColor', 'ChestSubType', 'CoinSubType', 'DamageFlag', 'Difficulty', 'Direction', 'DoorSlot', 'DoorState', 'DoorVariant', 'EntityCollisionClass', 'EntityFlag', 'EntityGridCollisionClass', 'EntityPartition', 'GameStateFlag', 'GridCollisionClass', 'GridEntityType', 'GridRooms', 'HeartSubType', 'InputHook', 'ItemConfig', 'ItemPoolType', 'ItemType', 'Keyboard', 'KeySubType', 'LaserOffset', 'LevelCurse', 'LevelStage', 'LevelStateFlag', 'LocustSubtypes', 'ModCallbacks', 'Mouse', 'Music', 'NpcState', 'NullItemID', 'PickupPrice', 'PickupVariant', 'PillColor', 'PillEffect', 'PlayerForm', 'PlayerSpriteLayer', 'PlayerType', 'PoopPickupSubType', 'ProjectileFlags', 'ProjectileVariant', 'RoomShape', 'RoomTransitionAnim', 'RoomType', 'SackSubType', 'SeedEffect', 'SortingLayer', 'SoundEffect', 'StageType', 'TearFlags', 'TearVariant', 'UseFlag', 'WeaponType', | |
-- mod namespaces/globals | |
'EID', 'THSTR', 'TheStrangerRole' | |
}, | |
-- globals defined here can be modified, added onto or removed | |
-- this is useful for mostly only enums | |
-- please only move globals down here if REALLY needed | |
globals = { | |
-- the mod global (ideally please keep this to ONE) | |
'YourModNameHereMod', | |
-- enums that are added onto | |
'CollectibleType', 'EntityType', 'FamiliarVariant', 'TrinketType', 'EffectVariant', | |
}, | |
-- deal with the linter being whiny | |
ignore = { | |
-- disables "unused argument self" warnings | |
-- they pop up everywhere since its convinient to set callbacks | |
-- to use the : sugar syntax | |
-- and make them throw the mod variable into the void | |
-- | |
-- tldr isaac modding is dumb | |
'212/.*self', | |
}, | |
-- misc stuff | |
max_line_length = false, -- honestly? this sucks, but isaac modding man | |
-- we get shit like EntityType.ENTITY_TEAR and we have to | |
-- shove 10 of those in 1 function call | |
-- its not fun | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment