';
db_query($sql);
}
// Sooo und nun gehts darum ob wir neue Attacken lernen können
// Ersma die ganzen Infos laden
$sql = 'SELECT * FROM lernen where besitzer = '.$char_id;
$qry = db_query($sql);
while($row = mysqli_fetch_assoc($qry)){
$lern[$row['at_id']] = $row; // Zum späteren Check ob die Reqs erfüllt sind
$atkid[] = $row['at_id']; // Zum ausschliessen der Attacken
}
// Wir können jetzt schon die Attacken ausschließen, die wir schon können!!
if(count($atkid) > 0){
$zusatz = ' AND id NOT IN('.join($atkid,',').')';
}
// Lernbare Attacken auswählen
if(!is_null($char['frucht'])){
$sql = 'select * from attacken where (Frucht is NULL or Frucht = (Select id from wochen_markt where item = \''.$char['frucht'].'\')) and (rassen != \'\' and rassen != \'0\') and level <= '.$char['level'].$zusatz;
} else {
$sql = 'select * from attacken where (Frucht is NULL) and (rassen != \'\' and rassen != \'0\') and level <= '.$char['level'].$zusatz;
}
// echo $sql.'
';
$qry = db_query($sql);
// Das geht leider nicht mit dieser Datenstruktur direkt auszuwählen
$raceid[] = getCharRaceId($char_id);
if(!is_null(getFusionRaceId($char_id))){
$raceid[] = getFusionRaceId($char_id);
}
// So und nun arbeite jede Attacke durch die nur im geringsten Lernbar sein könnte ...
while($row = mysqli_fetch_assoc($qry)) {
// Erstmal checken ob es eine Fruchtattacke ist (durch die SQL-Anweisung werden alle nicht zutreffenden Früchte ausgeblockt)
$learnable = false;
if(!is_null($row['Frucht'])){
// Ok es is ne Frucht-attacke :) Also können wir sie lernen :)
$learnable = true;
} else {
// Ok, dann müssen wir die Rasse checken :)
$races = preg_split('#,#', $row['rassen']);
for($i=0;$i';
$learnable = false;
break;
}
}
}
if($learnable){
db_query('INSERT lernen SET name=\''.$row['name'].'\', at_id=\''.$row['id'].'\', besitzer=\''.$char_id.'\', aktiv=\'1\'');
echo '';
}
}
}
function addExpToChar($char_id, $n_exp){
$char = getChar($char_id, false); // We really want the actual char!!
$char_exp = explode(',', $char['exp']);
$char_exp[0] += $n_exp;
$lvls = 0;
$tp = 0;
$lp = 0;
while($char_exp[0] >= $char_exp[1]){
// Level UP!!
$lvls++;
$char['level']++;
$char_exp[0] -= $char_exp[1];
$char_exp[1] = calculateRequiredExpChars($char['level']);
$tp += calculateTrainingPoints($char['level']);
$lp += 10;
}
if($lvls > 0){ // Ist Char um mindestens ein Level gestiegen?
echo '';
$sql = 'Update chars set exp = \''.$char_exp[0].','.$char_exp[1].'\', lernpunkte = lernpunkte +'.$lp.', training_points = training_points + '.$tp.', level = level + '.$lvls.' where id = '.$char_id;
} else {
$sql = 'Update chars set exp = \''.$char_exp[0].','.$char_exp[1].'\' where id = '.$char_id;
}
// echo $sql.'
';
db_query($sql);
$char = getChar($char_id, false); // We really want the actual char!!
if($char['level'] > 25) {
// remove this char out of the registration of the beginners tournament
db_query('Delete from turnier1 where art = \'klein\' and charakter = \''.$char_id.'\'');
}
}
function addExpToArena($user_id, $n_exp){
$arena = getArena($user_id);
$arena_exp = explode(',', $arena['exp']);
$arena_exp[0] += $n_exp;
$lvls = 0;
while($arena_exp[0] >= $arena_exp[1]){
// Level UP!!
$lvls++;
$arena['level']++;
$arena_exp[0] -= $arena_exp[1];
$arena_exp[1] = calculateRequiredExpArena($arena['level']);
}
if($lvls > 0){
echo '';
db_query('Update arena set exp=\''.$arena_exp[0].','.$arena_exp[1].'\', level='.$arena['level'].', skill=skill+'.$lvls.' WHERE besitzer='.$user_id);
} else{
db_query('Update arena set exp=\''.$arena_exp[0].','.$arena_exp[1].'\' WHERE besitzer='.$user_id);
}
}
?>