Skip to content

Missing Type Definitions, Overloads, and Improper Type Handling #30

@GoldenShit233

Description

@GoldenShit233

1. Missing Optional Argument Overloads

Some method overloads appear to be missing from the plugin's type definitions, leading to false errors or lack of autocomplete:

Entity:AddBurn

void AddBurn ( EntityRef Source, int Duration, float Damage )
void AddBurn ( EntityRef Source, int Duration, float Damage, boolean IgnoreBosses ) -- ❌ Missing

Entity:AddSlowing

void AddSlowing ( EntityRef Source, int Duration, float SlowValue, Color SlowColor )
void AddSlowing ( EntityRef Source, int Duration, float SlowValue, Color SlowColor, boolean IgnoreBosses ) -- ❌ Missing

2. Missing Return Type in Signature

ItemPool:GetRandomPool

This method should return an ItemPoolType, but the return type is missing or undefined in the extension:

ItemPoolType GetRandomPool ( RNG rng, boolean advancedSearch = false, ItemPoolType[] filter = {}, boolean isWhitelist = false )

3. Incorrect Integer Handling / Type Validation

Some values that are valid in Lua and Isaac modding are flagged or cause problems in the extension:

  • Entity.Price = 10
    → Should be valid, but shows an error.

  • player:UsePill(PillColor.PILL_PINK_RED + PillColor.PILL_GIANT_FLAG)
    → Bitwise combination of enum values causes type error or is not recognized.

  • player:AddCacheFlags(CacheFlag.CACHE_DAMAGE | CacheFlag.CACHE_FIREDELAY)
    → Bitwise OR is a common pattern but not accepted.


4. Possible Workspace Bug

There's also a strange issue where files or folders added later to the workspace don't seem to benefit from proper intellisense / plugin features. My main mod (added first) works fine, but newer mini-mods don't get the same support unless reopened manually. Could this be related to how the plugin initializes?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions