&$attacke) { //echo '
attackenstats: '.count($attacke).'
'; $statsCounter = 0; foreach ($attacke as $attKey => &$stat) { if(is_array($stat)) { echo '
'.print_r($stat); //echo '
dauer: '.$stat['dauer'].'/'.$stat['maxdauer']; //echo '
wert: '.$stat['dauer']; //echo '
operator: '; //echo '
wert: '.$stat['wert']; //echo '
variabel-index: '.getCharVariable($stat['attribut'], $charPos); //echo '
attribut: '.getVariableName($stat['attribut'], $charPos).' ('.$stat['attribut'].')'; //echo '
value: '.$GLOBALS['kampf'][getVariableName($stat['attribut'], $charPos)][getCharVariable($stat['attribut'], $charPos)]; //echo '
zAttribut: '.getVariableName($stat['zattribut'], $charPos).' ('.$stat['zattribut'].')'; //echo '
value: '.$GLOBALS['kampf'][getVariableName($stat['zattribut'], $charPos)][getCharVariable($stat['zattribut'], $charPos)]; $statsCounter++; $attributWert = &$GLOBALS['kampf'][getVariableName($stat['attribut'], $charPos)][getCharVariable($stat['attribut'], $charPos)]; if($stat['attribut'] != $stat['zattribut']) { $zAttributWert = &$GLOBALS['kampf'][getVariableName($stat['zattribut'], $charPos)][getCharVariable($stat['zattribut'], $charPos)]; } else { $zAttributWert = &$attributWert; } echo '
operator: "'.$stat['operator'].'"'; if(($stat['wirkung'] == 'always' || $stat['dauer'] == $stat['maxdauer']) && ($stat['unblockbar'] || !$GLOBALS['kampf']['aussetzen'])) { switch ($stat['operator']) { case '+': $stat['akk_schaden'] += getCalculatedValue($stat['formel'], $stat['wert'], $attributWert); $zAttributWert += getCalculatedValue($stat['formel'], $stat['wert'], $attributWert); break; case '-': $stat['akk_schaden'] -= getCalculatedValue($stat['formel'], $stat['wert'], $attributWert); $zAttributWert -= getCalculatedValue($stat['formel'], $stat['wert'], $attributWert); break; case '*': //vorherigen wert merken um später gegen rechnen zu können $tmp_wert = $attributWert; //echo 'tmp_wert: '.$tmp_wert.'
'; $zAttributWert *= getCalculatedValue($stat['formel'], $stat['wert'], $attributWert); $stat['akk_schaden'] += $attributWert - $tmp_wert; break; case '/': //vorherigen wert merken um später gegen rechnen zu können $tmp_wert = $attributWert; //echo 'tmp_wert: '.$tmp_wert.'
'; $zAttributWert /= getCalculatedValue($stat['formel'], $stat['wert'], $attributWert); $stat['akk_schaden'] += $attributWert - $tmp_wert; break; default: echo '
kein operator gefunden!'; } } //echo '
ber. value: '.$zAttributWert; //echo '
akk_schaden: '.$stat['akk_schaden'].'
'; //echo 'Varname: '.getVariableName($stat['attribut'], $charPos).'
'; //echo 'Schaden: '.getCalculatedValue($stat['schaden'], $stat['wert'], $attributWert).'
'; //echo '
zattribut: '.$stat['zattribut']; if(getVariableName($stat['zattribut'], $charPos) == 'tmp_hp') { //hier extra den weiteren parameter für healkonter setzen $index = 3; if($charPos == 1) { if($stat['zattribut'][0] == 's') { $index = 3; } else { $index = 2; } } else { if($stat['zattribut'][0] == 's') { $index = 2; } else { $index = 3; } } $GLOBALS['kampf'][getVariableName($stat['zattribut'], $charPos)][$index] = true; } $stat['dauer']--; if($stat['dauer'] < 1) { if($stat['wiederherstellbar'] == true) { //echo 'resette stat '.$zAttributWert.' um den wert '.$stat['akk_schaden'].'
'; $zAttributWert -= $stat['akk_schaden']; } $statsCounter--; if($charPos == 1) { $GLOBALS['kampf']['schaden1'] = $attacke['text']; } else { $GLOBALS['kampf']['schaden2'] = $attacke['text']; } unset($attacke[$attKey]); } } } //echo 'Statscounter: '.$statsCounter.'
'; //echo 'attackenstats: '.count($attacke).'
'; if($statsCounter == 0) { unset($statChanges[$statKey]); } } } } ################### Spieler 1 //char auf der linken Seite processStatChanges($statChange_Char1, 1); ################### Spieler 2 //char auf der rechten Seite processStatChanges($statChange_Char2, 2); ?>