Public feed #531970

Someone

public text v1 · immutable
Raw Edit
·published 2007-06-03 00:45 UTC
rendered paste body
begin

declare curexperience int(4) unsigned;
declare curlevel int(4) unsigned;
declare nextlevel int(4) unsigned;


  select character_level into curlevel, character_experience into curexperience
  from characters
  where character_id = CID

select  CalculateExperienceForLevel(curlevel + 1) into nextlevel;

if (nextlevel < (curexperience + ExperienceDelta)  then  
	update characters set character_level = curlevel+1, character_experience = curexperience+ExperienceDelta where character_id = CID;
	return 1;
end if;

select  CalculateExperienceForLevel(curlevel ) into nextlevel;

if ((curexperience + ExperienceDelta) < nextlevel) then
	update characters set character_level = curlevel-1,  character_experience = curexperience+ExperienceDelta where character_id = CID;
	return -1;
end if

update characters set character_experience = curexperience+ExperienceDelta where character_id = CID;
return 0;


end