--- deliantra/server/common/exp.C 2010/05/06 21:58:06 1.35 +++ deliantra/server/common/exp.C 2018/11/22 00:40:12 1.44 @@ -1,24 +1,25 @@ /* * This file is part of Deliantra, the Roguelike Realtime MMORPG. - * - * Copyright (©) 2005,2006,2007,2008,2009,2010 Marc Alexander Lehmann / Robin Redeker / the Deliantra team + * + * Copyright (©) 2017,2018 Marc Alexander Lehmann / the Deliantra team + * Copyright (©) 2005,2006,2007,2008,2009,2010,2011,2012,2013,2014,2015,2016 Marc Alexander Lehmann / Robin Redeker / the Deliantra team * Copyright (©) 2002 Mark Wedel & Crossfire Development Team * Copyright (©) 1992 Frank Tore Johansen - * + * * Deliantra is free software: you can redistribute it and/or modify it under * the terms of the Affero GNU General Public License as published by the * Free Software Foundation, either version 3 of the License, or (at your * option) any later version. - * + * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. - * + * * You should have received a copy of the Affero GNU General Public License * and the GNU General Public License along with this program. If not, see * . - * + * * The authors can be reached via e-mail to */ @@ -150,17 +151,14 @@ sint64 level_to_min_exp (int level) { - if (level <= 0) - return 0; - else - return levels [min (level, settings.max_level)]; + return levels [clamp (level, 0, settings.max_level)]; } /* This loads the experience table from the exp_table * file. */ void -init_experience () +_reload_exp_table () { int lastlevel = 0; sint64 lastexp = -1; @@ -169,7 +167,7 @@ if (!thawer) { - LOG (llevError, "unable to parse experience table file"); + LOG (llevError, "unable to load experience table file"); return; } @@ -182,6 +180,7 @@ thawer.get (settings.max_level); sint64 newlevels [MAXNUMLEVELS]; + newlevels [0] = 0; while (thawer.next_line ()) {