diff --git a/ag/char_profil.php b/ag/char_profil.php
index 13add81..4166a76 100644
--- a/ag/char_profil.php
+++ b/ag/char_profil.php
@@ -5,11 +5,16 @@
* @license http://www.gnu.org/licenses/gpl-3.0.html GNU General Public Licence
*
*/
+
include_once($_SERVER['DOCUMENT_ROOT'].'/ag/include/config.inc.php');
include_once($_SERVER['DOCUMENT_ROOT'].'/ag/include/designfunctions.inc.php');
include_once($_SERVER['DOCUMENT_ROOT'].'/ag/include/fehlerausgabe.inc.php');
include_once($_SERVER['DOCUMENT_ROOT'].'/ag/include/parse.inc.php');
-include_once($_SERVER['DOCUMENT_ROOT'].'/ag/include/char_profil.inc.php'); //Allgemeine Funktionen f�r die Char darstellung
+include_once($_SERVER['DOCUMENT_ROOT'].'/ag/include/char_profil.inc.php'); //Allgemeine Funktionen für die Char darstellung
+include_once($_SERVER['DOCUMENT_ROOT'].'/ag/include/defines.inc.php');
+include_once($_SERVER['DOCUMENT_ROOT'].'/ag/include/attackenset.inc.php');
+
+defineIfNotDefined('MAX_ROUNDS', 10);
/* Diese Datei ist etwas komisch, darum die Abweichende SQL-Injection methode */
@@ -17,582 +22,378 @@ $char_id = validateUnsignedInteger($_GET['char_id'], null);
function stelledar($char_id,$user_ida,$name) {
//Alle Chardaten laden
+ //TODO: chardaten gefällt mir absolut nicht! Das muss man anders regeln =/
chardaten($char_id,$name,$char_1,$hp1,$mp1,$exp,$fehler);
- if ($fehler == '') {
+ if ($fehler == NULL) {
+ $buffedstats = getCharBuffs($char_1['kampf_item']);
//Alle Attacken laden
- aktuelleauswahl($char_1,$at11,$at11_2,$auswahl1,$auswahl2,$auswahl3);
- //R�stung laden
+ $learned_atts = getCharAttacks($char_id);
+
+ //Attackensets laden
+ $clanfight_attset = getCharAttackSet($char_id, CLANKAMPF);
+ $normfight_attset = getCharAttackSet($char_id, NORMALKAMPF);
+
+ //TODO:prüfen ob man nicht auch den name aus $learned_atts holen kann
+ $clanfight_attset_name = getAttackNamesFromAttackSet($clanfight_attset);
+ $normfight_attset_name = getAttackNamesFromAttackSet($normfight_attset);
+
+ //Rüstung laden
$e_schuhe = mysql_query("SELECT i.name, w.id, i.level FROM ware w LEFT JOIN item i ON(i.id=w.item_id) WHERE (i.type='$char_1[type]' OR i.type='ALL') AND w.user='$user_ida[id]' AND w.ru_mal='1' AND i.s_type='Schuhe' AND i.level <='$char_1[level]' group by i.name order by i.level desc");
$e_schwert = mysql_query("SELECT i.name, w.id, i.level FROM ware w LEFT JOIN item i ON(i.id=w.item_id) WHERE (i.type='$char_1[type]' OR i.type='ALL') AND w.user='$user_ida[id]' AND w.ru_mal='1' AND i.s_type='Schwert' AND i.level <='$char_1[level]' group by i.name order by i.level desc");
$e_rustung = mysql_query("SELECT i.name, w.id, i.level FROM ware w LEFT JOIN item i ON(i.id=w.item_id) WHERE (i.type='$char_1[type]' OR i.type='ALL') AND w.user='$user_ida[id]' AND w.ru_mal='1' AND i.s_type='Ruestung' AND i.level <='$char_1[level]' group by i.name order by i.level desc");
$e_schild = mysql_query("SELECT i.name, w.id, i.level FROM ware w LEFT JOIN item i ON(i.id=w.item_id) WHERE (i.type='$char_1[type]' OR i.type='ALL') AND w.user='$user_ida[id]' AND w.ru_mal='1' AND i.s_type='Schild' AND i.level <='$char_1[level]' group by i.name order by i.level desc");
$e_helm = mysql_query("SELECT i.name, w.id, i.level FROM ware w LEFT JOIN item i ON(i.id=w.item_id) WHERE (i.type='$char_1[type]' OR i.type='ALL') AND w.user='$user_ida[id]' AND w.ru_mal='1' AND i.s_type='Helm' AND i.level <='$char_1[level]' group by i.name order by i.level desc");
$checked = explode(',',$char_1['kampf_item']);
-?>
+ ?>
-
-
-
- $kampf_copy) {
- $fehler[0] = "Fehler die Technik vom type: Copy darf nur ".$kampf_copy." mal benutzt werden.";
- $anz++;
- }
- if($kampf_kaioken2_n > $kampf_kaioken2) {
- $fehler[1] = "Fehler die Technik vom type: Kaiaoken2 darf nur ".$kampf_kaioken2." mal benutzt werden.";
- $anz++;
- }
- if($kampf_lose2_n > $kampf_lose2) {
- $fehler[2] = "Fehler die Technik vom type: lose2 darf nur ".$kampf_lose2." mal benutzt werden.";
- $anz++;
- }
- if($kampf_majin_n > $kampf_majin) {
- $fehler[3] = "Fehler die Technik vom type: Majin darf nur ".$kampf_majin." mal benutzt werden.";
- $anz++;
- }
- if($kampf_tausch2_n > $kampf_tausch2) {
- $fehler[4] = "Fehler die Technik vom type: Tausch darf nur 3 mal benutzt werden.";
- $anz++;
- }
- if($kampf_summon_n > $kampf_summon) {
- $fehler[5] = "Fehler die Technik vom type: Summon darf nur ".$kampf_summon." mal benutzt werden.";
- $anz++;
- }
- if($kampf_gift_n > $kampf_gift) {
- $fehler[6] = "Fehler die Technik vom type: Gift darf nur ".$kampf_gift." mal benutzt werden.";
- $anz++;
- }
- if($kampf_schatten_n > $kampf_schatten) {
- $fehler[7] = "Fehler die Technik vom type: Schatten darf nur 2 mal benutzt werden.";
- $anz++;
- }
- if($kampf_ssj_n AND $kampf_kaioken_n) {
- $fehler[8] = "Fehler sie dürfen Techniken vom Type SSJ und Kaioken nicht zusammen nutzen.";
- $anz++;
- }
- if($kampf_tausch_n > $kampf_tausch) {
- $fehler[9] = "Fehler die Technik vom type: Kampf darf nur ".$kampf_tausch." mal benutzt werden.";
- $anz++;
- }
- if($kampf_ssj_n > $kampf_ssj) {
- $fehler[10] = "Fehler die Technik vom type: SSJ darf nur ".$kampf_ssj." mal benutzt werden.";
- $anz++;
- }
- if($kampf_hp_n > $kampf_hp) {
- $fehler[11] = "Fehler die Technik vom type: HP darf nur 2 mal benutzt werden.";
- $anz++;
- }
- if($kampf_hpmp_n > $kampf_hpmp) {
- $fehler[12] = "Fehler die Technik vom type: HPMP darf nur ".$kampf_hpmp." mal benutzt werden.";
- $anz++;
- }
- if($kampf_sprit_n > $kampf_sprit) {
- $fehler[13] = "Fehler die Technik vom type:Sprit darf nur ".$kampf_sprit." mal benutzt werden.";
- $anz++;
- }
- if($kampf_sprit2_n > $kampf_sprit2) {
- $fehler[14] = "Fehler die Technik vom type: Sprit2 darf nur ".$kampf_sprit2." mal benutzt werden.";
- $anz++;
- }
- if($kampf_lose_n > $kampf_lose) {
- $fehler[15] = "Fehler die Technik vom type: Lose darf nur ".$kampf_lose." mal benutzt werden.";
- $anz++;
- }
- if($kampf_kaioken_n > $kampf_kaioken) {
- $fehler[16] = "Fehler die Technik vom type: Kaiaoken darf nur ".$kampf_kaioken." mal benutzt werden.";
- $anz++;
- }
- if($bild11 != $_POST['bild11']){
- $fehler[17] = 'Die URL für das Bild ist ungültig!';
- $anz++;
- }
- if($kampf_frucht_n > $kampf_frucht) {
- $fehler[19] = 'Fehler die Technik vom type: frucht darf nur '.$kampf_frucht.' mal benutzt werden!';
- $anz++;
- }
- if($kampf_konterheal_n > $kampf_konterheal) {
- $fehler[20] = 'Fehler die Technik vom type: Konterheal darf nur '.$kampf_konterheal.' mal benutzt werden!';
- $anz++;
- }
- if($kampf_hp_n >= 1 AND $kampf_hpmp_n >= 1) {
- $fehler[21] = 'Fehler die Technik vom type: HP darf nicht zusammen mit der Technik vom type: HPMP benutzt werden!';
- $anz++;
- }
- }
- $x++;
+ //andere Sachen überprüfen
+ if($bild11 != $_POST['bild11']){
+ $fehler[3] = 'Die URL für das Bild ist ungültig!';
}
- //Schauen ob ein Fehler vorhanden ist
- if ($anz == 0) {
- //In DB einf�gen
- safe_query('UPDATE chars SET kampf_item=\''.$helm_e.','.$rustung_e.','.$schild_e.','.$schwert_e.','.$schuhe_e.'\', aufgeben=\''.$aufgeben.'\', rustung =\''.$rustung.'\', '.
- 'attacken=\''.$attacke1[0].','.$attacke1[1].','.$attacke1[2].','.$attacke1[3].','.$attacke1[4].','.$attacke1[5].','.$attacke1[6].','.$attacke1[7].','.$attacke1[8].','.$attacke1[9].'\', '.
- 'auswahl1=\''.$auswahl1_0.','.$auswahl1_1.','.$auswahl1_2.','.$auswahl1_3.','.$auswahl1_4.','.$auswahl1_5.','.$auswahl1_6.','.$auswahl1_7.','.$auswahl1_8.','.$auswahl1_9.'\', '.
- 'auswahl2=\''.$auswahl2_0.','.$auswahl2_1.','.$auswahl2_2.','.$auswahl2_3.','.$auswahl2_4.','.$auswahl2_5.','.$auswahl2_6.','.$auswahl2_7.','.$auswahl2_8.','.$auswahl2_9.'\', '.
- 'auswahl3=\''.$auswahl3_0.','.$auswahl3_1.','.$auswahl3_2.','.$auswahl3_3.','.$auswahl3_4.','.$auswahl3_5.','.$auswahl3_6.','.$auswahl3_7.','.$auswahl3_8.','.$auswahl3_9.'\', '.
- 'attacken2=\''.$attacke2[0].','.$attacke2[1].','.$attacke2[2].','.$attacke2[3].','.$attacke2[4].','.$attacke2[5].','.$attacke2[6].','.$attacke2[7].','.$attacke2[8].','.$attacke2[9].'\', '.
- 'bild=\''.$bild11.'\' WHERE id='.$char_1[id].' LIMIT 1');
-
+ //Schauen ob ein Fehler vorhanden ist
+ if ($fehler[0] == NULL && $fehler[1] == NULL && $fehler[2] == NULL) {
+ //In DB einfügen (alter müll, vor allen was Attacken angeht!)
+ $qry = 'UPDATE chars SET kampf_item=\''.$helm_e.','.$rustung_e.','.$schild_e.','.$schwert_e.','.$schuhe_e.'\', rustung =\''.$rustung.'\', '.
+ 'attacken=\''.implode(',', $attset_nf).'\', '.
+ 'attacken2=\''.implode(',', $attset_nf).'\', '.
+ 'bild=\''.$bild11.'\' WHERE id='.$char[id].' LIMIT 1';
+ mysql_query($qry);
+
+ //neues updaten von Attacken
+ updateCharAttackSet($char_id, $attset_cf, CLANKAMPF);
+ updateCharAttackSet($char_id, $attset_nf, NORMALKAMPF);
+
echo 'Profil erfolgreich geändert!!
';
echo 'weiter...
';
- //Alle gefundenen Fehler anzeigen
- } else { $fehler2 = implode("
", $fehler);
- echo ''.$fehler2.'
';
- echo '
zurück
';
+ } else {
+ displayErrorMessage(NULL, $fehler[0].'
'.$fehler[1].'
'.$fehler[2], displayHistoryBackLink());
+ exit;
}
}
-if ($_POST['submit']==1) { eintragen($char_id,$name,$user_ida); }
-elseif ($char_id) { stelledar($char_id,$user_ida,$name); }
-else { echo 'Leider wurde die Seite nicht korrekt aufgerufen! Rufen Sie die Seite bitte korrekt auf'; }
+
+if ($_POST['submit']==1) {
+ eintragen($char_id,$name,$user_ida);
+} elseif ($char_id) {
+ stelledar($char_id,$user_ida,$name);
+} else {
+ echo 'Leider wurde die Seite nicht korrekt aufgerufen! Rufen Sie die Seite bitte korrekt auf';
+}
?>
\ No newline at end of file
diff --git a/ag/include/attackenset.inc.php b/ag/include/attackenset.inc.php
index 66ead07..3d60e16 100644
--- a/ag/include/attackenset.inc.php
+++ b/ag/include/attackenset.inc.php
@@ -8,36 +8,163 @@
include_once ($_SERVER['DOCUMENT_ROOT'] . 'ag/include/defines.inc.php');
-
+//Set-Arten
+defineIfNotDefined('NORMALKAMPF', 1);
defineIfNotDefined('CLANKAMPF', 2);
+//Anzahl der Typen die in einem Kampf erlaubt sind
+//TODO: sollte überprüft werden, welche typen es eigentlich ingame noch gibt
+defineIfNotDefined('KAMPF_SSJ', 1); // SSJ ist eine Art technik die werte mal setzt
+defineIfNotDefined('KAMPF_TAUSCH', 1); // Tausch ist eine Art technik die alle werte vertauscht gegner und sich selbst
+defineIfNotDefined('KAMPF_HP', 2); // HP ist eine technik die es erlaubt sich zu Heilen
+defineIfNotDefined('KAMPF_HPMP', 1); // HPMP ist eine art die HP+MP erhoeht
+defineIfNotDefined('KAMPF_SPIRIT', 1); // spirit ist was mit spirit stones
+defineIfNotDefined('KAMPF_LOSE', 1); // Lose ist wie Kaioken nur das man werte verliert
+defineIfNotDefined('KAMPF_KAIOKEN', 1); // Kaioken ist eine technik die werte gibt
+defineIfNotDefined('KAMPF_SUMMON', 1); // spirit2 ist was mit spirit stones
+defineIfNotDefined('KAMPF_GIFT', 1); // Lose ist wie Kaioken nur das man werte verliert
+defineIfNotDefined('KAMPF_SCHATTEN', 2); // Kaioken ist eine technik die werte gibt
+defineIfNotDefined('KAMPF_COPY', 1); // Man Trasfert werte.
+defineIfNotDefined('KAMPF_KAIOKEN2', 1); // Man Bekommt sau viel staerke fuer 1runde
+defineIfNotDefined('KAMPF_LOSE2', 1); // MP Wegmachen
+defineIfNotDefined('KAMPF_MAJIN', 1); // Jemnand als majin machen.
+defineIfNotDefined('KAMPF_KONTERHEAL', 2); // Eine Heal-Attacke kontern.
+defineIfNotDefined('KAMPF_TAUSCH2', 3); // Attacke Kopieren.
+defineIfNotDefined('KAMPF_FRUCHT', 1);
+
function getCharAttackSet($char_id, $type) {
$qry = null;
// default values (in case the data is not or partially set)
- $set = array(1 => 0,2 => 0,3 => 0,4 => 0,5 => 0,6 => 0,7 => 0,8 => 0,9 => 0,10 => 0);
+ for ($i = 1; $i < 11; $i++) {
+ $set[$i] = -1;
+ }
if(is_numeric($char_id)) {
- $test = 'SELECT attack_id,`round` FROM attackenset WHERE Char_ID = '.$char_id.' AND Type = '.$type;
-// echo $test . '
';
- $qry = mysql_query($test);
+ $qry = mysql_query('SELECT Attack_ID, Round FROM attackenset WHERE Char_ID = '.$char_id.' AND Type = '.$type);
}
-
- $i = 0;
while ($result = mysql_fetch_assoc($qry)) {
- $set[$result['round']] = $result['attack_id'];
+ $set[$result['Round']] = $result['Attack_ID'];
}
return $set;
}
-function updateCharAttackSet($set) {
+function updateCharAttack($char_id, $att_id,$round, $type) {
+ $qry = 'UPDATE attackenset SET Attack_ID = '.$att_id.' WHERE Char_ID = '.$char_id.' AND Type = '.$type.' AND Round = '.$round.';';
+ mysql_query($qry);
+}
+function createCharAttack($char_id, $att_id,$round, $type) {
+ $qry = 'INSERT INTO attackenset VALUES('.$char_id.','.$att_id.','.$type.','.$round.');';
+ mysql_query($qry);
}
-function createCharAttackSet() {
+function updateCharAttackSet($char_id, $set, $type) {
+ $old_set = getCharAttackSet($char_id, $type);
+ for ($i = 1; $i < count($set)+1; $i++) {
+ if($old_set[$i] < 0 && $set[$i] > 0) {
+ //insert new value
+ createCharAttack($char_id, $set[$i], $i, $type);
+ } elseif($old_set > 0 && $set[$i] != $old_set[$i]) {
+ //update old value
+ updateCharAttack($char_id,$set[$i], $i, $type);
+ }
+ }
}
+function getAttackTypesFromAttackSet($attset) {
+ $qry = mysql_query('SELECT l.id,a.type FROM attacken a INNER JOIN lernen l ON a.id=l.at_id WHERE l.id in ('.implode(',', $attset).');');
+
+ while ($result = mysql_fetch_assoc($qry)) {
+ $set[$result['id']] = $result['type'];
+ }
-?>
+ return $set;
+}
+
+function validateAttackSetTypes($attset) {
+ $types = getAttackTypesFromAttackSet($attset);
+ foreach ($attset as $att_id) {
+ if($types[$att_id] == "tausch") { $kampf_tausch_n++;
+ }elseif($types[$att_id] == "SSJ") { $kampf_ssj_n++;
+ }elseif($types[$att_id] == "hpmp") { $kampf_hpmp_n++;
+ }elseif($types[$att_id] == "hp") { $kampf_hp_n++;
+ }elseif($types[$att_id] == "lose") { $kampf_lose_n++;
+ }elseif($types[$att_id] == "kaioken") { $kampf_kaioken_n++;
+ }elseif($types[$att_id] == "summon") { $kampf_summon_n++;
+ }elseif($types[$att_id] == "gift") { $kampf_gift_n++;
+ }elseif($types[$att_id] == "schatten") { $kampf_schatten_n++;
+ }elseif($types[$att_id] == "copy") { $kampf_copy_n++;
+ }elseif($types[$att_id] == "kaioken2") { $kampf_kaioken2_n++;
+ }elseif($types[$att_id] == "lose2") { $kampf_lose2_n++;
+ }elseif($types[$att_id] == "majin") { $kampf_majin_n++;
+ }elseif($types[$att_id] == "tausch2") { $kampf_tausch2_n++;
+ }elseif($types[$att_id] == "frucht") { $kampf_frucht_n++;
+ }elseif($types[$att_id] == "konterhp") { $kampf_konterheal_n++;
+ }
+ if($kampf_copy_n > KAMPF_COPY) {
+ return "Fehler die Technik vom type: Copy darf nur ".KAMPF_COPY." mal benutzt werden.";
+ }
+ if($kampf_kaioken2_n > KAMPF_KAIOKEN2) {
+ return "Fehler die Technik vom type: Kaiaoken2 darf nur ".KAMPF_KAIOKEN2." mal benutzt werden.";
+ }
+ if($kampf_lose2_n > KAMPF_LOSE2) {
+ return "Fehler die Technik vom type: lose2 darf nur ".KAMPF_LOSE2." mal benutzt werden.";
+ }
+ if($kampf_majin_n > KAMPF_MAJIN) {
+ return "Fehler die Technik vom type: Majin darf nur ".KAMPF_MAJIN." mal benutzt werden.";
+ }
+ if($kampf_tausch2_n > KAMPF_TAUSCH2) {
+ return "Fehler die Technik vom type: Tausch darf nur ".KAMPF_TAUSCH2." mal benutzt werden.";
+ }
+ if($kampf_summon_n > KAMPF_SUMMON) {
+ return "Fehler die Technik vom type: Summon darf nur ".KAMPF_SUMMON." mal benutzt werden.";
+ }
+ if($kampf_gift_n > KAMPF_GIFT) {
+ return "Fehler die Technik vom type: Gift darf nur ".KAMPF_GIFT." mal benutzt werden.";
+ }
+ if($kampf_schatten_n > KAMPF_SCHATTEN) {
+ return "Fehler die Technik vom type: Schatten darf nur ".KAMPF_SCHATTEN." mal benutzt werden.";
+ }
+ if($kampf_ssj_n AND $kampf_kaioken_n) {
+ return "Fehler sie dürfen Techniken vom Type SSJ und Kaioken nicht zusammen nutzen.";
+ }
+ if($kampf_tausch_n > KAMPF_TAUSCH) {
+ return "Fehler die Technik vom type: Kampf darf nur ".KAMPF_TAUSCH." mal benutzt werden.";
+ }
+ if($kampf_ssj_n > KAMPF_SSJ) {
+ return "Fehler die Technik vom type: SSJ darf nur ".KAMPF_SSJ." mal benutzt werden.";
+ }
+ if($kampf_hp_n > KAMPF_HP) {
+ return "Fehler die Technik vom type: HP darf nur ".KAMPF_HP." mal benutzt werden.";
+ }
+ if($kampf_hpmp_n > KAMPF_HPMP) {
+ return "Fehler die Technik vom type: HPMP darf nur ".KAMPF_HPMP." mal benutzt werden.";
+ }
+ if($kampf_sprit_n > KAMPF_SPIRIT) {
+ return "Fehler die Technik vom type:Sprit darf nur ".KAMPF_SPIRIT." mal benutzt werden.";
+ }
+ if($kampf_sprit2_n > $kampf_sprit2) {
+ return "Fehler die Technik vom type: Sprit2 darf nur ".$kampf_sprit2." mal benutzt werden.";
+ }
+ if($kampf_lose_n > KAMPF_LOSE) {
+ return "Fehler die Technik vom type: Lose darf nur ".KAMPF_LOSE." mal benutzt werden.";
+ }
+ if($kampf_kaioken_n > KAMPF_KAIOKEN) {
+ return "Fehler die Technik vom type: Kaiaoken darf nur ".KAMPF_KAIOKEN." mal benutzt werden.";
+ }
+ if($kampf_frucht_n > KAMPF_FRUCHT) {
+ return 'Fehler die Technik vom type: frucht darf nur '.KAMPF_FRUCHT.' mal benutzt werden!';
+ }
+ if($kampf_konterheal_n > KAMPF_KONTERHEAL) {
+ return 'Fehler die Technik vom type: Konterheal darf nur '.KAMPF_KONTERHEAL.' mal benutzt werden!';
+ }
+ if($kampf_hp_n >= 1 AND $kampf_hpmp_n >= 1) {
+ return 'Fehler die Technik vom type: HP darf nicht zusammen mit der Technik vom type: HPMP benutzt werden!';
+ }
+ }
+ return NULL;
+}
+?>
\ No newline at end of file
diff --git a/ag/include/char.inc.php b/ag/include/char.inc.php
index 70a81d2..0f5c795 100644
--- a/ag/include/char.inc.php
+++ b/ag/include/char.inc.php
@@ -129,9 +129,7 @@ function getChar2($charid) {
function getCharWithBuffs($charid, $buffer_enabled = true){
$char = getChar($charid, $buffer_enabled);
- if($char['kampf_item'] != NULL && $char['kampf_item'] != ',,,,'){
- $char_buffs = mysql_fetch_assoc(mysql_query('SELECT sum(i.hp) as hp, sum(i.mp) as mp, sum(i.starke) as starke, sum(i.verteidigung) as verteidigung, sum(i.speed) as speed FROM ware w LEFT JOIN item i ON(i.id=w.item_id) WHERE w.id IN (' . $char['kampf_item'] . ')'));
- }
+ $char_buffs = getCharBuffs($char['kampf_item']);
$char['starke'] += $char_buffs['starke'];
$char['verteidigung'] += $char_buffs['verteidigung'];
$char['speed'] += $char_buffs['speed'];
@@ -140,6 +138,12 @@ function getCharWithBuffs($charid, $buffer_enabled = true){
return $char;
}
+function getCharBuffs($items) {
+ if($items != NULL && $items != ',,,,'){
+ $char_buffs = mysql_fetch_assoc(mysql_query('SELECT sum(i.hp) as hp, sum(i.mp) as mp, sum(i.starke) as starke, sum(i.verteidigung) as verteidigung, sum(i.speed) as speed FROM ware w LEFT JOIN item i ON(i.id=w.item_id) WHERE w.id IN ('.$items.')'));
+ }
+ return $char_buffs;
+}
// Uebergabe der Userid (Nachteil ist, dass Puffer von getChar mit $charid nicht moeglich ist, weil information fehlt, ob alle Chars im Buffer sind
@@ -245,7 +249,12 @@ function getPowerLevelWithBuffs($charid, $buffer_enabled = true){
* Auslesen der Attacken, die der Char beherrscht
*/
function getCharAttacks($charid){
-
+ $attacks = array();
+ $qry = mysql_query("SELECT name, id, at_id FROM lernen WHERE besitzer='$charid' AND aktiv > '0' order by id");
+ while($row = mysql_fetch_array($qry)) {
+ $attacks[] = array('name'=>$row['name'], 'id'=>$row['id'], 'at_id'=>$row['at_id']);
+ }
+ return $attacks;
}
// Auslesen der Kampfeinstellungen
@@ -310,7 +319,7 @@ function getAttacksforChar($charid, $mode = 0) {
// first read out basic information about our attacks
-// $sql = 'select a.name, a.id, a.level, if(find_in_set(\'0\', req_atk) = 0, a.req_atk, substr(a.req_atk, 1, locate(\',0\', a.req_atk) - 1)) as req_atk , geld, ifnull((select l.benutzt from lernen l where l.besitzer = '.$char['id'].' and at_id = a.id),0) as benutzt, a.id not in (select l.at_id from lernen l where l.besitzer = '.$char['id'].') as unknown from attacken a where find_in_set('.$char_race.', a.rassen) order by level';
+ // $sql = 'select a.name, a.id, a.level, if(find_in_set(\'0\', req_atk) = 0, a.req_atk, substr(a.req_atk, 1, locate(\',0\', a.req_atk) - 1)) as req_atk , geld, ifnull((select l.benutzt from lernen l where l.besitzer = '.$char['id'].' and at_id = a.id),0) as benutzt, a.id not in (select l.at_id from lernen l where l.besitzer = '.$char['id'].') as unknown from attacken a where find_in_set('.$char_race.', a.rassen) order by level';
$sql_append = '';
@@ -329,7 +338,7 @@ function getAttacksforChar($charid, $mode = 0) {
$qry = mysql_query($sql);
if($qry === FALSE) // print sql on error
- echo '
'.$sql.'
';
+ echo '
'.$sql.'
';
// The first index is the id of the attack!
// then there is the basic information like
diff --git a/ag/include/char_profil.inc.php b/ag/include/char_profil.inc.php
index 56c52b4..2487589 100644
--- a/ag/include/char_profil.inc.php
+++ b/ag/include/char_profil.inc.php
@@ -25,35 +25,27 @@ function safe_query($query="") {
function chardaten($char_id,$name,&$char_1,&$hp1,&$mp1,&$exp,&$fehler) {
$char_1 = getChar($char_id);
- $hp1 = explode(',', $char_1[hp]);
- $mp1 = explode(',', $char_1[mp]);
- $exp = explode(',', $char_1[exp]);
+ $hp1 = explode(',', $char_1['hp']);
+ $mp1 = explode(',', $char_1['mp']);
+ $exp = explode(',', $char_1['exp']);
$user = mysql_Fetch_array(mysql_query("SELECT id FROM user WHERE nickname='$name' LIMIT 1"));
if($char_1['besitzer'] != $user[0]) {
- $fehler[0]= 'Dieser Char geh�rt nicht dir!';
+ $fehler= 'Dieser Char gehört nicht dir!';
}
return array($char_1,$hp1,$mp1,$exp,$fehler);
}
-//hier werden die aktuell gew�hlten attcken der jeweiligen runden ausgelesen
-function aktuelleauswahl($char_1,&$at11,&$at11_2,&$auswahl1,&$auswahl2,&$auswahl3) {
- $at11 = explode(",", $char_1[attacken]);
- $at11_2 = explode(",", $char_1[attacken2]);
- $auswahl1 = explode(",", $char_1[auswahl1]);
- $auswahl2 = explode(",", $char_1[auswahl2]);
- $auswahl3 = explode(",", $char_1[auswahl3]);
- return array($at11,$at11_2,$auswahl1,$auswahl2,$auswahl3);
-}
-
-
-//pr�ft, ob der char verf�gbar ist
-function istcharfrei($char_id,$char_1,$anz,&$fehler) {
- $anz=0;
- if($char_1[status] != "Frei" AND $char_1[status] != "akademie") {
- $fehler[18] = "Charakter ist zur Zeit nicht verfügbar!";
- $anz++;
+/**
+ *
+ * Überprüft den Status des Charakters
+ * @param Array $char: Der Charakterarray, welche 'status' beinhalten muss
+ * @param String $status: Der Status auf den geprüft wird
+ */
+function checkCharStatus($char, $status) {
+ if($char['status'] == $status) {
+ return TRUE;
}
- return array($fehler);
+ return FALSE;
}
?>
\ No newline at end of file