The following is a mod that will disable the standard checks when an adoptable is clicked that will cause it to gain a level when it reaches its EXP threshold, and instead adds an item that takes over that function.  This, in essence, converts leveling up to a manual function, allowing a user to keep their adopt at a specific level without freezing it.
To begin, open your function_items.php, found in the function folder of your mysidia install, and copy/paste the following at the bottom.
	PHP Code:
	
		
			
function items_levelcheck($item, $adopt){
  $mysidia = Registry::get("mysidia");
  
  $newlevel = $item->value;
  $lev = $mysidia->db->select("levels", array(), "adoptiename='{$adopt->type}' and thisislevel ='{$newlevel}'")->fetchObject();
  if ($lev->requiredclicks <= $adopt->totalclicks) {  
    //Check if the adoptable's level is already at maximum.    
  if(!is_object($lev)){
    // object not created, the level is already at maximum.
    $note = "Unfortunately, your selected adoptable's level cannot be raised by using item {$item->itemname}.";
  }
  else{
    //Update item quantity...
    $delitem = $item->remove();
    //Execute the script to update adoptable's level.
    $mysidia->db->update("owned_adoptables", array("currentlevel" => $newlevel), "aid ='{$adopt->aid}' and owner='{$item->owner}'");
    $note = "Congratulations, the item {$item->itemname} raised your adoptable to level  {$item->value}";
  };
  }
  else{
  $note = "Your pet does not have the required number of clicks";
  };
  return $note;
} 
		
	
 While you have the function_items file open, either comment out or remove the entries under click1 and click2 that read:
	PHP Code:
	
		
			
if($ownedAdopt->hasNextLevel()){
      //new level exists, time to check if the total clicks have reached required minimum clicks for next level.
     $nextLevel = $ownedAdopt->getNextLevel();
     $requiredClicks = $nextLevel->getRequiredClicks();
     if($newclicks >= $requiredClicks and $requiredClicks != 0 and $requiredClicks != ""){
        // We need to level this adoptable up...
        $mysidia->db->update("owned_adoptables", array("currentlevel" => $nextLevel->getLevel()), "aid ='{$adopt->aid}' and owner='{$item->owner}'");             
        $note .= "And moreover, it has gained a new level!";
     }
  } 
		
	
 This disables their ability to level up the adoptables.  Close function_items.
Next, open class_privateitem.php, found in the classes folder, and paste the following in after the entries that it resembles:
	PHP Code:
	
		
			
case "LevelCheck":
$message = items_levelcheck($this, $owned_adoptable);
break; 
		
	
 (finishing this in a second post)