EQ2Interface.com
Search Downloads


Go Back   EQ2Interface > Featured Projects > ProfitUI

Reply
Thread Tools Search this Thread Display Modes
  #1  
Unread 05-22-2007, 01:44 AM
Mayve's Avatar
Mayve Mayve is offline
Snoogans!
Premium Member
Interface Author - Click to view interfaces
 
Join Date: Oct 2005
Server: Befallen
Posts: 53
Default Targets that turn attackable still not showing

Sadly the target windows are still not working in v3.4 when it comes to targets that turn attackable.
Attached Thumbnails
Click image for larger version

Name:	profitui_target.jpg
Views:	513
Size:	33.6 KB
ID:	5785  

Last edited by Mayve : 05-22-2007 at 01:56 AM.
Reply With Quote
  #2  
Unread 05-22-2007, 05:26 AM
gm9 gm9 is offline
gm10-1
Premium Member
EQ2Interface Super Mod
Featured
 
Join Date: Feb 2006
Posts: 6,479
Default

Yes I already noticed that as well. I'll have to sit down and finally figure this one out, that must be the longest standing issue with the interface... Will do so after my vacation (2 weeks starting this weekend, yay!). For some reason the DynamicData I'm using does not trigger correctly when targets turn attackable. I'll just have to find another one that works and use that instead...
__________________
P R O F I T U I ∙ R E B O R N [Auto-Updater] | [Portal] | [F.A.Q.] | [Support Forums]
~ Retired ~
If it does not work, you likely installed it incorrectly. Always try a clean install before reporting bugs.

Last edited by gm9 : 05-22-2007 at 05:32 AM. Reason: added info
Reply With Quote
  #3  
Unread 05-22-2007, 03:55 PM
nikken nikken is offline
A Brown Bear
 
Join Date: Mar 2005
Server: Antonia Bayle
Posts: 9
Default

Keep up the great work Gm9!
Reply With Quote
  #4  
Unread 05-23-2007, 02:39 PM
Othesus's Avatar
Othesus Othesus is offline
A Griffon
This person is a EQ2Map developer.
Interface Author - Click to view interfaces
 
Join Date: Mar 2005
Server: Lucan DLere
Posts: 847
Default

Ah shoot. I must not have looked at this very closely before.

Your target window has a special page for NPCs and shinies so that it displays them entirely differently. Hmm, for shinies it only checks for "?" though and not the "!" book pages... Anyway, there's a lot of scripting attached to the "Info" text which is where the target shows a mob's level. It looks like:

<Text AbsorbsInput="false" actiontype="Target" DynamicDataFilter="FBFB" Font="/Profit.Fonts.FontArial14T" LocalText="Level 75 Epic(x4)" Location="0,18" Name="Info" OnHide="Parent.Name.size=&quot;500,0&quot;
Parent.Power.Visible=False
Parent.Health.Visible=False
Parent.Info.Size=&quot;0,0&quot;
Parent.Parent.Common.Shiney.Visible=((Parent.Name.Text)==(&apos;?&apos;))
COND=(Parent.Name.Text == &apos;?&apos;)
CONDTRUE=&quot;0,0&quot;
CONDFALSE=&quot;154,75&quot;
Parent.Parent.Common.Name2.Size=COND ? CONDTRUE : CONDFALSE
Visible=True" PackLocation="top,left" PackLocationProp="0000/0001,0018/0001" ScrollExtent="172,21" ShadowStyle="/ShadowStyles.BlackOutlineNoShadow.Outline1" Size="172,21" TextAlignment="Center" TextAlignmentVertical="Center">Level 75 Epic(x4)</Text>

When this "Info" text is hidden it switches modes entirely and shows the Name2 style text from the Common page. I messed around with it a bit and put in some OnShow scripting like:
<Text AbsorbsInput="false" actiontype="Target" DynamicDataFilter="FBFB" Font="/Profit.Fonts.FontArial14T" LocalText="Level 75 Epic(x4)" Location="0,18" Name="Info" OnHide="Parent.Name.size=&quot;500,0&quot;
Parent.Power.Visible=False
Parent.Health.Visible=False
Size=&quot;0,0&quot;
Parent.Parent.Common.Shiney.Visible=((Parent.Name.Text)==(&apos;?&apos;))
COND=(Parent.Name.Text == &apos;?&apos;)
CONDTRUE=&quot;0,0&quot;
CONDFALSE=&quot;154,75&quot;
Parent.Parent.Common.Name2.Size=COND ? CONDTRUE : CONDFALSE" OnShow="Parent.Name.Size='164,14'
Parent.Power.Visible=True
Parent.Health.Visible=True
Size='172,21'
Parent.Parent.Common.Shiney.Visible=False
Parent.Parent.Common.Name2.Size='0,0'"
PackLocation="top,left" PackLocationProp="0000/0001,0018/0001" ScrollExtent="172,21" ShadowStyle="/ShadowStyles.BlackOutlineNoShadow.Outline1" Size="172,21" TextAlignment="Center" TextAlignmentVertical="Center">Level 75 Epic(x4)</Text>

which basically reverses everything that the OnHide scripting does. It seems to work ok. It doesn't switch modes to show you the health and power instantly. The window has to be updated by some kind of event, like a change in health or power etc. but the default interface window works the same way. It doesn't change instantly either.

Oh, I was doing all this testing on the sparring partners in Hate's Envy. Those change back and forth from NPC to attackable really easily.

Last edited by Othesus : 05-23-2007 at 02:43 PM.
Reply With Quote
  #5  
Unread 05-23-2007, 03:19 PM
gm9 gm9 is offline
gm10-1
Premium Member
EQ2Interface Super Mod
Featured
 
Join Date: Feb 2006
Posts: 6,479
Default

Quote:
Originally Posted by Othesus View Post
Your target window has a special page for NPCs and shinies so that it displays them entirely differently. Hmm, for shinies it only checks for "?" though and not the "!" book pages...
I'm fairly certain that you cannot tab-target "!" pages. The code for "?" is a workaround where you tab-target the "?" and then double-click it again or something like that (memory is hazy and that code is a mess anyway - was actually my first use of conditionals ever IIRC).

Quote:
Originally Posted by Othesus View Post
It seems to work ok. It doesn't switch modes to show you the health and power instantly. The window has to be updated by some kind of event, like a change in health or power etc. but the default interface window works the same way. It doesn't change instantly either.
Right, currently I use the power bar. NPC's don't have one. Once you target something with a power bar the DynamicData gets triggered and switches the mode of the window. However, on NPC's turning attackable and thus obtaining a power bar while you have them targetted, this does not work.

Interesting that your code seems to work, I'm fairly certain that I already tested an OnShow event on the info text - actually it was the first thing I tried since I already use the OnHide event of that object. Maybe the behaviour of that object changed over time, it was long ago when I last looked at the code, and I can't remember what the issue with it was. Would be cool if that's it, in any case thanks for taking the time to find a workaround.

To you want to go ahead an upload your window here so people can test it just in case the sparring partner's behave differently than other mobs or other issues appear like the window not switching to NPC mode when it should?
__________________
P R O F I T U I ∙ R E B O R N [Auto-Updater] | [Portal] | [F.A.Q.] | [Support Forums]
~ Retired ~
If it does not work, you likely installed it incorrectly. Always try a clean install before reporting bugs.
Reply With Quote
  #6  
Unread 05-24-2007, 05:28 AM
Othesus's Avatar
Othesus Othesus is offline
A Griffon
This person is a EQ2Map developer.
Interface Author - Click to view interfaces
 
Join Date: Mar 2005
Server: Lucan DLere
Posts: 847
Default

Well, I spent a few more hours testing the scripts and it's a little more complicated still. Putting all the scripts into the "Info" text object almost works but not quite. This is what is visible in the target window depending on the type of thing you're targeting:

MOB: health, power, level
NPC: health, power, no level
Shiny/Harvestable: health, power is inactive (gray), no level

So you would think that putting the script into the level "Info" text object would work. It works for every case except for tabbing from NPC to NPC or between NPCs and Shiny/Harvestables. In that case the health and power bars pop up. Grrr.

So there has to be a couple more checks.

Last edited by Othesus : 05-24-2007 at 05:45 AM.
Reply With Quote
  #7  
Unread 05-24-2007, 06:57 AM
gm9 gm9 is offline
gm10-1
Premium Member
EQ2Interface Super Mod
Featured
 
Join Date: Feb 2006
Posts: 6,479
Default

Quote:
Originally Posted by Othesus View Post
So you would think that putting the script into the level "Info" text object would work. It works for every case except for tabbing from NPC to NPC or between NPCs and Shiny/Harvestables. In that case the health and power bars pop up. Grrr.
That's what I thought I remembered about that actually and why I did not use it. Glad I'm not the only one that goes "Grrr" on this one.

Maybe putting it on another object that receives DD or even triggering it from another window (player window?) works. Have fun finding the solution - I hope you do. I thought you didn't even use ProfitUI btw?
__________________
P R O F I T U I ∙ R E B O R N [Auto-Updater] | [Portal] | [F.A.Q.] | [Support Forums]
~ Retired ~
If it does not work, you likely installed it incorrectly. Always try a clean install before reporting bugs.
Reply With Quote
  #8  
Unread 05-24-2007, 11:59 AM
Othesus's Avatar
Othesus Othesus is offline
A Griffon
This person is a EQ2Map developer.
Interface Author - Click to view interfaces
 
Join Date: Mar 2005
Server: Lucan DLere
Posts: 847
Default

I think I have this almost figured out. I decided to build all the scripts from scratch into some hidden buttons that have master control over everything else. Putting scripts into different objects and having them fight and interact in strange ways was just too complicated.

I mostly use the default interface with some of my own pieces and a few downloaded from eq2interface. I keep Profit and Fetish folders for reference though. A lot of times I'll try to find an example of some kind of script or syntax and I can't find it in the forums so I'll look through them for an example.

I actually like fixing bugs and things. It's frustrating sometimes but it's more challenging than playing the game.
Reply With Quote
  #9  
Unread 05-24-2007, 12:14 PM
gm9 gm9 is offline
gm10-1
Premium Member
EQ2Interface Super Mod
Featured
 
Join Date: Feb 2006
Posts: 6,479
Default

Quote:
Originally Posted by Othesus View Post
I actually like fixing bugs and things. It's frustrating sometimes but it's more challenging than playing the game.
QFE. That's probably why many if not most of us do this.
__________________
P R O F I T U I ∙ R E B O R N [Auto-Updater] | [Portal] | [F.A.Q.] | [Support Forums]
~ Retired ~
If it does not work, you likely installed it incorrectly. Always try a clean install before reporting bugs.
Reply With Quote
  #10  
Unread 05-24-2007, 09:06 PM
Othesus's Avatar
Othesus Othesus is offline
A Griffon
This person is a EQ2Map developer.
Interface Author - Click to view interfaces
 
Join Date: Mar 2005
Server: Lucan DLere
Posts: 847
Default

Whew! After a few more hours of testing and debugging I think this window works.

The script buttons control the visibility of all the window parts, so there isn't any funky size changing scripts. The real trick was figuring out which objects should trigger the buttons since the game client shows and hides a lot of parts by itself. It turned out that the buttons need to be triggered from the "Info" level text object and the v0/v1 pages.

The InfoTestButton makes each part visible depending on the "Info" level text and triggers the ShineyTestButton if necessary. The ShineyTestButton checks if the Name is ? or ! and makes the Name2 font really big if it is.

<Button Name="InfoTestButton" OnActivate="Parent.Health.Visible=Parent.Info.Visible
Parent.Power.Visible=Parent.Info.Visible
Parent.Name.Visible=Parent.Info.Visible
Parent.Parent.Common.Name2.Visible='!'Parent.Info.Visible
Parent.ShineyTestButton.Activated='!'Parent.Info.Visible
Activated=False" Visible="False"/>
<Button Name="ShineyTestButton" OnActivate="QuestionText = (Parent.Name.Text == '?')
ExclamationText = (Parent.Name.Text == '!')
ShineyCOND = QuestionText || ExclamationText
Parent.Parent.Common.Name2.Font = ShineyCOND ? '/Fonts.FontKabosGyula30' : '/Profit.Fonts.Font20'
Activated=False" Visible="False"/>

I only got to test this target window against the sparring partners in Hate's Envy and in that area. If anyone else can, please test it out in other situations.
Attached Files
File Type: zip Othesus tries Profit eq2ui_mainhud_target.zip (2.9 KB, 341 views)

Last edited by Othesus : 05-26-2007 at 12:01 AM.
Reply With Quote
  #11  
Unread 07-08-2007, 08:19 AM
gm9 gm9 is offline
gm10-1
Premium Member
EQ2Interface Super Mod
Featured
 
Join Date: Feb 2006
Posts: 6,479
Default

Finally got to test this, also with sparring partners. Interesting implementation. It doesn't appear to update automatically, but works fine each time you enter attack stance (alas not when you exit attack stance). I suppose that's good enough. Going to use this. Thanks.
__________________
P R O F I T U I ∙ R E B O R N [Auto-Updater] | [Portal] | [F.A.Q.] | [Support Forums]
~ Retired ~
If it does not work, you likely installed it incorrectly. Always try a clean install before reporting bugs.
Reply With Quote
  #12  
Unread 07-10-2007, 07:16 AM
Othesus's Avatar
Othesus Othesus is offline
A Griffon
This person is a EQ2Map developer.
Interface Author - Click to view interfaces
 
Join Date: Mar 2005
Server: Lucan DLere
Posts: 847
Default

Quote:
Originally Posted by gm9 View Post
Finally got to test this, also with sparring partners. Interesting implementation. It doesn't appear to update automatically, but works fine each time you enter attack stance (alas not when you exit attack stance). I suppose that's good enough. Going to use this. Thanks.
Which situation does the target not change? (You mean it works from NPC -> attackable but not from attackable -> NPC? I think there might be a delay of a second or two... I forget now.) The good thing about putting the master control into two buttons is that they can be triggered from any other object and they don't have any funny side effects. I ended up triggering them from three places but they could be triggered from anywhere else too.

Last edited by Othesus : 07-10-2007 at 07:29 AM.
Reply With Quote
Reply



Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Forum Jump


All times are GMT -5. The time now is 09:44 PM.


Our Network
EQInterface | EQ2Interface | WoWInterface | LoTROInterface | ESOUI | MMOUI