Guest User

Allods equipment logger

a guest
Sep 5th, 2012
214
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 2.17 KB | None | 0 0
  1. function OnUnitSpawn(d)
  2. if unit.IsPlayer   ( d.unitId ) then
  3. avatar.SelectTarget( d.unitId )
  4. avatar.StartInspect( d.unitId )
  5. end
  6. end
  7. common.RegisterEventHandler( OnUnitSpawn, "EVENT_UNIT_SPAWNED" )
  8.  
  9. local Database = userMods.GetAvatarConfigSection( common.GetAddonName().."DB" ) or {}
  10.  
  11. function inspector()
  12. local equip = unit.GetEquipmentItemIds( avatar.GetTarget() , ITEM_CONT_EQUIPMENT )
  13. for i, v in equip do
  14. local iif = avatar.GetItemInfo( v )
  15. local iifname = userMods.FromWString(iif.name)
  16. if not Database[iifname]                         then Database[iifname] = {} end
  17. if not Database[iifname][iif.level]              then Database[iifname][iif.level] = {} end
  18. if not Database[iifname][iif.level][iif.quality] then
  19.        Database[iifname][iif.level][iif.quality] = true
  20.        userMods.SetAvatarConfigSection( common.GetAddonName().."DB", Database )
  21. local logstring = "itemname="..iifname..",level="..tostring(iif.level)..",quality: "..tostring(iif.quality)..";"
  22. local ibonus = avatar.GetItemBonus( v )
  23. if ibonus then
  24. if ibonus.misc.armor       then
  25. logstring = logstring..",arm="..ibonus.misc.armor
  26. end
  27. if ibonus.misc.armorBonus  then
  28. logstring = logstring..",armb="..ibonus.misc.armorBonus
  29. end
  30. if ibonus.misc.minDamage   then
  31. logstring = logstring..",mindmg="..ibonus.misc.minDamage
  32. end
  33. if ibonus.misc.maxDamage   then
  34. logstring = logstring..",maxdmg="..ibonus.misc.maxDamage
  35. end
  36. if ibonus.misc.weaponSpeed then
  37. logstring = logstring..",weaponspd="..ibonus.misc.weaponSpeed
  38. end
  39. if ibonus.misc.spellPower  then
  40. logstring = logstring..",spellpwr="..ibonus.misc.spellPower
  41. end
  42. logstring = logstring..";"
  43. for i, v in ibonus.innateStats do
  44. logstring = logstring.."stat="..v.sysName..",val="..tostring(v.base)..";"
  45. end
  46. for i, v in ibonus.resistances do
  47. logstring = logstring.."resist="..v.sysName..",val="..tostring(v.base)..";"
  48. end
  49. end
  50. if iif.runeInfo then
  51. logstring = logstring.."runelvl="..tostring(iif.runeInfo.runeLevel)..",runename="..userMods.FromWString(iif.runeInfo.zodiacSignName)
  52. end
  53. logstring = logstring..",texture="..common.GetTexturePath(iif.icon)..";"
  54. LogInfo(logstring)
  55. end
  56. end
  57. end
  58. common.RegisterEventHandler( inspector, "EVENT_INSPECT_STARTED" )
Advertisement
Add Comment
Please, Sign In to add comment