Member
Join Date: Feb 2011
Posts: 37
|
Well I change all the tab race to behave as per 4e tab race.
I don it, but I need to change the "Add Language" menu to a "Add Origin Skills" one. I change the "setup" of the portal, the "showtemplate", fields and tags related. I make it work but the menu do not work instead displays the list of skills (with an scroll bar) and clicking the menu "Add Origin Skill" (look on the image) pops up a window: "Nothing to chose from" http://flickr.com/gp/50870840@N06/21mXNQ Here is the original portal and template: Code:
<portal id="raLangs" style="tblNormal"> <table_dynamic component="Language" showtemplate="LangPick" choosetemplate="SimpleItem" showfixedlast="yes" addpick="resLangSta" alwaysupdate="yes"> <list><![CDATA[ !thing.user_added & !Hide.Language ]]></list> <candidate>TRUE</candidate> <autotag group="Helper" tag="StartLang"/> <titlebar><![CDATA[ @text = "Add a Language - " & hero.child[resLangSta].field[resSummary].text ]]></titlebar> <description/> <headertitle><![CDATA[ @text = "Languages: " & hero.child[resLangSta].field[resSummary].text ]]></headertitle> <additem><![CDATA[ ~set the color based on whether the proper number of slots are allocated if (field[resLeft].value = 0) then @text = "{text a0a0a0}" elseif (field[resLeft].value < 0) then @text = "{text ff0000}" endif @text &= "Add New Language" ]]></additem> </table_dynamic> </portal> <!-- LangItem template --> <template id="LangPick" name="Language Pick" compset="Language" marginhorz="3" marginvert="2"> <portal id="name" style="lblNormal" showinvalid="yes"> <label field="thingname"> </label> </portal> <portal id="username" style="editNormal"> <edit field="UserName" maxlength="100"> </edit> </portal> <portal id="info" style="actInfo"> <action action="info"> </action> <mouseinfo/> </portal> <portal id="delete" style="actDelete" tiptext="Click to delete this item"> <action action="delete"> </action> </portal> <portal id="chkliter" style="chkSmall"> <checkbox field="lnLiterate" message="{/b}{text d0d0d0}Literate in Language?"> </checkbox> </portal> <position><![CDATA[ ~set up our height based on our tallest portal height = portal[info].height if (hero.tagis[source.OptLit?] <> 0) then height += portal[chkliter].height + 6 else portal[chkliter].visible = 0 endif ~if this is a "sizing" calculation, we're done doneif (issizing <> 0) ~position our tallest portal at the top portal[info].top = 0 ~center the other portals vertically perform portal[name].centeron[vert,info] perform portal[username].centeron[vert,info] perform portal[delete].centeron[vert,info] ~position the delete portal on the far right perform portal[delete].alignedge[right,0] ~position the info portal to the left of the delete button perform portal[info].alignrel[rtol,delete,-8] ~position our literacy checkbox at the bottom perform portal[chkliter].alignedge[bottom,-2] perform portal[chkliter].centerhorz var edge as number edge = portal[info].left - 5 ~position the name on the left and let it use all available space portal[name].left = 0 portal[name].width = minimum(portal[name].width,edge) ~if this is a "custom" item pick, show an edit portal instead of the name if (tagis[Helper.CustomItem] <> 0) then portal[name].visible = 0 portal[username].left = portal[name].left var limit as number limit = portal[info].left - portal[username].left - 5 portal[username].width = minimum(200,limit) else portal[username].visible = 0 endif ~if this is an auto-added pick, change its font to indicate that fact if (ispick + !candelete >= 2) then perform portal[name].setstyle[lblAuto] endif ]]></position> </template> Code:
<portal id="raLangs" style="tblNormal"> <table_dynamic component="Skill" showtemplate="OriginPick" choosetemplate="SimpleItem" showfixedlast="yes" addpick="resOrSkill" alwaysupdate="yes"> <list><![CDATA[ !thing.user_added & !Hide.Skill ]]></list> <candidate>TRUE</candidate> <autotag group="Helper" tag="OrSkill"/> <titlebar><![CDATA[ @text = "Add origin skill - " & hero.child[resOrSkill].field[resSummary].text ]]></titlebar> <description/> <headertitle><![CDATA[ @text = "Skills: " & hero.child[resOrSkill].field[resSummary].text ]]></headertitle> <additem><![CDATA[ ~set the color based on whether the proper number of slots are allocated if (field[resLeft].value = 0) then @text = "{text a0a0a0}" elseif (field[resLeft].value < 0) then @text = "{text ff0000}" endif @text &= "Add Origin Skill" ]]></additem> </table_dynamic> </portal> <template id="OriginPick" name="Origin Skills Pick" compset="Skill" marginhorz="3" marginvert="2"> <portal id="name" style="lblNormal" showinvalid="yes"> <label field="thingname"> </label> </portal> <portal id="info" style="actInfo"> <action action="info"> </action> <mouseinfo/> </portal> <portal id="delete" style="actDelete" tiptext="Click to delete this item"> <action action="delete"> </action> </portal> <position><![CDATA[ ~set up our height based on our tallest portal height = portal[info].height ~if this is a "sizing" calculation, we're done ~doneif (issizing <> 0) ~position our tallest portal at the top portal[info].top = 0 ~center the other portals vertically perform portal[name].centeron[vert,info] perform portal[delete].centeron[vert,info] ~position the delete portal on the far right perform portal[delete].alignedge[right,0] ~position the info portal to the left of the delete button perform portal[info].alignrel[rtol,delete,-8] var edge as number edge = portal[info].left - 5 ~position the name on the left and let it use all available space portal[name].left = 0 portal[name].width = minimum(portal[name].width,edge) ]]></position> </template> Last edited by royalfa; January 9th, 2012 at 07:11 PM. Reason: Don't show the image |
#1 |
Member
Join Date: Feb 2011
Posts: 37
|
I test the portal changing the fields.
I discovered that the troubles is the component:Skill itself. Testing this structure with component:Language runs fine. I spend the last hour trying to "re do" the skill component with out any luck. (Still don't quite understand the "tags" system in the way that "where I put a tag, who has the tag and how to really use it...All then...) When all the things I try fail I create a new portal and a new template (based in Savage World) to try to get around this. With out success because, again, the troubles is the component:Skill not the portal or the template. I'm thinking now in create a new component named OriginSk or something like this based in the component: Language to get around this trouble. But don't know if this is an "elegant" solution because I already has the skill component!! The idea is this: All the characters can select 2 skill at creation (origin skills) and spend ranks in this even if non of his class grant them. The characters in general ONLY can purchase ranks in origin and class skills (no 1/2 rank all other are restricted). This is why I'm trying to do this menu in race tab. |
#2 |
Member
Join Date: Feb 2011
Posts: 37
|
Finally I can choose the origin skills, but not in the way I think at first.
Instead I add 2 "thing" in thing_race: Quote:
But the hero has now the 2 selected skills as Origin Skills: OrSkill1 and OrSkill2 I check all the tags the hero has and he has all tag skill auto... As I said before the only skills that the hero can spend ranks are the origin and the class skills, moreover I only want the tab skill and the sheet shows the skills with ranks (some skills are linked to other skill and can have ranks besides not an origin/class skill). How I do that?? lol. Good day. |
|
#3 |
Member
Join Date: Feb 2011
Posts: 37
|
Ok I resolve the origin Skills "boostraping" the features to each race but then the hero has the tag "HasFeature.OrSkill1" and "HasFeature.OrSkill1" and this don't find the OrSkill.? tag neither Helper.OrSkill tag.
Because of the above trouble I try again to make a chose menu for this skills. (and this way don't need to boostrap the above features on each race) But again don't "pops up the chooser window": Here is the code I use: PORTAL: Code:
<portal id="OrSkills" style="tblNormal"> <table_dynamic component="Skill" showtemplate="OrSkPick" choosetemplate="SimpleItem" showfixedlast="yes" addpick="resOrSkill" alwaysupdate="yes"> <list><![CDATA[ Helper.OrSkill ]]></list> <candidate>component.Skill</candidate> <autotag group="Helper" tag="OrSkill"/> <titlebar><![CDATA[ @text = "Add 2 Skills - " & hero.child[resOrSkill].field[resSummary].text ]]></titlebar> <description/> <headertitle><![CDATA[ @text = "Languages: " & hero.child[resOrSkill].field[resSummary].text ]]></headertitle> <additem><![CDATA[ ~set the color based on whether the proper number of slots are allocated if (field[resLeft].value = 0) then @text = "{text a0a0a0}" elseif (field[resLeft].value < 0) then @text = "{text ff0000}" endif @text &= "Add New Skill" ]]></additem> </table_dynamic> </portal> Code:
<!-- OrSkPick template --> <template id="OrSkPick" name="Origins Skill Picks" compset="Skill" marginhorz="3" marginvert="2"> <portal id="name" style="lblNormal" showinvalid="yes"> <label field="thingname"> </label> </portal> <portal id="info" style="actInfo"> <action action="info"> </action> <mouseinfo/> </portal> <portal id="delete" style="actDelete" tiptext="Click to delete this item"> <action action="delete"> </action> </portal> <position><![CDATA[ ~set up our height based on our tallest portal height = portal[info].height ~if this is a "sizing" calculation, we're done doneif (issizing <> 0) ~position our tallest portal at the top portal[info].top = 0 ~center the other portals vertically perform portal[name].centeron[vert,info] perform portal[delete].centeron[vert,info] ~position the delete portal on the far right perform portal[delete].alignedge[right,0] ~position the info portal to the left of the delete button perform portal[info].alignrel[rtol,delete,-8] var edge as number edge = portal[info].left - 5 ~position the name on the left and let it use all available space portal[name].left = 0 portal[name].width = minimum(portal[name].width,edge) ~if this is an auto-added pick, change its font to indicate that fact if (ispick + !candelete >= 2) then perform portal[name].setstyle[lblAuto] endif ]]></position> </template> I understand (finally) why HL display at first all the skills: Code:
<list><![CDATA[ !thing.user_added & !Hide.Skill ]]></list> Code:
<list><![CDATA[ Helper.OrSkill]]></list> But when I press the "Add New Skill" chooser HL keeps saying NOTHING TO CHOSE FROM! I read that the <Candidate> looks this and I change the value from TRUE to component.Skill and try Skill.? and !Hide.Skill expressions without any luck or change. Please help me figure it out why don't show the chose window. Thanks |
#4 |
Member
Join Date: Feb 2011
Posts: 37
|
0k
I change the way PCs will select his 2 skills at the start: I delete this pick from the race tab and create a new skills tab to do this. Using the code in the wiki to make the skill tab for savage I adjust this to the game then HL again send me the window "Nothing to chose from". For the first time I check every aspect of this: tab and component and discover that the compset I have was defined as <comref component="derived"> instead of <comref component="CanAdvance"> The first because I take it from the 4e definition and this one from the savage source. Whit that change I can select now the 2 origin skills. For the moment I need to focus on the defenses and the Wounds trait then Class; later I will get back with skills to "link" the skill points from class to this panel and do some more things ** Define the max ranks a PC can put on each skill as LEVEL + 3 ** Modify the max ranks a PC can put on an "Enlighted" skill: LEVEL + 5 ** Show on this tab the Class Skills ** Show on summary tab all the skills with ranks (some skills can have ranks because features or feats but can't be purchased in the skill tab) Last edited by royalfa; January 25th, 2012 at 04:54 AM. |
#5 |
|
|