Doesn't all of that info come with AucAdv anyway? If you have AucAdv installed (which is required by the linked addon) all you have to do is mouse-over the target to see anticipated materials cost, Auc valuation, vendor valuation, and of course, disenchant predictions and disenchant valuations.
I guess it shouldn't be too much more effort to add that info to the skillet window, but seems kinda cluttery.
Doesn't all of that info come with AucAdv anyway? If you have AucAdv installed (which is required by the linked addon) all you have to do is mouse-over the target to see anticipated materials cost, Auc valuation, vendor valuation, and of course, disenchant predictions and disenchant valuations.
I guess it shouldn't be too much more effort to add that info to the skillet window, but seems kinda cluttery.
Perhaps (if skillet is already setup to support modules) you could just modify that project to become a module of skillet (while of course giving full credit to the original author)?
I actually looked at adding something like this when I first started coding. I soon discovered that I was trying to do to much at once and pushed this to the back burner for now. What I am trying to work on is getting a public API in place for Skillet so that it is very easy for other mod authors to hook in. Hopefully that will encourage them to make their mods work with Skillet as well as ATSW.
nice addon but when i open tradeskills up i get a massive pause as if its gonna crash
I get this too sometimes. At first, I though it was just because I was doing something silly and somehow causing it. But now I'm leaning more towards a problem actually getting at the list of recipes from the Blizzard API. The later versions of Skillet do their best to cache recipes and avoid poking Blizzard for info unless it is absolutely necessary.
This makes the problem less apparent, but does not removing it completely. I'm still working on that.
I also see this with any mod that needs to scan the list of known recipes for a trade. So even if I can fix this in Skillet, you may still see problems with other mods.
I'm using this mod just today and absolutely love it! Thanks so much for it because as a former ATSW user my self I've been looking for something similar but lighter in weight.
TSI seems to work well enough with Skillet - I'll just need to do a couple of tweaks to TSI to get it to recognize the Skillet frame.
I'm quite keen to make Skillet easy for other mod authors to hook into. Take a look at the file Skillet/ThirdPartyHooks.lua and if there is functionality/information that you'd like to see there, please let me know. I'm hoping that I can get a stable list of routines in there so that no matter how crazy I get in the future, I won't break compatibility with other mods.
Any way to get TSIs ability to show what level a recipe will go yellow,green,and grey to work with skillet?
With the changes I made to Skillet tonight, TSI should be able to hook into it and display the info quickly cleanly. Here's some example code that can be added to TSI to do this:
function TradeskillInfo:GetExtraItemDetailText(something, tradeskill, skill_index)
local skillName, skillType, numAvailable, isExpanded = GetTradeSkillInfo(skill_index);
if ( skillType == "header" ) then return end
if ( skill_index > GetNumTradeSkills() ) then return end
local link = GetTradeSkillItemLink(skill_index);
local itemId = getIdFromLink(link)
local text = nil
if self:CombineExists(itemId) then
if self:ShowingSkillProfit() then
-- Insert item value and reagent costs
local value,cost,profit = self:GetCombineCost(itemId);
text = string.format("s: %s - c: %s = p: %s",
self:GetMoneyString(value), self:GetMoneyString(cost), self:GetMoneyString(profit));
end
if self:ShowingSkillLevel() then
local sep = ""
if text then sep = "\n" else text = "" end
text = text .. sep .. self:GetColoredDifficulty(itemId)
end
end
return text
end
function TradeskillInfo:HookTradeSkillUI()
if TradeSkillFrame and not self:IsHooked("TradeSkillFrame_SetSelection") then
self:SecureHook("TradeSkillFrame_SetSelection");
end
if Skillet and not self:IsHooked(Skillet, "GetExtraItemDetailText") then
self:Hook(Skillet, "GetExtraItemDetailText")
end
end
I'm attaching a quicky picture of what the above code does.
[2007/10/11 10:14:12-414-x14]: Skillet-1.9-51688\ThirdPartyHooks.lua:223: attempt to call global 'Skillet_GetExtraItemDetailText' (a nil value)
Skillet-1.9-51688\UI\MainFrame.lua:620: in function `DisplayTradeskillTooltip'
<string>:"*:OnEnter":2: in function <[string "*:OnEnter"]:1>
---
I'm quite keen to make Skillet easy for other mod authors to hook into. Take a look at the file Skillet/ThirdPartyHooks.lua and if there is functionality/information that you'd like to see there, please let me know. I'm hoping that I can get a stable list of routines in there so that no matter how crazy I get in the future, I won't break compatibility with other mods.
I'm quite keen to find a way to make TSI less clunky. Given that I didn't write TSI and I'm only kind of half-assed keeping it up to date (along with help from plenty of others), I'm kinda loathe to do the massive overhaul to it that I want to do.
However, Skillet looks like it'd work great with what I'm planning out for the (separate) rewrite/rebuild/restructure of TSI into a new mod... or maybe, Skillet plug in? :)
I used ATSW for a while, but found it well bulky. It did too much compared to what I wanted it to do. But this lil gem works as it should - just enough for me :) Thanks for writing it. Green isn't my color, but I can live with it ;)
With the changes I made to Skillet tonight, TSI should be able to hook into it and display the info quickly cleanly. Here's some example code that can be added to TSI to do this:
function TradeskillInfo:GetExtraItemDetailText(something, tradeskill, skill_index)
local skillName, skillType, numAvailable, isExpanded = GetTradeSkillInfo(skill_index);
if ( skillType == "header" ) then return end
if ( skill_index > GetNumTradeSkills() ) then return end
local link = GetTradeSkillItemLink(skill_index);
local itemId = getIdFromLink(link)
local text = nil
if self:CombineExists(itemId) then
if self:ShowingSkillProfit() then
-- Insert item value and reagent costs
local value,cost,profit = self:GetCombineCost(itemId);
text = string.format("s: %s - c: %s = p: %s",
self:GetMoneyString(value), self:GetMoneyString(cost), self:GetMoneyString(profit));
end
if self:ShowingSkillLevel() then
local sep = ""
if text then sep = "\n" else text = "" end
text = text .. sep .. self:GetColoredDifficulty(itemId)
end
end
return text
end
function TradeskillInfo:HookTradeSkillUI()
if TradeSkillFrame and not self:IsHooked("TradeSkillFrame_SetSelection") then
self:SecureHook("TradeSkillFrame_SetSelection");
end
if Skillet and not self:IsHooked(Skillet, "GetExtraItemDetailText") then
self:Hook(Skillet, "GetExtraItemDetailText")
end
end
I'm attaching a quicky picture of what the above code does.
Awesome!!! You are the Best! Even ATSW never had the ability to do this!! Thanks man!
BTW this is the same Nevyr28 from WowInterface and you're recent 1.8 versions totally fixed my vendor button problem, can't thank you enough for that. It was the one thing keeping me from switching from ATSW.
EDIT: Just tried out the code and works great except for smelting. It doesn't show the levels, But all other tradeskills work fine.
[2007/10/11 10:14:12-414-x14]: Skillet-1.9-51688\ThirdPartyHooks.lua:223: attempt to call global 'Skillet_GetExtraItemDetailText' (a nil value)
Skillet-1.9-51688\UI\MainFrame.lua:620: in function `DisplayTradeskillTooltip'
<string>:"*:OnEnter":2: in function <[string "*:OnEnter"]:1>
---
Getting this too when opening any profession windows.
[2007/10/11 14:34:50-375-x1]: Skillet-1.9-51688\ThirdPartyHooks.lua:223: attempt to call global 'Skillet_GetExtraItemDetailText' (a nil value)
Skillet-1.9-51688\UI\MainFrame.lua:793: in function `UpdateDetailsWindow'
Skillet-1.9-51688\UI\MainFrame.lua:496: in function `UpdateTradeSkillsWindow'
Skillet-1.9-51688\UI\MainFrame.lua:216: in function `updateFunction'
Interface\FrameXML\UIPanelTemplates.lua:237: in function `FauxScrollFrame_OnVerticalScroll':
<string>:"*:OnVerticalScroll":1: in function <[string "*:OnVerticalScroll"]:1>
<in C code>: in function `SetVerticalScroll'
<string>:"*:OnValueChanged":1: in function <[string "*:OnValueChanged"]:1>
<in C code>: in function `SetValue'
Interface\FrameXML\UIPanelTemplates.lua:158: in function `ScrollFrameTemplate_OnMouseWheel':
<string>:"*:OnMouseWheel":1: in function <[string "*:OnMouseWheel"]:1>
---
Doesn't all of that info come with AucAdv anyway? If you have AucAdv installed (which is required by the linked addon) all you have to do is mouse-over the target to see anticipated materials cost, Auc valuation, vendor valuation, and of course, disenchant predictions and disenchant valuations.
I guess it shouldn't be too much more effort to add that info to the skillet window, but seems kinda cluttery.
Perhaps (if skillet is already setup to support modules) you could just modify that project to become a module of skillet (while of course giving full credit to the original author)?
Very true Seerah....you are so wise. Or maybe I should have had a second cup of coffee before posting :)
I actually looked at adding something like this when I first started coding. I soon discovered that I was trying to do to much at once and pushed this to the back burner for now. What I am trying to work on is getting a public API in place for Skillet so that it is very easy for other mod authors to hook in. Hopefully that will encourage them to make their mods work with Skillet as well as ATSW.
I get this too sometimes. At first, I though it was just because I was doing something silly and somehow causing it. But now I'm leaning more towards a problem actually getting at the list of recipes from the Blizzard API. The later versions of Skillet do their best to cache recipes and avoid poking Blizzard for info unless it is absolutely necessary.
This makes the problem less apparent, but does not removing it completely. I'm still working on that.
I also see this with any mod that needs to scan the list of known recipes for a trade. So even if I can fix this in Skillet, you may still see problems with other mods.
Indeed, Seerah is wise.
I'm liking the look of that LilSparky's Workshop a lot. I'll do all I can to try and make it easy for the author to hook into Skillet as well.
I haven't noticed any (massive or small) pauses using TSI or TSI and Skillet.
TSI seems to work well enough with Skillet - I'll just need to do a couple of tweaks to TSI to get it to recognize the Skillet frame.
I'm quite keen to make Skillet easy for other mod authors to hook into. Take a look at the file Skillet/ThirdPartyHooks.lua and if there is functionality/information that you'd like to see there, please let me know. I'm hoping that I can get a stable list of routines in there so that no matter how crazy I get in the future, I won't break compatibility with other mods.
With the changes I made to Skillet tonight, TSI should be able to hook into it and display the info quickly cleanly. Here's some example code that can be added to TSI to do this:
I'm attaching a quicky picture of what the above code does.
I'm quite keen to find a way to make TSI less clunky. Given that I didn't write TSI and I'm only kind of half-assed keeping it up to date (along with help from plenty of others), I'm kinda loathe to do the massive overhaul to it that I want to do.
However, Skillet looks like it'd work great with what I'm planning out for the (separate) rewrite/rebuild/restructure of TSI into a new mod... or maybe, Skillet plug in? :)
No seriously, you did an awesome job.
Awesome!!! You are the Best! Even ATSW never had the ability to do this!! Thanks man!
BTW this is the same Nevyr28 from WowInterface and you're recent 1.8 versions totally fixed my vendor button problem, can't thank you enough for that. It was the one thing keeping me from switching from ATSW.
EDIT: Just tried out the code and works great except for smelting. It doesn't show the levels, But all other tradeskills work fine.
Getting this too when opening any profession windows.
Sorry. Accidentally left in a call to a function that got removed. I've just checked in a fix for this.