EQ2Interface

EQ2Interface (https://www.eq2interface.com/forums/index.php)
-   UI Developer Discussion (https://www.eq2interface.com/forums/forumdisplay.php?f=3)
-   -   Highlighting selected group member. (https://www.eq2interface.com/forums/showthread.php?t=2998)

Profit 05-18-2005 06:19 AM

Highlighting selected group member.
 
As a healer I find it hard to see in the middle of battle who I have selected. and I don't really like all the arrows and glows.

So, what I've done is when I click on group members from the group window, the selected member's name increases in font size and the other members font size returns to normal.

Now this works fine, and now it's easy to spot which member I have selected, however... this will not work if I use the F Keys, I have tried OnActivate etc. but no joy.

Any ideas how I can achieve this?

dc_roenfanz 05-18-2005 10:26 AM

Quote:

Originally Posted by Profit
As a healer I find it hard to see in the middle of battle who I have selected. and I don't really like all the arrows and glows.

So, what I've done is when I click on group members from the group window, the selected member's name increases in font size and the other members font size returns to normal.

Now this works fine, and now it's easy to spot which member I have selected, however... this will not work if I use the F Keys, I have tried OnActivate etc. but no joy.

Any ideas how I can achieve this?

What about OnSelect and OnDeselect (OnUnselect) not sure if they are there but worth a shot.

and remember you hafta have an un-event too. IE Make sure your using Activate and Deactivate .. would be nice to see th exact code you have posted

Deathbane27 05-19-2005 12:36 AM

Hmm...

OnShow event for the Target window. Triggers "if statement" events that compare the target's name to each groupmember name. If there's a match, it could change the font or color on the name in the group window.

Profit 05-19-2005 01:29 AM

Yes, this sort of solution seems to be the only way.

Profit 05-19-2005 02:47 AM

Ok, I've tried the Targets' OnShow, OnActivate etc and none of them trigger events between switching targets.

Was a good idea.

Deathbane27 05-19-2005 03:00 AM

Edit:

Bah, forgot the OnShow event doesn't trigger if you already have a target. Need to include visible=false in the OnShow script. Should force it to trigger each time you target anything.

Going to try something that won't involve the target window at all, just make use of its dynamicdata. I'll need someone else to see if it works, though.

Deathbane27 05-19-2005 03:17 AM

1 Attachment(s)
Okay, test Groupmembers window. The number below the LFG buttons should increase by 1 every time you target something or change targets.

Need someone to test and tell me whether it:

- Doesn't work at all
- Increases only when targetting something when you don't currently have a target, or
- Increases with every target change.

Profit 05-19-2005 04:49 AM

Thanks for helping :)

Ok, basicially the number only increases if you target something when the target window is not shown. i.e you press escape or target something that removes the window.

Switching between different targets does not increase the number.

Pressing ALT+T to hide/show the window does not increase the number either.

Deathbane27 05-19-2005 05:29 AM

1 Attachment(s)
Okay, try this one. Should increase by 7 when acquiring a target, and increase anywhere from 0 to 7 (hopefully not 0) when switching targets. Let me know if/how much it does in each case.

Profit 05-19-2005 05:46 AM

Great work :)

Target with Target Window Hidden =+7
New Target with Target Window Shown =+6

Have to work out what you did now...

And try these if statements.

Profit 05-19-2005 05:48 AM

Ok, so looks like Name and HealthPage are being triggered every target change :)

Deathbane27 05-19-2005 05:59 AM

Excellent. I'll code the if statement scripting, then you'll just need to change the script to do what you want (change the name font, toggle the visiblity of a green frame, whatever) and copy it a few times.

Profit 05-19-2005 06:10 AM

Thanks DB :)

I'm looking at the If statements now, but really need an example to continue.

Putting it simply, I am looking for something like:

If Target.Name = GroupMember1.Name
GroupMember1.Fkey.TextColor=#FF0000
Else If Target.Name = GroupMember2.Name
GroupMember2.Fkey.TextColor=#FF0000
.....
...
..
End If

Will also have to code resetting all the other group members back to original color.

Deathbane27 05-19-2005 06:17 AM

1 Attachment(s)
Okay, here it is.

Leave the main Name alone. It handles the target change event and all the if statements.

In GroupMember1.MemberInfoPage is a Button object named Trigger. Change Trigger's OnActivate event to what you want to happen when the groupmember is targetted, and OnDeActivate to what you want to happen when not targetted. Right now it's a font change with a bigger font if the member is targetted.

Once you've got that how you want it, just copy the Trigger object into each MemberInfoPage.

If it works in UIBuilder (test by selecting the main Name object, changing the name to/from GroupMember, and clicking the visiblity toggle) but not in-game, some re-working might help.

If you need help on how to do what you want with the scripts, just ask.

Deathbane27 05-19-2005 06:23 AM

Quote:

Originally Posted by Profit
Thanks DB :)

I'm looking at the If statements now, but really need an example to continue.

For future reference, it's actually much simpler. :P

(Button_object).Activated=(X==Y)

(Button_object)'s OnActivate event triggers if X=Y. Otherwise, the OnDeActivate triggers. Just put the scripts into each event.

It's usually slightly more complicated than that (OnActivate won't trigger if Activated=true already), but in this case we don't need that since we want the change state to correspond directly to the true/false value at all times.

Profit 05-19-2005 07:37 AM

Great Work,

I've got it working, will need to test it in a group when I get home from work.

That's taught me a lot, thanks for your hard work :)

Laffs 05-19-2005 08:33 AM

Hey thats a damn good idea.. I got a little cleric type dude and me being a bit slow in the healing department by the time I had delt with aggro and and trying to heal..... Well to cut it short I didnt know what the hell I had targeted half the time lol..

Think I will stick this or some variation of it into my group window, If you guys dont mind that is :)

Profit 05-21-2005 05:49 AM

Managed to try this in a group, and it works perfectly, accept... when you cancel a target with the escape key...

Any idea how to overcome this?

Deathbane27 05-21-2005 05:55 AM

Hmm...

Try this:

-Make a copy of the Name object and name it Name2
-Remove the OnShow script.
-Set Visible to True
-Give it the following OnHide script:

Quote:

Parent.Name.Localtext=LongerThanLongestNamePoss
Parent.GroupMember1.MemberInfoPage.Trigger.Activated=((Parent.GroupMember1.Membe rInfoPage.Name.LocalText)==(LocalText))
Parent.GroupMember2.MemberInfoPage.Trigger.Activated=((Parent.GroupMember2.Membe rInfoPage.Name.LocalText)==(LocalText))
Parent.GroupMember3.MemberInfoPage.Trigger.Activated=((Parent.GroupMember3.Membe rInfoPage.Name.LocalText)==(LocalText))
Parent.GroupMember4.MemberInfoPage.Trigger.Activated=((Parent.GroupMember4.Membe rInfoPage.Name.LocalText)==(LocalText))
Parent.GroupMember5.MemberInfoPage.Trigger.Activated=((Parent.GroupMember5.Membe rInfoPage.Name.LocalText)==(LocalText))
visible=true
(Be sure to remove the space between .Membe and rInfoPage. Forum error.)

That should trigger the checking script (and make sure it's not retaining a text value of a groupmember's name) when you go from having a target to not having one.

Profit 05-21-2005 10:15 AM

Thanks once again DB, I've implemented that and will try it later today.

Profit 05-21-2005 03:09 PM

Afraid that didn't work - I will check the code when I leave this group, just in case.

Talyns 05-21-2005 04:04 PM

1 Attachment(s)
Try this one (Same as post #14 but) I added a page called LabelReseter that looks like this:

<Page DynamicData="/GameData.Target.Window" DynamicDataFilter="0001" Name="LabelReseter" OnHide="Parent.GroupMember1.MemberInfoPage.Trigger.Activated=false
Parent.GroupMember2.MemberInfoPage.Trigger.Activated=false
Parent.GroupMember3.MemberInfoPage.Trigger.Activated=false
Parent.GroupMember4.MemberInfoPage.Trigger.Activated=false
Parent.GroupMember5.MemberInfoPage.Trigger.Activated=false
" Visible="false"/>

Talyns 05-24-2005 02:46 AM

Is this working correctly now?

Profit 05-24-2005 03:16 AM

Yes, that fixed it, just remember to make this new page a size of 0,0 else none of the buttons/tooltips work.

Thanks

Talyns 05-24-2005 04:15 AM

Thank you.. This was an awesome Idea.. As a soloer/fighter I won't use it much but I'm sure my the other users of my UI will like it :)

Deathbane27 05-24-2005 11:03 PM

Excellent. Thanks for getting the target clearing working, Talyns. :)


All times are GMT -5. The time now is 12:11 PM.

vBulletin® - Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
© MMOUI