- Implemented a new script to extract item names from items.go and generate a corresponding name.go file with constants and utility functions for name retrieval.
* Panel Manager Improvements
- Now maps instead of slices for easy traverse
- Function for easy and safe traverse of paths
- Removed constant updates of Panel Manager to reduce usage. It will now be called on demand.
- Updated some functions to use the new Panel Manager.
* Remove unused struct members
* Added IsDismissalModalPresent (error popup)
* Correct function return for char select screen and dismissal modal
* Add error checking to IsDismissableModalPresent
* Added BodyLocs to type struct
To hold array of BodyLoc1 and BodyLoc2 from itemtypes.txt
* Updated itemtype template to import BodyLoc1 and BodyLoc2 as an array
* New generated itemtypes.go with BodyLocs array
* Use LocationType instead of string for BodyLocs
* Added missing ItemTypes declaration
---------
Co-authored-by: CarlPoppa <hilikus99@protonmail.com>
* Fix broken negative stats, update some stat description
* ###
* #2
* curses is necro, frw on armor is velocity percent ( unused)
* Update rules to accept negative value
fix a bug with unique grand charm tz
[name] == grandcharm && [quality] == unique # ([fireresist] + [coldresist] + [lightresist]) >= -75
Single stat rules like [coldresist] >= -75 require the stat to exist
expressions like ([fireresist] + [coldresist] + [lightresist]) >= -75 treat missing stats as 0
Unidentified items with any stat requirements need identification first
* LevelReq + identifiedName added for all Crafted items
* Fix issue with rule.go
* Update stat throw damage and basename: GrandCharm -- Grand Charm
* Adjusting rule for ItemLevelReq = 0
* update rule again
* Prefix,Suffix, Socketed with base, bodyloc, Merc equipment
Will add better description later:
Item that has socketed items now display their linked runes/jewels/gems in accurate order
Rare prefix, rare suffix id
Magic prefix1,2,3 magic suffix1,2,3
Prefix1 also used to tell wich runeword it is
Spirit 20635, cta 20519 , infinity 20566 see : getlocalestring.txt
Mercenary equipment now displaying in inventory list . Also has custom location : mercenary instead of equipped
Bodyloc :
// Body locations
LocNone LocationType = "none"
LocHead LocationType = "head"
LocNeck LocationType = "neck"
LocTorso LocationType = "torso"
LocLeftArm LocationType = "left_arm"
LocRightArm LocationType = "right_arm"
LocLeftRing LocationType = "left_ring"
LocRightRing LocationType = "right_ring"
LocBelt LocationType = "belt"
LocFeet LocationType = "feet"
LocGloves LocationType = "gloves"
LocLeftArmSecondary LocationType = "left_arm_secondary"
LocRightArmSecondary LocationType = "right_arm_secondary"
Note that if you begin game on secondary slot it will be left_arm then primary will be left_arm_secondary (inversed): With pr 62 (activeweaponslot) we will be able to solve this potential issue.
* small optimization
* Socketed items to base from pointer
new helper functions.
AutoAffix offset.
* remove helpers fnc, flag isEquipped to HasBeenEquipped
* Runewords names mapped
* helper function not needed
* Optimization
* adjust pre-allocations
* readd removed itemloc comment
* Addex prefix/suffix to rules .nip
new structure:
[Type], [Quality],[Class], [Name], [Flag], [Color], [Prefix], [Suffix] # Stats
Exemple : [name] == ring && [quality] == rare && [suffix] == 174 #
Any magic ring with suffix 'of The Apprentice' ( 10 faster cast rate)
Will be useful for trophy items with fool/cruel [prefix] == 1416 [prefix] == 1273
* LevelReq + Affixes mapping rare/magic/base/runewords. Nip parser LevelReq
* Unique and set items mapping + LevelReq