Ok, so I'm sorry if this was already hidden somewhere, however I couldn't quite find what I'm looking for, so I hope someone can help me out :)
Now, as the title implies, I want to have Pokémon gain Experience through other means than fighting. The main goal, of course, is to increase their level, however I don't want to use the same mechanic as the Rarecandy does, because I want it to be more individual (1 level is always 1 level, but for instance 1.000 XP can be enough to gain 1 level or not or even several levels at once, depending on the Pokémon itself and it's current level).
I do know how to increase XP of Pokémon in general. What I do not know however is, how do I do it in such a way, that you actually see the experience increase and may act accordingly in case the Pokémon would (try to) learn a new move?
This question may be a little confusing, so let me break it down a little.
Let's assume a scenario where your Pokémon gets 1.000 XP. You gain those not through fighting, but in some other way.
Now, let's assume that your Pokémon is a Lv. 6 Clefairy which already knows 4 moves.
A Lv. 6 Clefairy gaining 1.000 XP would gain several levels, not just 1. So you will most likely end up above Lv. 10. Hence you could learn one or more new moves.
However, if I would simply give your Clefairy 1.000 XP by something like "p1.exp+=1000", you would just end up at the highest possible level and that's it. So this would work similar to the Pokémon Pension with no possibility to change the moveset to your liking.
How do I give out said XP, but have the game stop at every single Level Up and re-evaluate the moveset, so that you may let your Clefairy learn a new move? Can someone please enlighten me on that matter?
I did have look at "Gaining Experience" in the battle part of the script (as that is essentially what I'm looking for, but outside of the battle). However, I am not very proficient with scripting and it is quite a lot of text there, so it did not really help me that much :(
Thank you so much for your assistance!
Now, as the title implies, I want to have Pokémon gain Experience through other means than fighting. The main goal, of course, is to increase their level, however I don't want to use the same mechanic as the Rarecandy does, because I want it to be more individual (1 level is always 1 level, but for instance 1.000 XP can be enough to gain 1 level or not or even several levels at once, depending on the Pokémon itself and it's current level).
I do know how to increase XP of Pokémon in general. What I do not know however is, how do I do it in such a way, that you actually see the experience increase and may act accordingly in case the Pokémon would (try to) learn a new move?
This question may be a little confusing, so let me break it down a little.
Let's assume a scenario where your Pokémon gets 1.000 XP. You gain those not through fighting, but in some other way.
Now, let's assume that your Pokémon is a Lv. 6 Clefairy which already knows 4 moves.
A Lv. 6 Clefairy gaining 1.000 XP would gain several levels, not just 1. So you will most likely end up above Lv. 10. Hence you could learn one or more new moves.
However, if I would simply give your Clefairy 1.000 XP by something like "p1.exp+=1000", you would just end up at the highest possible level and that's it. So this would work similar to the Pokémon Pension with no possibility to change the moveset to your liking.
How do I give out said XP, but have the game stop at every single Level Up and re-evaluate the moveset, so that you may let your Clefairy learn a new move? Can someone please enlighten me on that matter?
I did have look at "Gaining Experience" in the battle part of the script (as that is essentially what I'm looking for, but outside of the battle). However, I am not very proficient with scripting and it is quite a lot of text there, so it did not really help me that much :(
Thank you so much for your assistance!