The following warnings occurred:
Warning [2] Use of undefined constant SAPI_NAME - assumed 'SAPI_NAME' (this will throw an Error in a future version of PHP) - Line: 3388 - File: inc/functions.php PHP 7.4.33-nmm7 (Linux)
File Line Function
/inc/functions.php 3388 errorHandler->error
/showthread.php 116 build_archive_link
Warning [2] Use of undefined constant IN_ARCHIVE - assumed 'IN_ARCHIVE' (this will throw an Error in a future version of PHP) - Line: 3331 - File: inc/functions.php PHP 7.4.33-nmm7 (Linux)
File Line Function
/inc/functions.php 3331 errorHandler->error
/inc/functions.php 3324 build_forum_breadcrumb
/showthread.php 195 build_forum_breadcrumb
Warning [2] Use of undefined constant IN_ARCHIVE - assumed 'IN_ARCHIVE' (this will throw an Error in a future version of PHP) - Line: 3331 - File: inc/functions.php PHP 7.4.33-nmm7 (Linux)
File Line Function
/inc/functions.php 3331 errorHandler->error
/showthread.php 195 build_forum_breadcrumb






Post Reply 
 
Thread Rating:
  • 0 Votes - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Alternative way to control a custom skilltree GUMP?
Author Message
Rayvolution
Journeyman
*

Posts: 135
Likes Given: 0
Likes Received: 2 in 2 posts
Joined: Jul 2012
Reputation: 1

Aetharia

Post: #4
RE: Alternative way to control a custom skilltree GUMP?
(09-16-2012 06:31 PM)Skul Wrote:  set a tag when you use @userskills to identify if you have opened the gump, here's an example considering that d_skill_list is the name of your gump:
Code:
on=@userskills
ctag.userskills=1 //set tag
dialogclose d_skill_list
dialog d_skill_list

on=@skillgain
if (<isonline>)
  if (<ctag0.userskills> == 01) // also tried without == 01
    dialogclose d_skill_list
    dialog d_skill_list
  endif
endif
and in your skill list dialog (assuming d_skill_list):
Code:
on=0
ctag.userskills= //erase tag

(09-16-2012 10:53 PM)Ben Wrote:  http://wiki.sphere.torfo.org/index.php/@UserSkills
I'm sure you will find what you are looking for here Smile

I already tried using @UserSkills. Sad

The problem is for some reason @UserSkills fires when your skill changes, I'd almost think this was a bug.

So, the only way to block it under @UserSkills is to tag the menu when it's opened/closed, the problem is, if you check to see if it's open/closed on @UserSkills it won't be able to open in the first place when you hit the Skills button. :/

Here's my original test-script modified with Skul's code:
Code:
ON=@UserSkills
ctag.userskills=1 //set tag
SRC.f_skillcolor
SRC.DIALOGCLOSE d_skill_tree
SRC.SDIALOG d_skill_tree <TAG0.SkillTreePage>
RETURN 1

ON=@SkillGain
if (<isonline>)
  if (<ctag0.userskills>)
    SRC.f_skillcolor
    SRC.DIALOGCLOSE d_skill_tree
    SRC.SDIALOG d_skill_tree <TAG0.SkillTreePage>
  endif
endif

It pretty much ends up working exactly like my original code, it'll open the skill menu when you gain/change skill because it's firing @UserSkills on skill changes for some reason.

Here's my original code, with no @SkillGain at all.
Code:
ON=@UserSkills
SRC.f_skillcolor
SRC.DIALOGCLOSE d_skill_tree
SRC.SDIALOG d_skill_tree <TAG0.SkillTreePage>
RETURN 1



EDIT:
Solved! Big Grin

Digging around in the Sphere Wiki I found a command I didn't know existed... (ISDIALOGOPEN) and with Bens nudge, I noticed <ARGN1> could be helpful. It solved my problem. Smile

Code:
ON=@UserSkills
IF <ARGN1> == -1 //If -1, this trigger fired without a skill being specificed (Skill button was pressed)
SRC.f_skillcolor
SRC.DIALOGCLOSE d_skill_tree
SRC.SDIALOG d_skill_tree <TAG0.SkillTreePage>
RETURN 1
ELSE
IF <ISDIALOGOPEN d_skill_tree> == 1> // If your skill gump is open, go ahead and allow the skillgain to trigger the gump to open/close so it'lll update.
SRC.f_skillcolor
SRC.DIALOGCLOSE d_skill_tree
SRC.SDIALOG d_skill_tree <TAG0.SkillTreePage>
RETURN 1
ENDIF
RETURN 1

Now, if no skills are specified when it fires (You hit the skill button) it'll open the dialog. Also, if the dialog IS already open, it'll close/open it if you do get a skill update.

If the dialog is closed, and you get a skill update, the pesky thing won't pop up at all.

Thanks guys. Wink

[Image: 4_Logo.png]
An MMORPG based on the Ultima Online engine.
Completely Custom Map, GUI, AI, Combat, Skills, Crafts, Art, Music and so much more.
http://aetharia.com - Home of Ambition!
(This post was last modified: 09-17-2012 12:58 AM by Rayvolution.)
09-17-2012 12:39 AM
Find all posts by this user Like Post Quote this message in a reply
Post Reply 


Messages In This Thread
RE: Alternative way to control a custom skilltree GUMP? - Rayvolution - 09-17-2012 12:39 AM

Forum Jump:


User(s) browsing this thread: 1 Guest(s)