* export d2asset singleton
* add *d2asset.AssetManager to d2app
- d2app now has a reference to an asset manager which it will use for loading
- added asset loader methods to the asset manager
- functions in d2asset are now wrappers for asset manager methods
* add asset manager reference to audio provider
- d2app asset manager reference is now passed to audio provider
- asset manager is created in main.go for now to pass into audio provider
- CreateSoundEffect is now a method, no longer exported, uses the asset manager reference
* d2app passes asset manager refence to map engine test
* in d2asset, all calls to LoadFile replaced with call to Singleton.Loadfile
* blizzard intro and credits screen
- d2app passes reference to the asset manager to these screens
* asset manager for d2map
- adding MapStampFactory, takes an asset manager reference
- embedded MapStampFactory into the MapEngine
- LoadStamp is now a method of the MapStampFactory
* d2asset: removed LoadFileStream, LoadFile, and FileExists
* d2gui changes
- singleton now has an asset manager reference
- calls to d2asset loader functions removed
- createButton is now a method of LayoutManager
- moved LayoutEntry to its own file
* map entity factory
- Map engine has an embedded map entity factory
- Map stamp factory gets a reference to the map engine's entity factory
- Stamps are given a reference to the map engine entity factory when created
- Character select gets a map entity factory
- Embedded the stamp factory into the MapEngine
* asset manager for d2ui
- d2ui is passed an asset manager reference when created
- all calls to d2asset loader functions in d2ui now refer to the asset manager
- d2gamescreen gets a ui manager when created
- help overlay is now passed a ui manager when created
* d2gamescreen + d2player: asset manager references
added an asset manager reference to
- inventory panel + inventory grid
- mini panel
- game controls
- help overlay
- character select
- main menu
- select hero class
- hero stats panel
* Removed d2asset.LoadAnimation
all references to this function have been replaced with calls to the asset manager method
* adding asset to help overlay, bugfix for 4d59c91
* Removed d2asset.LoadFont and d2asset.LoadAnimationWithEffect
all references to these have been replaced with calls to the asset manager methods
* MapRenderer now gets an asset manager reference
* removed d2asset.LoadPalette
all references have been replaced with calls to an asset manager instance
* merged d2object with d2mapentity
d2object was only being used to create objects in the map, so the provider
function is now a method of the map entity factory. calls to d2asset have
been removed.
* removed d2asset.LoadComposite
all calls are now made to the asset manager method
* removed d2asset singleton
all singleton references have been removed, a single instance of the
asset manager is passed around the entire app
* rename Initialize to NewAssetManager
* fixed lint errors in button.go
* fixed lint errors in checkbox.go
* Removed d2ui singleton, fixed nearly all lint errors
- Changed `UI` struct to `UIManager`, removed singleton
- UI element provider functions are now methods of the UI Manager
- Screens now use the UI manager to create UI elements
- game panels in d2player now use the UI Manager to create UI elements
- Only the UI manager knows about "widgets"; calls to `d2ui.AddWidget` in Screen instances have been removed
* changed ui element provider methods from `Create` to `New`
* adding simple inventory item descriptions
* adding method to identify items
* offset description so it doesn't overlap with item in inventory grid
* needed to offset inv panel by 1px
* adding resource entry for inventory.txt
* adding loader for inventory.txt
* adding call to inventory.txt loader in d2app
* d2game now uses the inventory.txt records for making the inventory panel
* Add InventoryItemMisc struct
* Add GetMiscItemByCode function
* Implement InventoryItem interface for InventoryItemMisc
* Add rings and amulets to the example items loading.
* Fix Y of LeftHand and RightHand equipment slots.
* Add "Ripolak" name to CONTRIBUTORS
* Remove double item
* Add basic EquipmentSlot struct
* Add Load function to EquipmentSlot
* Move EquipmentSlot struct to inventory_grid.go
* Add equipmentSlots arg to ItemGrid struct
* Add basic rendering of equipment slots.
* Change rendering of equipment slots to simply use their static x and y
* Add ChangeEquippedSlot function
* Add initialization to all equipped slots types.
* Fix Y locations of equipment slots
* Move default equipment slots to a genEquipmentSlotsMap function.
* Change Item to item
* Fix coordinates
* Change usage of string to EquippedSlotType when dealing with different slots in rendering.
* Fix import error
* Remove neck example
* Add loading sprites of equipped items.
* Clean code in Inventory rendering
* Clean code in Inventory rendering
* Clean code in Inventory rendering
* Change default items that get rendered.
* Change default items that get rendered.
* Add width and height to EquipementSlot struct
* Fill in width and height to current equipment slots.
* Fix Y setting of equipment slots
* Rename variables for clean code.
* Change handling nil itemSprite to condition instead of loop return.
* Split Render function to 2 functions.
* Add TODO
* Change comment to start with capital I