Go to Page... |
Compatibility: | Necrom (9.0.0) |
Updated: | 06/23/23 05:22 PM |
Created: | 11/09/20 03:08 AM |
Monthly downloads: | 3,360 |
Total downloads: | 269,699 |
Favorites: | 183 |
MD5: | |
Categories: | Group, Guild & Friends, Raid Mods |
function OSI.SetMechanicIconForUnit( displayName, -- display name of the affected player texture, -- icon texture path size, -- optional icon size color, -- optional icon color {r,g,b} offset, -- optional icon offset in meters callback -- optional callback function ) function OSI.RemoveMechanicIconForUnit( displayName -- display name of the affected player )
local ADDON_NAME = "MyAddonName" local MY_TEXTURE = "myaddonname/myiconpath/myicontexture.dds" local MECHANIC_ID = 12345 EVENT_MANAGER:RegisterForEvent( ADDON_NAME, EVENT_ADD_ON_LOADED, function( _, addonName ) if addonName ~= ADDON_NAME then return end EVENT_MANAGER:UnregisterForEvent( ADDON_NAME, EVENT_ADD_ON_LOADED ) EVENT_MANAGER:RegisterForEvent( ADDON_NAME, EVENT_EFFECT_CHANGED, function( _, changeType, _, _, unitTag ) -- check if OdySupportIcons is active and the affected unit is a player if OSI and OSI.SetMechanicIconForUnit and IsUnitPlayer( unitTag ) then -- retrieve the displayname of the affected player local displayName = GetUnitDisplayName( unitTag ) -- if the player gained the mechanic effect... if changeType == EFFECT_RESULT_GAINED then -- assign your icon to the affected player and make it bigger than other icons OSI.SetMechanicIconForUnit( displayName, -- display name of the affected player MY_TEXTURE, -- icon texture path OSI.GetIconSize() * 1.5, -- optional icon size { 1, 1, 1 }, -- optional icon color {r,g,b} 0, -- optional icon offset in meters function( data ) -- optional callback function -- simple bounce animation along the y-axis data.offset = 0.5 + 0.5 * math.sin( GetGameTimeMilliseconds() / 1000 * 2 ) -- the data object passed to the callback function contains: -- displayName, unitTag, texture, size, color, offset end ) -- if the player lost the mechanic effect... elseif changeType == EFFECT_RESULT_FADED then -- remove your icon from the formerly affected player OSI.RemoveMechanicIconForUnit( displayName ) end end end ) EVENT_MANAGER:AddFilterForEvent( ADDON_NAME, EVENT_EFFECT_CHANGED, REGISTER_FILTER_ABILITY_ID, MECHANIC_ID ) EVENT_MANAGER:AddFilterForEvent( ADDON_NAME, EVENT_EFFECT_CHANGED, REGISTER_FILTER_UNIT_TAG_PREFIX, "group" ) end )
function OSI.CreatePositionIcon( x, y, z, -- world coordinates texture, -- icon texture path size, -- optional icon size color, -- optional icon color {r,g,b} offset, -- optional icon offset in meters callback -- optional callback function ) function OSI.DiscardPositionIcon( icon -- position icon object )
/script OSI.PrintMyPosition()
local ADDON_NAME = "MyAddonName" local MY_TEXTURE = "myaddonname/myiconpath/myicontexture.dds" local MY_ICON = nil EVENT_MANAGER:RegisterForEvent( ADDON_NAME, EVENT_ADD_ON_LOADED, function( _, addonName ) if addonName ~= ADDON_NAME then return end EVENT_MANAGER:UnregisterForEvent( ADDON_NAME, EVENT_ADD_ON_LOADED ) EVENT_MANAGER:RegisterForEvent( ADDON_NAME, EVENT_BOSSES_CHANGED, function() -- check is OdySupportIcons is active and supports world position icons if OSI and OSI.CreatePositionIcon then -- retrieve name of boss local boss = GetUnitName( "boss1" ) -- if we are in Sharpfangs (Deshaan) lair and... if boss and boss == "Sharpfang" then -- if no icon has been created yet... if not MY_ICON then -- create an icon 2.5m above the stone formation and make it bigger than other icons MY_ICON = OSI.CreatePositionIcon( 274367, 11022, 213871, -- world coordinates MY_TEXTURE, -- icon texture path OSI.GetIconSize() * 1.5, -- optional icon size { 1, 1, 1 }, -- optional icon color {r,g,b} 2.5, -- optional icon offset in meters function( data ) -- optional callback function -- simple bounce animation along the y-axis data.offset = 2.5 + math.sin( GetGameTimeMilliseconds() / 1000 * 2 ) -- the data object passed to the callback function contains: -- texture, size, color, offset end ) end -- if we are somewhere else or Sharpfang is not around and... else -- if an icon has been created before... if MY_ICON then -- discard the icon OSI.DiscardPositionIcon( MY_ICON ) MY_ICON = nil end end end end ) end )
function OSI.AddCustomIconPack( icons )
local ADDON_NAME = "MyAddonName" local MY_TEXTURES = { "myaddonname/myiconpath/myicontexture-1.dds", "myaddonname/myiconpath/myicontexture-2.dds", "myaddonname/myiconpath/myicontexture-3.dds", } EVENT_MANAGER:RegisterForEvent( ADDON_NAME, EVENT_ADD_ON_LOADED, function( _, addonName ) if addonName ~= ADDON_NAME then return end EVENT_MANAGER:UnregisterForEvent( ADDON_NAME, EVENT_ADD_ON_LOADED ) -- check if OdySupportIcons is active and supports custom icon packs if OSI and OSI.AddCustomIconPack then -- add your list of icons OSI.AddCustomIconPack( MY_TEXTURES ) end end )
function OSI.AddUniqueIconPack( icons )
local ADDON_NAME = "MyAddonName" local MY_TEXTURES = { ["@SomePlayer"] = "myaddonname/myiconpath/myiconforsomeplayer.dds", ["@AnotherPlayer"] = "myaddonname/myiconpath/myiconforanotherplayer.dds", } EVENT_MANAGER:RegisterForEvent( ADDON_NAME, EVENT_ADD_ON_LOADED, function( _, addonName ) if addonName ~= ADDON_NAME then return end EVENT_MANAGER:UnregisterForEvent( ADDON_NAME, EVENT_ADD_ON_LOADED ) -- check if OdySupportIcons is active and supports unique icon packs if OSI and OSI.AddUniqueIconPack then -- add your list of icons OSI.AddUniqueIconPack( MY_TEXTURES ) end end )
File Name |
Version |
Size |
Uploader |
Date |
1.8.0 |
247kB |
ExoY |
02/05/23 03:48 AM |
|
1.7.0 |
247kB |
ExoY |
06/15/22 05:34 PM |
|
1.6.5 |
248kB |
ExoY |
07/13/21 12:45 PM |
|
1.6.4 |
248kB |
Odylon |
07/05/21 12:33 PM |
|
1.6.3 |
247kB |
Odylon |
06/29/21 12:19 PM |
|
1.6.2 |
246kB |
Odylon |
06/05/21 11:09 AM |
|
1.6.1 |
245kB |
Odylon |
05/22/21 09:51 AM |
|
1.6.0 |
244kB |
Odylon |
05/13/21 10:20 AM |
|
1.5.6 |
336kB |
Odylon |
04/10/21 01:02 AM |
|
1.5.5 |
312kB |
Odylon |
03/18/21 03:36 AM |
|
1.5.4 |
262kB |
Odylon |
01/03/21 04:06 AM |
|
1.5.3 |
245kB |
Odylon |
11/12/20 01:45 PM |
|
1.5.2 |
245kB |
Odylon |
11/09/20 11:34 AM |
|
1.5.1 |
245kB |
Odylon |
11/09/20 10:55 AM |
|
1.5.0 |
245kB |
11/09/20 03:08 AM |
Comment Options |
DakJaniels |
View Public Profile |
Send a private message to DakJaniels |
Send email to DakJaniels |
Find More Posts by DakJaniels |
Add DakJaniels to Your Buddy List |
04/03/24, 04:14 PM | |
Forum posts: 2
File comments: 3
Uploads: 0
|
Cannot see custom icons anymore :(
Hi there, all my custom icons assigned to specific players all of a sudden stopped showing up. There seems to be a placeholder next to their names but it's just empty. When I tried to select custom icons, the list usually shows, but now seems to be a list of empty icons (all appearing black). This happened out of blue. I tried removing custom icons and reapplying, reinstalling the add-on, completely removing the add-on and saved variables and then installing, and disabling it then re-enable. None of these worked. Would appreciate some help! Thank you!
Edits to add the error messages: user:/AddOns/OdySupportIcons/OdySupportIcons.lua:656: attempt to index a nil value stack traceback: user:/AddOns/OdySupportIcons/OdySupportIcons.lua:656: in function 'OSI.OnActivated' Edit: looks like this problem only occurred when I have HodorReflexes enabled. It is not occurring when I have it disabled…. Edit: reinstalling HodorReflexes fixed it.
Last edited by Sootica : 04/05/24 at 08:31 PM.
|
|
Sootica |
View Public Profile |
Send a private message to Sootica |
Send email to Sootica |
Find More Posts by Sootica |
Add Sootica to Your Buddy List |
06/09/24, 06:44 AM | |
Forum posts: 0
File comments: 1
Uploads: 0
|
Broken since update 42
I play in accessibility mode and have had an error since game Update 42 where having Ody's Support Icons enabled causes the UI to break when I enter a group. None of the icons work, and it puts me in a weird hybrid of accessibility mode and non-accessibility mode (with all of the menus and chat reverting to their UI outside of accessibility mode.
While I love Ody's Support Icons, it has been completely unusable for me since the most recent update which, in turn, has made add-ons with dependencies for it not work either since I need to disable it to not have a completely broken UI UPDATE: Uninstalled and reinstalled Ody and all mods with dependencies and (touch wood) it *seems* to be working again
Last edited by Ketryellowynne : 06/09/24 at 07:37 AM.
|
|
Ketryellowynne |
View Public Profile |
Send a private message to Ketryellowynne |
Send email to Ketryellowynne |
Find More Posts by Ketryellowynne |
Add Ketryellowynne to Your Buddy List |
Yesterday, 05:33 AM | |
Forum posts: 0
File comments: 1
Uploads: 0
|
LUA ERROR :(
I got this two errors when I tried to use it...
Code:
Failed to create control 'LAMIconPicker'. Duplicate name. |rstack traceback: [C]: in function 'CreateTopLevelWindow' user:/AddOns/LibAddonMenu-2.0/controls/iconpicker.lua:52: in function 'IconPickerMenu:Initialize' <Locals> self = [table:1]{}, name = "LAMIconPicker" </Locals> user:/AddOns/LibAddonMenu-2.0/controls/iconpicker.lua:47: in function 'IconPickerMenu:New' <Locals> self = [table:2]{__isAbstractClass = F}, object = [table:1] </Locals> user:/AddOns/LibAddonMenu-2.0/controls/iconpicker.lua:34: in function 'GetIconPickerMenu' user:/AddOns/OdySupportIcons/OdySupportIcons.lua:244: in function 'sceneCheck' <Locals> showing = "hidden" </Locals> /EsoUI/Libraries/Utility/ZO_CallbackObject.lua:132: in function 'ZO_CallbackObjectMixin:FireCallbacks' <Locals> self = [table:3]{name = "friendsList", wasShownInGamepadPreferredMode = F, state = "showing", restoresHUDSceneToggleUIMode = F, wasRequestedToShowInGamepadPreferredMode = F, disallowEvaluateTransitionCompleteCount = 1, fireCallbackDepth = 1, restoresHUDSceneToggleGameMenu = F}, eventName = "StateChange", registry = [table:4]{}, callbackInfoIndex = 3, callbackInfo = [table:5]{4 = F}, callback = user:/AddOns/OdySupportIcons/OdySupportIcons.lua:242, deleted = F </Locals> /EsoUI/Libraries/ZO_Scene/ZO_Scene.lua:151: in function 'ZO_Scene:SetState' <Locals> self = [table:3], newState = "showing", oldState = "hidden", name = "friendsList" </Locals> /EsoUI/Libraries/ZO_Scene/ZO_SceneManager_Base.lua:207: in function 'ZO_SceneManager_Base:ShowScene' <Locals> self = [table:6]{hudUISceneName = "hudui", hudUISceneHidesAutomatically = T, initialized = F, numTopLevelShown = 0, fireCallbackDepth = 0, hudSceneName = "hud", numRemoteTopLevelShown = 0, remoteSceneSequenceNumber = 55, exitUIModeOnChatFocusLost = F, isLoadingScreenShown = F}, scene = [table:3], sequenceNumber = 55 </Locals> /EsoUI/Libraries/ZO_Scene/ZO_SceneManager_Leader.lua:298: in function 'ZO_SceneManager_Leader:ShowScene' <Locals> self = [table:6], scene = [table:3] </Locals> /EsoUI/Libraries/ZO_Scene/ZO_SceneManager_Leader.lua:381: in function 'ZO_SceneManager_Leader:OnSceneStateHidden' <Locals> self = [table:6], scene = [table:7]{name = "hud", wasShownInGamepadPreferredMode = F, state = "hidden", restoresHUDSceneToggleUIMode = F, wasRequestedToShowInGamepadPreferredMode = F, disallowEvaluateTransitionCompleteCount = 1, fireCallbackDepth = 0, restoresHUDSceneToggleGameMenu = F}, nextSceneGroup = [table:8]{fireCallbackDepth = 0, state = "showing", activeScene = 1}, currentNextScene = [table:3] </Locals> /EsoUI/Libraries/ZO_Scene/ZO_SceneManager_Base.lua:281: in function 'ZO_SceneManager_Base:OnSceneStateChange' <Locals> self = [table:6], scene = [table:7], oldState = "hiding", newState = "hidden" </Locals> /EsoUI/Libraries/ZO_Scene/ZO_SceneManager_Leader.lua:328: in function 'ZO_SceneManager_Leader:OnSceneStateChange' <Locals> self = [table:6], scene = [table:7], oldState = "hiding", newState = "hidden" </Locals> /EsoUI/Ingame/Scenes/IngameSceneManager.lua:398: in function 'ZO_IngameSceneManager:OnSceneStateChange' <Locals> self = [table:6], scene = [table:7], oldState = "hiding", newState = "hidden" </Locals> /EsoUI/Libraries/ZO_Scene/ZO_Scene.lua:152: in function 'ZO_Scene:SetState' <Locals> self = [table:7], newState = "hidden", oldState = "hiding", name = "hud" </Locals> /EsoUI/Libraries/ZO_Scene/ZO_Scene.lua:284: in function 'ZO_Scene:OnTransitionComplete' <Locals> self = [table:7], nextState = "hidden" </Locals> /EsoUI/Libraries/ZO_Scene/ZO_Scene.lua:279: in function 'ZO_Scene:DetermineIfTransitionIsComplete' <Locals> self = [table:7], nextState = "hidden" </Locals> /EsoUI/Libraries/ZO_Scene/ZO_Scene.lua:191: in function 'ZO_Scene:RefreshFragments' <Locals> self = [table:7], asAResultOfSceneStateChange = T </Locals> /EsoUI/Libraries/ZO_Scene/ZO_Scene.lua:158: in function 'ZO_Scene:SetState' <Locals> self = [table:7], newState = "hiding", oldState = "shown", name = "hud", AS_A_RESULT_OF_SCENE_STATE_CHANGE = T </Locals> /EsoUI/Libraries/ZO_Scene/ZO_SceneManager_Base.lua:215: in function 'ZO_SceneManager_Base:HideScene' <Locals> self = [table:6], scene = [table:7], sequenceNumber = 54 </Locals> /EsoUI/Libraries/ZO_Scene/ZO_SceneManager_Leader.lua:302: in function 'ZO_SceneManager_Leader:HideScene' <Locals> self = [table:6], scene = [table:7] </Locals> /EsoUI/Libraries/ZO_Scene/ZO_SceneManager_Leader.lua:261: in function 'ZO_SceneManager_Leader:Show' <Locals> self = [table:6], sceneName = "friendsList", nextSceneClearsSceneStack = T, numScenesNextScenePops = 0, currentScene = [table:7], nextScene = [table:3] </Locals> [C]: in function 'PostHookFunction' /EsoUI/Ingame/MainMenu/Keyboard/ZO_MainMenu_Keyboard.lua:862: in function 'MainMenu_Keyboard:ShowSceneGroup' <Locals> self = [table:9]{ignoreCallbacks = F, fireCallbackDepth = 0, lastCategory = 11, sceneShowGroupName = "contactsSceneGroup"}, sceneGroupName = "contactsSceneGroup", specificScene = "friendsList", sceneGroup = [table:8] </Locals> /EsoUI/Ingame/MainMenu/Keyboard/ZO_MainMenu_Keyboard.lua:871: in function 'MainMenu_Keyboard:ToggleSceneGroup' <Locals> self = [table:9], sceneGroupName = "contactsSceneGroup", sceneGroupInfo = [table:10]{category = 11} </Locals> /EsoUI/Ingame/MainMenu/Keyboard/ZO_MainMenu_Keyboard.lua:934: in function 'ZO_MainMenuManager_ToggleCategoryInternal' <Locals> self = [table:9], category = 11, categoryLayoutInfo = [table:11]{categoryName = 8152, descriptor = 11, disabled = "EsoUI/Art/MainMenu/menuBar_soc...", pressed = "EsoUI/Art/MainMenu/menuBar_soc...", highlight = "EsoUI/Art/MainMenu/menuBar_soc...", binding = "TOGGLE_CONTACTS", normal = "EsoUI/Art/MainMenu/menuBar_soc..."}, categoryState = 0, categoryInfo = [table:12]{lastSceneGroupName = "contactsSceneGroup"} </Locals> /EsoUI/Ingame/MainMenu/Keyboard/ZO_MainMenu_Keyboard.lua:953: in function 'MainMenu_Keyboard:ToggleCategory' <Locals> self = [table:9], category = 11, categoryLayoutInfo = [table:11] </Locals> :1: in function '(main chunk)' <Locals> keybind = "TOGGLE_CONTACTS" </Locals> Code:
user:/AddOns/LibAddonMenu-2.0/controls/iconpicker.lua:53: attempt to index a nil value |rstack traceback: user:/AddOns/LibAddonMenu-2.0/controls/iconpicker.lua:53: in function 'IconPickerMenu:Initialize' <Locals> self = [table:1]{}, name = "LAMIconPicker" </Locals> user:/AddOns/LibAddonMenu-2.0/controls/iconpicker.lua:47: in function 'IconPickerMenu:New' <Locals> self = [table:2]{__isAbstractClass = F}, object = [table:1] </Locals> user:/AddOns/LibAddonMenu-2.0/controls/iconpicker.lua:34: in function 'GetIconPickerMenu' user:/AddOns/OdySupportIcons/OdySupportIcons.lua:244: in function 'sceneCheck' <Locals> showing = "hidden" </Locals> /EsoUI/Libraries/Utility/ZO_CallbackObject.lua:132: in function 'ZO_CallbackObjectMixin:FireCallbacks' <Locals> self = [table:3]{name = "friendsList", wasShownInGamepadPreferredMode = F, state = "showing", restoresHUDSceneToggleUIMode = F, wasRequestedToShowInGamepadPreferredMode = F, disallowEvaluateTransitionCompleteCount = 1, fireCallbackDepth = 1, restoresHUDSceneToggleGameMenu = F}, eventName = "StateChange", registry = [table:4]{}, callbackInfoIndex = 3, callbackInfo = [table:5]{4 = F}, callback = user:/AddOns/OdySupportIcons/OdySupportIcons.lua:242, deleted = F </Locals> /EsoUI/Libraries/ZO_Scene/ZO_Scene.lua:151: in function 'ZO_Scene:SetState' <Locals> self = [table:3], newState = "showing", oldState = "hidden", name = "friendsList" </Locals> /EsoUI/Libraries/ZO_Scene/ZO_SceneManager_Base.lua:207: in function 'ZO_SceneManager_Base:ShowScene' <Locals> self = [table:6]{hudUISceneName = "hudui", hudUISceneHidesAutomatically = T, initialized = F, numTopLevelShown = 0, fireCallbackDepth = 0, hudSceneName = "hud", numRemoteTopLevelShown = 0, remoteSceneSequenceNumber = 55, exitUIModeOnChatFocusLost = F, isLoadingScreenShown = F}, scene = [table:3], sequenceNumber = 55 </Locals> /EsoUI/Libraries/ZO_Scene/ZO_SceneManager_Leader.lua:298: in function 'ZO_SceneManager_Leader:ShowScene' <Locals> self = [table:6], scene = [table:3] </Locals> /EsoUI/Libraries/ZO_Scene/ZO_SceneManager_Leader.lua:381: in function 'ZO_SceneManager_Leader:OnSceneStateHidden' <Locals> self = [table:6], scene = [table:7]{name = "hud", wasShownInGamepadPreferredMode = F, state = "hidden", restoresHUDSceneToggleUIMode = F, wasRequestedToShowInGamepadPreferredMode = F, disallowEvaluateTransitionCompleteCount = 1, fireCallbackDepth = 0, restoresHUDSceneToggleGameMenu = F}, nextSceneGroup = [table:8]{fireCallbackDepth = 0, state = "showing", activeScene = 1}, currentNextScene = [table:3] </Locals> /EsoUI/Libraries/ZO_Scene/ZO_SceneManager_Base.lua:281: in function 'ZO_SceneManager_Base:OnSceneStateChange' <Locals> self = [table:6], scene = [table:7], oldState = "hiding", newState = "hidden" </Locals> /EsoUI/Libraries/ZO_Scene/ZO_SceneManager_Leader.lua:328: in function 'ZO_SceneManager_Leader:OnSceneStateChange' <Locals> self = [table:6], scene = [table:7], oldState = "hiding", newState = "hidden" </Locals> /EsoUI/Ingame/Scenes/IngameSceneManager.lua:398: in function 'ZO_IngameSceneManager:OnSceneStateChange' <Locals> self = [table:6], scene = [table:7], oldState = "hiding", newState = "hidden" </Locals> /EsoUI/Libraries/ZO_Scene/ZO_Scene.lua:152: in function 'ZO_Scene:SetState' <Locals> self = [table:7], newState = "hidden", oldState = "hiding", name = "hud" </Locals> /EsoUI/Libraries/ZO_Scene/ZO_Scene.lua:284: in function 'ZO_Scene:OnTransitionComplete' <Locals> self = [table:7], nextState = "hidden" </Locals> /EsoUI/Libraries/ZO_Scene/ZO_Scene.lua:279: in function 'ZO_Scene:DetermineIfTransitionIsComplete' <Locals> self = [table:7], nextState = "hidden" </Locals> /EsoUI/Libraries/ZO_Scene/ZO_Scene.lua:191: in function 'ZO_Scene:RefreshFragments' <Locals> self = [table:7], asAResultOfSceneStateChange = T </Locals> /EsoUI/Libraries/ZO_Scene/ZO_Scene.lua:158: in function 'ZO_Scene:SetState' <Locals> self = [table:7], newState = "hiding", oldState = "shown", name = "hud", AS_A_RESULT_OF_SCENE_STATE_CHANGE = T </Locals> /EsoUI/Libraries/ZO_Scene/ZO_SceneManager_Base.lua:215: in function 'ZO_SceneManager_Base:HideScene' <Locals> self = [table:6], scene = [table:7], sequenceNumber = 54 </Locals> /EsoUI/Libraries/ZO_Scene/ZO_SceneManager_Leader.lua:302: in function 'ZO_SceneManager_Leader:HideScene' <Locals> self = [table:6], scene = [table:7] </Locals> /EsoUI/Libraries/ZO_Scene/ZO_SceneManager_Leader.lua:261: in function 'ZO_SceneManager_Leader:Show' <Locals> self = [table:6], sceneName = "friendsList", nextSceneClearsSceneStack = T, numScenesNextScenePops = 0, currentScene = [table:7], nextScene = [table:3] </Locals> [C]: in function 'PostHookFunction' /EsoUI/Ingame/MainMenu/Keyboard/ZO_MainMenu_Keyboard.lua:862: in function 'MainMenu_Keyboard:ShowSceneGroup' <Locals> self = [table:9]{ignoreCallbacks = F, fireCallbackDepth = 0, lastCategory = 11, sceneShowGroupName = "contactsSceneGroup"}, sceneGroupName = "contactsSceneGroup", specificScene = "friendsList", sceneGroup = [table:8] </Locals> /EsoUI/Ingame/MainMenu/Keyboard/ZO_MainMenu_Keyboard.lua:871: in function 'MainMenu_Keyboard:ToggleSceneGroup' <Locals> self = [table:9], sceneGroupName = "contactsSceneGroup", sceneGroupInfo = [table:10]{category = 11} </Locals> /EsoUI/Ingame/MainMenu/Keyboard/ZO_MainMenu_Keyboard.lua:934: in function 'ZO_MainMenuManager_ToggleCategoryInternal'
Last edited by asdloldsa3 : 09/24/24 at 05:34 AM.
|
|
asdloldsa3 |
View Public Profile |
Send a private message to asdloldsa3 |
Send email to asdloldsa3 |
Find More Posts by asdloldsa3 |
Add asdloldsa3 to Your Buddy List |