From 6371fd11958bd41e8c5b7447c3bdf77f3b3f4c71 Mon Sep 17 00:00:00 2001 From: Sergiotarxz Date: Fri, 8 Mar 2024 21:19:43 +0100 Subject: [PATCH] Fixing decimal bug with levels. --- lib/GEmeTool/Save/Pokemon.pm | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/lib/GEmeTool/Save/Pokemon.pm b/lib/GEmeTool/Save/Pokemon.pm index 3bf1d04..5c12318 100644 --- a/lib/GEmeTool/Save/Pokemon.pm +++ b/lib/GEmeTool/Save/Pokemon.pm @@ -30,7 +30,7 @@ sub level { my $experience = $pokemon->{substructures}[0]{experience}; my $growth_func = $self->growth_function; my $level = 1; - while ($level <= 100 && $growth_func->($level) <= $experience) { + while ($level <= 100 && int($growth_func->($level)) <= $experience) { $level++; } $level -= 1; @@ -93,8 +93,10 @@ sub _exp_medium_fast { sub _exp_medium_slow { my $n = shift; - return ( +#define EXP_MEDIUM_SLOW(n)((6 * CUBE(n)) / 5 - (15 * SQUARE(n)) + (100 * n) - 140) // (6 * (n)^3) / 5 - (15 * (n)^2) + (100 * n) - 140 + my $return = ( ( 6 * _cube($n) ) / 5 - ( 15 * _square($n) ) + ( 100 * $n ) - 140 ); + return $return; } sub _exp_erratic {