View Single Post
  #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