Go to Page... |
Compatibility: | High Isle (8.0.0) |
Updated: | 06/13/22 03:51 AM |
Created: | 11/01/21 07:58 AM |
Monthly downloads: | 294 |
Total downloads: | 11,501 |
Favorites: | 28 |
MD5: |
File Name |
Version |
Size |
Uploader |
Date |
0.7 |
5kB |
CyberOnEso |
06/05/22 11:27 PM |
|
0.6 |
5kB |
CyberOnEso |
01/29/22 01:48 PM |
|
0.5 |
4kB |
CyberOnEso |
11/20/21 03:45 PM |
|
0.4 |
4kB |
CyberOnEso |
11/07/21 08:05 AM |
|
0.31 |
4kB |
CyberOnEso |
11/06/21 01:29 PM |
|
0.3 |
4kB |
CyberOnEso |
11/05/21 06:44 AM |
|
0.2 |
4kB |
CyberOnEso |
11/03/21 11:59 AM |
|
0.1 |
3kB |
CyberOnEso |
11/01/21 07:58 AM |
Comment Options |
CyberOnEso |
View Public Profile |
Send a private message to CyberOnEso |
Send email to CyberOnEso |
Find More Posts by CyberOnEso |
Add CyberOnEso to Your Buddy List |
05/21/22, 03:17 PM | ||
I have this with the PTS update, which should be going live with High Isle |
||
|
CyberOnEso |
View Public Profile |
Send a private message to CyberOnEso |
Send email to CyberOnEso |
Find More Posts by CyberOnEso |
Add CyberOnEso to Your Buddy List |
05/21/22, 04:28 PM | ||
Re: Suggestion: Appearance Accessory
Many thanks! |
||
|
CyberOnEso |
View Public Profile |
Send a private message to CyberOnEso |
Send email to CyberOnEso |
Find More Posts by CyberOnEso |
Add CyberOnEso to Your Buddy List |
06/12/22, 11:51 AM | |
|
ASM seems to equip a tabard saved in one build but does not seem to de-equip it when loading a saved build that does not have the tabard equipped.
|
|
tralce |
View Public Profile |
Send a private message to tralce |
Send email to tralce |
Find More Posts by tralce |
Add tralce to Your Buddy List |
06/13/22, 03:52 AM | ||
Hey'a, thank you for pointing this out. I have fixed this with the latest update
|
||
|
CyberOnEso |
View Public Profile |
Send a private message to CyberOnEso |
Send email to CyberOnEso |
Find More Posts by CyberOnEso |
Add CyberOnEso to Your Buddy List |
07/19/22, 08:14 AM | |
Forum posts: 2
File comments: 19
Uploads: 0
|
Hey,
I'm getting a NIL exception while trying to use this addon. According to the debug, it seems something is wrong with line 345, in this function: function setNextButton(icon) control = ArmoryStyleManager.UIButtons[nextButtonToUpdate] control:SetText(zo_strformat("|t45:45:<<1>>|t|r", icon)) nextButtonToUpdate = nextButtonToUpdate + 1 end Any clue what is going on? |
|
Narlong |
View Public Profile |
Send a private message to Narlong |
Send email to Narlong |
Find More Posts by Narlong |
Add Narlong to Your Buddy List |
08/06/22, 04:29 AM | |
Forum posts: 1
File comments: 84
Uploads: 0
|
Hello, firstly thanks so much for addon. Really helpful.
Warning: Spoiler
I just experienced something while using this addon and also QuickFashion. I had a DK char, saved a new armory slot while also equipping a QuickFashion profile. It saved it but its also appearing on the same slot number on my other chars. I tried to choose a diff quickfashion profile again on this other char and then saved. It kept saving the profile in that slot and going to another char it again persists. Wud it be possible to remove this feature integration with QF or maybe it is not intended to be that way saved on whole account? Hmmm now that i think on it maybe this is QuickFashion feature that i missed reading. I will go n check that addon too. Edit: yeah my bad wrong addon
Last edited by jinncrazey : 08/06/22 at 04:31 AM.
|
|
jinncrazey |
View Public Profile |
Send a private message to jinncrazey |
Send email to jinncrazey |
Find More Posts by jinncrazey |
Add jinncrazey to Your Buddy List |
08/23/22, 11:28 AM | |
|
Lock-only version?
Love the addon if just for the lock feature! Any chance you can release an ultra-light version that only includes the lock?
Thanks! This addon has saved me countless unintentional respecs! |
|
Drezzek |
View Public Profile |
Send a private message to Drezzek |
Send email to Drezzek |
Find More Posts by Drezzek |
Add Drezzek to Your Buddy List |
10/02/22, 07:11 PM | |
|
Lovin the addon.. I am however noticing a few issues i believe to be related to it.
1. Ocasionally my titles seems to randomly change from what was originally saved 2. 50% of the time loading saves does not load mundas stone and have to reload again. |
|
sinnereso |
View Public Profile |
Send a private message to sinnereso |
Send email to sinnereso |
Find More Posts by sinnereso |
Add sinnereso to Your Buddy List |
01/31/23, 01:47 PM | |
Forum posts: 0
File comments: 16
Uploads: 0
|
I get this error on one of my characters, i think its related to something in the outfit or mounts but im not sure. The others work fine.
Code:
user:/AddOns/ArmoryStyleManager/ArmoryStyleManager.lua:345: attempt to index a nil value stack traceback: user:/AddOns/ArmoryStyleManager/ArmoryStyleManager.lua:345: in function 'setNextButton' |caaaaaa<Locals> icon = "/esoui/art/icons/pet_deathhoun..." </Locals>|r user:/AddOns/ArmoryStyleManager/ArmoryStyleManager.lua:393: in function 'RefreshUI' |caaaaaa<Locals> selectedBuildIndex = 1, textWidth = 0, nextButtonToUpdate = 6, hasPoly = F </Locals>|r user:/AddOns/ArmoryStyleManager/ArmoryStyleManager.lua:568: in function 'CreateUI' |caaaaaa<Locals> control = ud, UIContainer = ud, CurseOutfitRow = ud, Header = ud, Collapse = ud, Mundus = ud, lastSlotControl = ud </Locals>|r /EsoUI/Libraries/Utility/ZO_Hook.lua:18: in function 'ZO_Armory_ExpandedEntry_OnInitialized' ZO_Armory_Keyboard_TopLevelList2Row1_Initialized:3: in function '(main chunk)' |caaaaaa<Locals> self = ud </Locals>|r [C]: in function 'CreateControlFromVirtual' /EsoUI/Libraries/Globals/GlobalVars.lua:18: in function 'CreateControlFromVirtual' |caaaaaa<Locals> name = "ZO_Armory_Keyboard_TopLevelLis...", parent = ud, templateName = "ZO_Armory_ExpandedBuildEntry", optionalNameSuffix = 1 </Locals>|r (tail call): ? (tail call): ? /EsoUI/Libraries/Utility/ZO_ObjectPool.lua:166: in function 'ZO_ObjectPool:CreateObject' |caaaaaa<Locals> self = [table:1]{m_NextControlId = 1, m_NextFree = 2}, objectKey = 1 </Locals>|r /EsoUI/Libraries/Utility/ZO_ObjectPool.lua:153: in function 'ZO_ObjectPool:AcquireObject' |caaaaaa<Locals> self = [table:1], objectKey = 1 </Locals>|r /EsoUI/Libraries/ZO_Templates/ScrollTemplates.lua:2442: in function 'ZO_ScrollList_UpdateScroll' |caaaaaa<Locals> self = ud, windowHeight = 668, activeControls = [table:2]{}, offset = 0, IS_REAL_NUMBER = F, activeIndex = 1, numActive = 0, allData = [table:3]{}, visibleDataIndices = [table:4]{1 = 1}, mode = 2, firstInViewVisibleIndex = 1, nextCandidateVisibleIndex = 1, currentDataIndex = 1, dataEntry = [table:5]{top = 0, typeId = 2, bottom = 550}, bottomEdge = 668, controlTop = 0, dataType = [table:6]{height = 550, selectable = T}, controlPool = [table:1] </Locals>|r /EsoUI/Libraries/ZO_Templates/ScrollTemplates.lua:2207: in function 'ZO_ScrollList_Commit' |caaaaaa<Locals> self = ud, windowHeight = 668, selectionsEnabled = F, scrollableDistance = 266, foundSelected = F, i = 0 </Locals>|r /EsoUI/Ingame/Armory/Keyboard/Armory_Keyboard.lua:204: in function 'ZO_Armory_Keyboard:RefreshBuilds' |caaaaaa<Locals> self = [table:7]{selectedBuildIndex = 1}, numBuilds = 4, scrollData = [table:3] </Locals>|r /EsoUI/Libraries/Utility/ZO_Hook.lua:38: in function 'RefreshBuilds' /EsoUI/Ingame/Armory/Keyboard/Armory_Keyboard.lua:29: in function 'callback' |caaaaaa<Locals> oldState = "hidden", newState = "showing" </Locals>|r /EsoUI/Libraries/Utility/ZO_CallbackObject.lua:132: in function 'ZO_CallbackObjectMixin:FireCallbacks' |caaaaaa<Locals> self = [table:8]{allowShowHideTimeUpdates = F, fireCallbackDepth = 1, state = "showing", duration = 200, animationTemplate = "FadeSceneAnimation"}, eventName = "StateChange", registry = [table:9]{}, callbackInfoIndex = 1, callbackInfo = [table:10]{4 = F}, callback = /EsoUI/Ingame/Armory/Keyboard/Armory_Keyboard.lua:26, deleted = F </Locals>|r /EsoUI/Libraries/ZO_Scene/ZO_SceneFragment.lua:143: in function 'ZO_SceneFragment:SetState' |caaaaaa<Locals> self = [table:8], newState = "showing", oldState = "hidden" </Locals>|r /EsoUI/Libraries/ZO_Scene/ZO_SceneFragment.lua:161: in function 'ZO_SceneFragment:ShouldBeShown' |caaaaaa<Locals> self = [table:8] </Locals>|r /EsoUI/Libraries/ZO_Scene/ZO_SceneFragment.lua:232: in function 'ZO_SceneFragment:Refresh' |caaaaaa<Locals> self = [table:8], asAResultOfSceneStateChange = T, refreshedForScene = [table:11]{name = "armoryKeyboard", wasShownInGamepadPreferredMode = F, wasRequestedToShowInGamepadPreferredMode = F, restoresHUDSceneToggleGameMenu = F, state = "showing", disallowEvaluateTransitionCompleteCount = 1, restoresHUDSceneToggleUIMode = F}, oldState = "hidden" </Locals>|r /EsoUI/Libraries/ZO_Scene/ZO_Scene.lua:186: in function 'ZO_Scene:RefreshFragmentsHelper' |caaaaaa<Locals> self = [table:11], asAResultOfSceneStateChange = T, i = 12, fragment = [table:8] </Locals>|r /EsoUI/Libraries/ZO_Scene/ZO_Scene.lua:194: in function 'ZO_Scene:RefreshFragments' |caaaaaa<Locals> self = [table:11], asAResultOfSceneStateChange = T </Locals>|r /EsoUI/Libraries/ZO_Scene/ZO_Scene.lua:163: in function 'ZO_Scene:SetState' |caaaaaa<Locals> self = [table:11], newState = "showing", oldState = "hidden", name = "armoryKeyboard", AS_A_RESULT_OF_SCENE_STATE_CHANGE = T </Locals>|r /EsoUI/Ingame/Scenes/InteractScene.lua:106: in function 'ZO_InteractScene:SetState' |caaaaaa<Locals> self = [table:11], newState = "showing" </Locals>|r /EsoUI/Libraries/ZO_Scene/ZO_SceneManager_Base.lua:213: in function 'ZO_SceneManager_Base:ShowScene' |caaaaaa<Locals> self = [table:12]{hudUISceneName = "hudui", exitUIModeOnChatFocusLost = F, fireCallbackDepth = 0, hudSceneName = "hud", hudUISceneHidesAutomatically = T, numRemoteTopLevelShown = 0, initialized = F, numTopLevelShown = 0, remoteSceneSequenceNumber = 11}, scene = [table:11], sequenceNumber = 11 </Locals>|r /EsoUI/Libraries/ZO_Scene/ZO_SceneManager_Leader.lua:300: in function 'ZO_SceneManager_Leader:ShowScene' |caaaaaa<Locals> self = [table:12], scene = [table:11] </Locals>|r /EsoUI/Libraries/ZO_Scene/ZO_SceneManager_Leader.lua:383: in function 'ZO_SceneManager_Leader:OnSceneStateHidden' |caaaaaa<Locals> self = [table:12], scene = [table:13]{name = "interact", fireCallbackDepth = 0, wasShownInGamepadPreferredMode = F, wasRequestedToShowInGamepadPreferredMode = F, restoresHUDSceneToggleGameMenu = F, state = "hidden", disallowEvaluateTransitionCompleteCount = 1, restoresHUDSceneToggleUIMode = F}, currentNextScene = [table:11] </Locals>|r /EsoUI/Libraries/ZO_Scene/ZO_SceneManager_Base.lua:287: in function 'ZO_SceneManager_Base:OnSceneStateChange' |caaaaaa<Locals> self = [table:12], scene = [table:13], oldState = "hiding", newState = "hidden" </Locals>|r /EsoUI/Libraries/ZO_Scene/ZO_SceneManager_Leader.lua:330: in function 'ZO_SceneManager_Leader:OnSceneStateChange' |caaaaaa<Locals> self = [table:12], scene = [table:13], oldState = "hiding", newState = "hidden" </Locals>|r /EsoUI/Ingame/Scenes/IngameSceneManager.lua:375: in function 'ZO_IngameSceneManager:OnSceneStateChange' |caaaaaa<Locals> self = [table:12], scene = [table:13], oldState = "hiding", newState = "hidden" </Locals>|r |
|
ake |
View Public Profile |
Send a private message to ake |
Send email to ake |
Find More Posts by ake |
Add ake to Your Buddy List |
02/08/23, 01:47 AM | |
Forum posts: 0
File comments: 17
Uploads: 0
|
does exactly what I want* AND it works with the controller UI (thank you thank you thank you), but I get a stack trace error every time I switch or save builds:
Code:
user:/AddOns/ArmoryStyleManager/ArmoryStyleManager.lua:316: attempt to index a nil value stack traceback: user:/AddOns/ArmoryStyleManager/ArmoryStyleManager.lua:316: in function 'RefreshUI' user:/AddOns/ArmoryStyleManager/ArmoryStyleManager.lua:509: in function 'ArmoryBuildLoaded' * I'm not sure the write protection works under controller, or if it does I couldn't figure it out at a glance - but other than that it seems to work great (aside from the error popup)
Last edited by infydel : 02/08/23 at 03:08 AM.
|
|
infydel |
View Public Profile |
Send a private message to infydel |
Send email to infydel |
Find More Posts by infydel |
Add infydel to Your Buddy List |
02/08/23, 03:22 AM | ||
Forum posts: 0
File comments: 17
Uploads: 0
|
however one thing I do note is that the message "NO ITEM FOUND TO UNEQUIP" appears in the top right; I can't work out what that pertains to, everything seems to be being equipped for the build... anyway this addon is exactly what I was looking for, thanks!
Last edited by infydel : 02/08/23 at 05:23 AM.
|
|
|
infydel |
View Public Profile |
Send a private message to infydel |
Send email to infydel |
Find More Posts by infydel |
Add infydel to Your Buddy List |
02/16/23, 05:47 AM | |
Forum posts: 0
File comments: 17
Uploads: 0
|
something you almost certainly can't do much about - if you change builds inside your house, the pet collectible you've set for that build won't be updated (since you can't use pets inside housing).
|
|
infydel |
View Public Profile |
Send a private message to infydel |
Send email to infydel |
Find More Posts by infydel |
Add infydel to Your Buddy List |
02/28/23, 05:21 AM | |
Forum posts: 0
File comments: 17
Uploads: 0
|
The values returned by GetCurrentTitleIndex() appear to only be valid until you earn a new title (then log out and back in again, I think), because the new title might appear above the current one - e.g. I had saved a build with Master Thief, but it changed to Executioner (1 position out) when I loaded that build the day after earning a new title.
Not sure if it's possible, but you might have to save the string value then look up the index by going through the whole list. EDIT: my reading of the API shows it should be possible using GetNumTitles() and GetTitle(idx).
Last edited by infydel : 02/28/23 at 05:35 AM.
|
|
infydel |
View Public Profile |
Send a private message to infydel |
Send email to infydel |
Find More Posts by infydel |
Add infydel to Your Buddy List |
03/18/23, 12:57 PM | |
Error after U37 update
2023.03.18 - Encountered 5 instances of the following error before I noticed it, however, I was unable to duplicate it a 6th time:
Warning: Spoiler
Code:
ResizeToFitDescendents: Enabling resizToFitDescendents is illegal for Label . stack traceback: [C]: in function 'SetResizeToFitDescendents' user:/AddOns/ArmoryStyleManager/ArmoryStyleManager.lua:276: in function 'CreateOverlay' <Locals> parent = ud, rel = 2, relPoint = 2, x = 0, y = 0, overlay = ud </Locals> user:/AddOns/ArmoryStyleManager/ArmoryStyleManager.lua:531: in function 'CreateUI' <Locals> control = ud, UIContainer = ud, CurseOutfitRow = ud, Header = ud, Collapse = ud, Mundus = ud, lastSlotControl = ud, i = 3 </Locals> /EsoUI/Libraries/Utility/ZO_Hook.lua:18: in function 'ZO_Armory_ExpandedEntry_OnInitialized' ZO_Armory_Keyboard_TopLevelList2Row1_Initialized:3: in function '(main chunk)' <Locals> self = ud </Locals> [C]: in function 'CreateControlFromVirtual' /EsoUI/Libraries/Globals/GlobalVars.lua:18: in function 'CreateControlFromVirtual' <Locals> name = "ZO_Armory_Keyboard_TopLevelLis...", parent = ud, templateName = "ZO_Armory_ExpandedBuildEntry", optionalNameSuffix = 1 </Locals> (tail call): ? (tail call): ? /EsoUI/Libraries/Utility/ZO_ObjectPool.lua:166: in function 'ZO_ObjectPool:CreateObject' <Locals> self = [table:1]{m_NextFree = 2, m_NextControlId = 1}, objectKey = 1 </Locals> /EsoUI/Libraries/Utility/ZO_ObjectPool.lua:153: in function 'ZO_ObjectPool:AcquireObject' <Locals> self = [table:1], objectKey = 1 </Locals> /EsoUI/Libraries/ZO_Templates/ScrollTemplates.lua:2442: in function 'ZO_ScrollList_UpdateScroll' <Locals> self = ud, windowHeight = 668, activeControls = [table:2]{}, offset = 0, IS_REAL_NUMBER = F, activeIndex = 1, numActive = 0, allData = [table:3]{}, visibleDataIndices = [table:4]{1 = 1}, mode = 2, firstInViewVisibleIndex = 1, nextCandidateVisibleIndex = 1, currentDataIndex = 1, dataEntry = [table:5]{bottom = 550, top = 0, typeId = 2}, bottomEdge = 668, controlTop = 0, dataType = [table:6]{selectable = T, height = 550}, controlPool = [table:1] </Locals> /EsoUI/Libraries/ZO_Templates/ScrollTemplates.lua:2207: in function 'ZO_ScrollList_Commit' <Locals> self = ud, windowHeight = 668, selectionsEnabled = F, scrollableDistance = 170, foundSelected = F, i = 0 </Locals> /EsoUI/Ingame/Armory/Keyboard/Armory_Keyboard.lua:204: in function 'ZO_Armory_Keyboard:RefreshBuilds' <Locals> self = [table:7]{selectedBuildIndex = 1}, numBuilds = 3, scrollData = [table:3] </Locals> /EsoUI/Libraries/Utility/ZO_Hook.lua:38: in function 'RefreshBuilds' /EsoUI/Ingame/Armory/Keyboard/Armory_Keyboard.lua:29: in function 'callback' <Locals> oldState = "hidden", newState = "showing" </Locals> /EsoUI/Libraries/Utility/ZO_CallbackObject.lua:132: in function 'ZO_CallbackObjectMixin:FireCallbacks' <Locals> self = [table:8]{state = "showing", fireCallbackDepth = 1, animationTemplate = "FadeSceneAnimation", allowShowHideTimeUpdates = F, duration = 200}, eventName = "StateChange", registry = [table:9]{}, callbackInfoIndex = 1, callbackInfo = [table:10]{4 = F}, callback = /EsoUI/Ingame/Armory/Keyboard/Armory_Keyboard.lua:26, deleted = F </Locals> /EsoUI/Libraries/ZO_Scene/ZO_SceneFragment.lua:143: in function 'ZO_SceneFragment:SetState' <Locals> self = [table:8], newState = "showing", oldState = "hidden" </Locals> /EsoUI/Libraries/ZO_Scene/ZO_SceneFragment.lua:161: in function 'ZO_SceneFragment:ShouldBeShown' <Locals> self = [table:8] </Locals> /EsoUI/Libraries/ZO_Scene/ZO_SceneFragment.lua:232: in function 'ZO_SceneFragment:Refresh' <Locals> self = [table:8], asAResultOfSceneStateChange = T, refreshedForScene = [table:11]{name = "armoryKeyboard", state = "showing", restoresHUDSceneToggleUIMode = F, disallowEvaluateTransitionCompleteCount = 1, wasRequestedToShowInGamepadPreferredMode = F, wasShownInGamepadPreferredMode = F, restoresHUDSceneToggleGameMenu = F}, oldState = "hidden" </Locals> /EsoUI/Libraries/ZO_Scene/ZO_Scene.lua:186: in function 'ZO_Scene:RefreshFragmentsHelper' <Locals> self = [table:11], asAResultOfSceneStateChange = T, i = 12, fragment = [table:8] </Locals> /EsoUI/Libraries/ZO_Scene/ZO_Scene.lua:194: in function 'ZO_Scene:RefreshFragments' <Locals> self = [table:11], asAResultOfSceneStateChange = T </Locals> /EsoUI/Libraries/ZO_Scene/ZO_Scene.lua:163: in function 'ZO_Scene:SetState' <Locals> self = [table:11], newState = "showing", oldState = "hidden", name = "armoryKeyboard", AS_A_RESULT_OF_SCENE_STATE_CHANGE = T </Locals> /EsoUI/Ingame/Scenes/InteractScene.lua:106: in function 'ZO_InteractScene:SetState' <Locals> self = [table:11], newState = "showing" </Locals> /EsoUI/Libraries/ZO_Scene/ZO_SceneManager_Base.lua:213: in function 'ZO_SceneManager_Base:ShowScene' <Locals> self = [table:12]{hudUISceneHidesAutomatically = T, numRemoteTopLevelShown = 0, hudSceneName = "hud", remoteSceneSequenceNumber = 179, fireCallbackDepth = 0, initialized = F, exitUIModeOnChatFocusLost = F, numTopLevelShown = 0, hudUISceneName = "hudui"}, scene = [table:11], sequenceNumber = 179 </Locals> /EsoUI/Libraries/ZO_Scene/ZO_SceneManager_Leader.lua:300: in function 'ZO_SceneManager_Leader:ShowScene' <Locals> self = [table:12], scene = [table:11] </Locals> /EsoUI/Libraries/ZO_Scene/ZO_SceneManager_Leader.lua:383: in function 'ZO_SceneManager_Leader:OnSceneStateHidden' <Locals> self = [table:12], scene = [table:13]{name = "interact", state = "hidden", fireCallbackDepth = 0, restoresHUDSceneToggleUIMode = F, disallowEvaluateTransitionCompleteCount = 1, wasRequestedToShowInGamepadPreferredMode = F, wasShownInGamepadPreferredMode = F, restoresHUDSceneToggleGameMenu = F}, currentNextScene = [table:11] </Locals> /EsoUI/Libraries/ZO_Scene/ZO_SceneManager_Base.lua:287: in function 'ZO_SceneManager_Base:OnSceneStateChange' <Locals> self = [table:12], scene = [table:13], oldState = "hiding", newState = "hidden" </Locals> /EsoUI/Libraries/ZO_Scene/ZO_SceneManager_Leader.lua:330: in function 'ZO_SceneManager_Leader:OnSceneStateChange' <Locals> self = [table:12], scene = [table:13], oldState = "hiding", newState = "hidden" </Locals> /EsoUI/Ingame/Scenes/IngameSceneManager.lua:379: in function 'ZO_IngameSceneManager:OnSceneStateChange' <Locals> self = [table:12], scene = [table:13], oldState = "hiding", newState = "hidden" </Locals> Not sure if it's relevant, but I use the newest Armory Assistant: Zuqoth Please let me know if any additional information would help with tracking down the cause.
Last edited by ZoLatKam : 03/18/23 at 01:01 PM.
|
|
|
ZoLatKam |
View Public Profile |
Send a private message to ZoLatKam |
Send email to ZoLatKam |
Find More Posts by ZoLatKam |
Add ZoLatKam to Your Buddy List |