PDA

View Full Version : Doctor Who


Kevlyn
March 4th, 2013, 02:51 PM
While waiting for some email confirmations I thought I'd expand my understanding of the system, to see how well I'm adapting to this scripting language. I've come across a situation where I have traits that have different power levels the players can choose from.

For instance, the traits are rated at Minor, Major, and Special. Each has a different cost. My plan it to drop User.Major, User.Minor or User.Special tag groups on each ability. But there are a few of these that the player chooses a level to purchase the trait at.

Can I use a chooser to allow for the selection of a level, then apply the tag to the trait after its strapped onto the hero? Or would the answer be to create two separate traits, one for each power level?

Any advice here would be great!!

Mathias
March 4th, 2013, 03:09 PM
if (field[trtPowLev].value = 0) then
perform assign[User.Minor]
elseif (field[trtPowLev].value = 1) then
perform assign[User.Major]
elseif (field[trtPowLev].value = 2) then
perform assign[User.Special]
endif


Here's the link to the relevant page of the wiki that discusses the portal type you'll use to offer that selection to the user:
http://hlkitwiki.wolflair.com/index.php5/MenuLiteral_Element_(Data)

Kevlyn
March 5th, 2013, 08:22 AM
There's no content on that wiki page.

Mathias
March 5th, 2013, 08:39 AM
Sorry, I forgot about that annoying property of this board - if html text that you paste in ends in a ), that ) won't be auto-recognized as a part of the link, and there's no way to force it that I've found, and most of the specific page links in the authoring kit wiki end in parentheses.

Start here:
http://hlkitwiki.wolflair.com/index.php5/Data_File_Reference

Then click "portal", and then "menu_literal". That'll take you to the page I tried to link to.

Mathias
March 5th, 2013, 08:45 AM
Oh, yeah, and I'd recommend creating a new tag group for this:

TraitLevel.Minor0
TraitLevel.Major1
TraitLevel.Special2

That way, you can check for tagis[TraitLevel.?] and since the numbers are there, you can use tagvalue[TraitLevel.?] to return the number 0, 1, or 2, depending on the level. Might be useful at some point in order to get a quick reference to that information.

TCArknight
March 25th, 2013, 11:59 AM
I've been working on this myself too, and decided to add a TraitType.? Tag where I use the cost at the end of Minor, Major or Special. However, I had to define several TraitType.Special tags as there are traits with a cost from 0 to 6 that I've come across. I did the same with StoryPoint costs.

One thing I haven't come across is where to put a Hide.<tab name> tag if I didn't want to display it at the beginning. I figure if I have an ability that needs a tab, I can delete the Hide tag... Any suggestions? I see this as being needed for Gadgets and for more advanced Time Lords using the methods in the Time Traveller's companion especially.

TC

Mathias
March 25th, 2013, 12:17 PM
TCArknight, please clarify your post - I can't tell what question about Hide tags you're trying to ask.

TCArknight
March 25th, 2013, 12:21 PM
Sorry.

I only want the Gadget tab to appear if the character has a particular trait. I know by default, all the tab_x.dat files in the game system appear automatically. However, I seem to recall that (for a tab named Gadget) adding the Hide.Gadget tag to somewhere will keep it from appearing until the tag is deleted.

Am I misremembering?

Mathias
March 25th, 2013, 01:09 PM
In the <panel/> part of the definition of that tab, what <live> expression did you give to that panel?

TCArknight
March 25th, 2013, 01:42 PM
I gave it <live>!HideTab.gadget</live>

Removed the ! from it and it's hidden.... Npow, how do I unhide it? I'm missing how to replace the tag from a hero

Mathias
March 25th, 2013, 01:50 PM
Keep the ! there.

Add a script to actor.str that will assign that tag to all characters:

perform hero.assign[HideTab.gadget]

Then, your ability will have its own script that deletes that tag for this specific character (of course this script needs to come after the one in actor.str):


perform hero.delete[HideTab.gadget]

TCArknight
March 25th, 2013, 02:05 PM
That did it. :) Thank you very much!