Frostorm

[]D[][]V[][]D
Veteran
Joined
Feb 22, 2016
Messages
2,283
Reaction score
1,920
First Language
English
Primarily Uses
RMMV
@Eliaquim Awesome! Regarding the SKILL ID, I'm thinking it's got to do w/ treeObj.iconId()...
@SomeFire Given the code above, would you have any insight into this?

Thanks a bunch btw! I wasn't expecting a solution so quickly. :kaothx:
 

Eliaquim

Hakuen Studio
Veteran
Joined
May 22, 2018
Messages
2,287
Reaction score
1,781
First Language
Portuguese - Br
Primarily Uses
RMMZ
@Eliaquim Awesome! Regarding the SKILL ID, I'm thinking it's got to do w/ treeObj.iconId()...
@SomeFire Given the code above, would you have any insight into this?

Thanks a bunch btw! I wasn't expecting a solution so quickly. :kaothx:
I think the treeObj.iconId() refers to the icon id that it will draw.
I could find a skill id that is using this icon in code. But that can lead to other problems if you have skills with the same icon id, or event if the treeObj.iconId() does not refer to the skill Icon id, and instead, just an icon id for visual purposes on the tree system.
So I guess is best to wait an answer from the author ^^
 

Frostorm

[]D[][]V[][]D
Veteran
Joined
Feb 22, 2016
Messages
2,283
Reaction score
1,920
First Language
English
Primarily Uses
RMMV
Oh right, duh...iconId refers to the icon sheet. lol:kaoswt:
 

ATT_Turan

Forewarner of the Black Wind
Veteran
Joined
Jul 2, 2014
Messages
2,734
Reaction score
1,605
First Language
English
Primarily Uses
RMMV
The problem was that I did not find a way(or didn't understand how) to get the skill Id that was currently being drawn. The code above will work if we just found a way to know this.
So it's in Skills_Window.prototype.drawItem starting on line 767 (772 draws the icon). Reading through the Skill class in the config file, it looks like you should be able to do $dataSkills[treeObj.lvls[index]].id
SomeFire Given the code above, would you have any insight into this?
It seems odd that you would ask - he wrote a random post saying "Maybe you can do this but maybe you can't, and I can't help." What makes you think he would have any insight? :guffaw: (I really don't mean this to be mean, but it was a strange post that didn't seem to say anything except "I don't know")
edit: I see looking back that he's the original freaking author, so obviously he would know how to identify the skill ID...
 
Last edited:

Frostorm

[]D[][]V[][]D
Veteran
Joined
Feb 22, 2016
Messages
2,283
Reaction score
1,920
First Language
English
Primarily Uses
RMMV
It seems odd that you would ask - he wrote a random post saying "Maybe you can do this but maybe you can't, and I can't help." What makes you think he would have any insight? :guffaw: (I really don't mean this to be mean, but it was a strange post that didn't seem to say anything except "I don't know")
Well, that was in response to a proposed filter or overlay of some sort. This is an entirely different approach via a separate png file. But anyway, I'll try what you suggested, thx!

Edit: Bummer...tho I'm sure we're on the right track!
1634257624656.png
 

Frostorm

[]D[][]V[][]D
Veteran
Joined
Feb 22, 2016
Messages
2,283
Reaction score
1,920
First Language
English
Primarily Uses
RMMV
@ATT_Turan
JavaScript:
    if(this._actor.isLearnedSkill($dataSkills[treeObj.lvls[index]].id)){
        this.drawIcon(treeObj.iconId(), x, y);
    }else{
        this.drawIconGray(treeObj.iconId(), x, y)
    }
Did I do it wrong?...
 

Frostorm

[]D[][]V[][]D
Veteran
Joined
Feb 22, 2016
Messages
2,283
Reaction score
1,920
First Language
English
Primarily Uses
RMMV
1634260837575.png

That did it, thanks!:kaojoy:

Edit: Hmm, now that I'm playing around w/ it...I think it would look/feel even better if instead of "if skill x is learned", the condition should be "if skill x is learnable". Something like:
if (skill.isAvailableToLearn(this._actor, this._tree))

Edit2: Of course it didn't work lol, oh wells. XD

Edit3: Solution! if (this._tree.skills[index].isAvailableToLearn(this._actor, this._tree)) {

Edit4: Ooh, I actually need to combine both conditions to get it how I want. Like so...
JavaScript:
    if (this._tree.skills[index].isAvailableToLearn(this._actor, this._tree) || this._actor.isLearnedSkill($dataSkills[treeObj.lvls[0]].id)) {
        this.drawIcon(treeObj.iconId(), x, y);
    } else {
        this.drawIconGray(treeObj.iconId(), x, y)
    }
 
Last edited:

Eliaquim

Hakuen Studio
Veteran
Joined
May 22, 2018
Messages
2,287
Reaction score
1,781
First Language
Portuguese - Br
Primarily Uses
RMMZ
View attachment 203883

That did it, thanks!:kaojoy:

Edit: Hmm, now that I'm playing around w/ it...I think it would look/feel even better if instead of "if skill x is learned", the condition should be "if skill x is learnable". Something like:
if (skill.isAvailableToLearn(this._actor, this._tree))

Edit2: Of course it didn't work lol, oh wells. XD

Edit3: Solution! if (this._tree.skills[index].isAvailableToLearn(this._actor, this._tree)) {

Edit4: Ooh, I actually need to combine both conditions to get it how I want. Like so...
JavaScript:
    if (this._tree.skills[index].isAvailableToLearn(this._actor, this._tree) || this._actor.isLearnedSkill($dataSkills[treeObj.lvls[0]].id)) {
        this.drawIcon(treeObj.iconId(), x, y);
    } else {
        this.drawIconGray(treeObj.iconId(), x, y)
    }
Nice you got it working!! :D

Have fun!!!
 

SomeFire

Veteran
Veteran
Joined
May 27, 2016
Messages
128
Reaction score
137
First Language
Russian
Primarily Uses
Wow, incredible discussion in this thread! Good job guys!

The only thing I can suggest is
Code:
    if (treeObj.isEnabled(this._actor, this._tree)) {
        this.drawIcon(treeObj.iconId(), x, y);
    } else {
        this.drawIconGray(treeObj.iconId(), x, y)
    }
Thus, an unfinished skill will not be grayed out if the actor does not have enough job points to learn skill. On the screenshot you can see bright 1/5, but 2/5 will be gray with 0 JP.

Also, changePaintOpacity code is redundant in this way. I used opacity to differ available skills from unavailable, but you do it by coloring.
 

Hunters12

Villager
Member
Joined
Jun 30, 2014
Messages
14
Reaction score
5
First Language
English
Primarily Uses
Any idea how to change opacity to 0 or make transparent for Scene_SkillTrees only ?
its seem Scene_SkillTrees and Scene_Menu combine together.

1636596843308.png
When I change opacity for Scene_Menu it work, but it make Scene_Menu become transparent

1636597437669.png

Already try using SRD plugins, but still the opacity not changed
1636597553800.png
 

SomeFire

Veteran
Veteran
Joined
May 27, 2016
Messages
128
Reaction score
137
First Language
Russian
Primarily Uses
its seem Scene_SkillTrees and Scene_Menu combine together.
Bug.

In SkillTreesSystem.js replace
Code:
Scene_SkillTrees.prototype.constructor = Scene_Menu;
by
Code:
Scene_SkillTrees.prototype.constructor = Scene_SkillTrees;
It will solve your issue.
 

FirestormNeos

Veteran
Veteran
Joined
Jul 23, 2019
Messages
217
Reaction score
176
First Language
English
Primarily Uses
RMMV
Dunno if this has already been asked, but is there a way to have multiple squares affecting different parts of the same skill?

Basically, something like this?
1637392750345.png

(preferably without using a yanfly plugin?)
 
Last edited:

SomeFire

Veteran
Veteran
Joined
May 27, 2016
Messages
128
Reaction score
137
First Language
Russian
Primarily Uses
No, there is noithing similar in my plugin. The current logic: when the skill level increases, the previous database skill is removed and a new one is given.

The easiest way to implement such behaviour is to make "Fortify" depending on game variables. Change game variables in skill upgrades. To change them use OnLearnChangeVariable as OnLearnActions like in example:
Code:
guard2 = skill('guard2', [2], [
    [cost(1), switchReq(1)], // Requires switch 1 to be true.
], [
    [changeVar(1, 2)] // On learn action, which increase the game variable 1 by 2.
]);
 

DestroyDX

Guy trying his best
Veteran
Joined
Aug 18, 2020
Messages
40
Reaction score
8
First Language
English
Primarily Uses
RMMV
Hey is it possible to customize this plugin with luna engine
 

Seykken

Pixel Artist & Absurdist
Member
Joined
Nov 4, 2015
Messages
7
Reaction score
1
First Language
Portuguese
Primarily Uses
RMMV
Hello SomeFire!
I don't remember if it was asked before (i was away from creating for some time), but how do i remove skill points from one class's tree?
I tried the following: "actor.addTreesPoints(-10, 11);", but this command didn't do anything....
I am doing something wrong?
 

SomeFire

Veteran
Veteran
Joined
May 27, 2016
Messages
128
Reaction score
137
First Language
Russian
Primarily Uses
Hey is it possible to customize this plugin with luna engine
I think no. I don't know how luna engine works.

Hello SomeFire!
I don't remember if it was asked before (i was away from creating for some time), but how do i remove skill points from one class's tree?
I tried the following: "actor.addTreesPoints(-10, 11);", but this command didn't do anything....
I am doing something wrong?
11 is a class number? You should use treeId (symbol) instead of class number.
 

gambitben

Veteran
Veteran
Joined
Jun 8, 2013
Messages
170
Reaction score
132
First Language
Spanish English
Primarily Uses
RMMV
Hey, does reseting a skill tree reset the variables back to 0?
 
Last edited:

SomeFire

Veteran
Veteran
Joined
May 27, 2016
Messages
128
Reaction score
137
First Language
Russian
Primarily Uses
Hey, does reseting a skill tree reset the variables back to 0?
No, it works only for points in "Cost" requirement.
If you want to implement it, you can do it in SkillTreesSystem.js
Code:
SkillTreesSystem.resetSkillTree = function(actor, tree) {
like points
Code:
if (req.type === "points")
    points += req.price;
 

Latest Threads

Latest Posts

Latest Profile Posts

Question for the Mods: What am I supposed to do when I can't make a synopsis 350 words long? (for project recruitment thread) @Shaz @mlogan
The game is meant to be more on the simple side in order to be achievable so I'm a bit stuck...
Had a nice visit with our family. Dad grilled some burgers and mom made baked beans and fudge. We also watched Foul Play. Chevy Chase and Goldie Hawn make an awesome duo. I am surprised how much of the movie I forgot LOL. How did everyone else's holidays go?
Got a windowskin working nicely to go with Mog's menu plugins.
p8BE5bj.png

tsD4gZS.png

nwpeK84.png
Just getting started on RPG maker and having a blast!
I am once again escalating in the kitchen. I might or might not be 4 types of cookies into baking and not finished...

Forum statistics

Threads
117,039
Messages
1,104,033
Members
152,971
Latest member
Shallow
Top