|  |  |  | @ -8,47 +8,49 @@ | 
		
	
		
			
				|  |  |  |  |  */ | 
		
	
		
			
				|  |  |  |  | 
 | 
		
	
		
			
				|  |  |  |  | if (!function_exists('getVariableName')) { | 
		
	
		
			
				|  |  |  |  | 	function getVariableName($attribute, $char, $pos) { | 
		
	
		
			
				|  |  |  |  | 	function getVariableName($attribute, $pos) { | 
		
	
		
			
				|  |  |  |  | 		switch($attribute) { | 
		
	
		
			
				|  |  |  |  | 			case 'hp_cur': | 
		
	
		
			
				|  |  |  |  | 			case 's_hp_cur': | 
		
	
		
			
				|  |  |  |  | 			case 'e_hp_cur': | 
		
	
		
			
				|  |  |  |  | 				return 'k_hp'; | 
		
	
		
			
				|  |  |  |  | 			case 'hp_max': | 
		
	
		
			
				|  |  |  |  | 				if($char == 'self') { | 
		
	
		
			
				|  |  |  |  | 					if($pos == 1) { | 
		
	
		
			
				|  |  |  |  | 						return 'k_hp1'; | 
		
	
		
			
				|  |  |  |  | 					} else { | 
		
	
		
			
				|  |  |  |  | 						return 'k_hp2'; | 
		
	
		
			
				|  |  |  |  | 					} | 
		
	
		
			
				|  |  |  |  | 			case 's_hp_max': | 
		
	
		
			
				|  |  |  |  | 				if($pos == 1) { | 
		
	
		
			
				|  |  |  |  | 					return 'k_hp1'; | 
		
	
		
			
				|  |  |  |  | 				} else { | 
		
	
		
			
				|  |  |  |  | 					if($pos == 1) { | 
		
	
		
			
				|  |  |  |  | 						return 'k_hp2'; | 
		
	
		
			
				|  |  |  |  | 					} else { | 
		
	
		
			
				|  |  |  |  | 						return 'k_hp1'; | 
		
	
		
			
				|  |  |  |  | 					} | 
		
	
		
			
				|  |  |  |  | 					return 'k_hp2'; | 
		
	
		
			
				|  |  |  |  | 				} | 
		
	
		
			
				|  |  |  |  | 			case 'mp_cur': | 
		
	
		
			
				|  |  |  |  | 			case 'e_hp_max': | 
		
	
		
			
				|  |  |  |  | 				if($pos == 1) { | 
		
	
		
			
				|  |  |  |  | 					return 'k_hp2'; | 
		
	
		
			
				|  |  |  |  | 				} else { | 
		
	
		
			
				|  |  |  |  | 					return 'k_hp1'; | 
		
	
		
			
				|  |  |  |  | 				} | 
		
	
		
			
				|  |  |  |  | 			case 's_mp_cur': | 
		
	
		
			
				|  |  |  |  | 			case 'e_mp_cur': | 
		
	
		
			
				|  |  |  |  | 				return 'k_mp'; | 
		
	
		
			
				|  |  |  |  | 			case 's_mp_max': | 
		
	
		
			
				|  |  |  |  | 				if($pos == 1) { | 
		
	
		
			
				|  |  |  |  | 					return 'k_mp1'; | 
		
	
		
			
				|  |  |  |  | 				} else { | 
		
	
		
			
				|  |  |  |  | 					return 'k_mp2'; | 
		
	
		
			
				|  |  |  |  | 				} | 
		
	
		
			
				|  |  |  |  | 			case 'mp_max': | 
		
	
		
			
				|  |  |  |  | 				if($char == 'self') { | 
		
	
		
			
				|  |  |  |  | 					if($pos == 1) { | 
		
	
		
			
				|  |  |  |  | 						return 'k_mp1'; | 
		
	
		
			
				|  |  |  |  | 					} else { | 
		
	
		
			
				|  |  |  |  | 						return 'k_mp2'; | 
		
	
		
			
				|  |  |  |  | 					} | 
		
	
		
			
				|  |  |  |  | 				if($pos == 1) { | 
		
	
		
			
				|  |  |  |  | 					return 'k_mp2'; | 
		
	
		
			
				|  |  |  |  | 				} else { | 
		
	
		
			
				|  |  |  |  | 					if($pos == 1) { | 
		
	
		
			
				|  |  |  |  | 						return 'k_mp2'; | 
		
	
		
			
				|  |  |  |  | 					} else { | 
		
	
		
			
				|  |  |  |  | 						return 'k_mp1'; | 
		
	
		
			
				|  |  |  |  | 					} | 
		
	
		
			
				|  |  |  |  | 					return 'k_mp1'; | 
		
	
		
			
				|  |  |  |  | 				} | 
		
	
		
			
				|  |  |  |  | 			case 'str': | 
		
	
		
			
				|  |  |  |  | 			case 's_str': | 
		
	
		
			
				|  |  |  |  | 			case 'e_str': | 
		
	
		
			
				|  |  |  |  | 				return 'k_starke'; | 
		
	
		
			
				|  |  |  |  | 			case 'def': | 
		
	
		
			
				|  |  |  |  | 			case 's_def': | 
		
	
		
			
				|  |  |  |  | 			case 'e_def': | 
		
	
		
			
				|  |  |  |  | 				return 'k_ver'; | 
		
	
		
			
				|  |  |  |  | 			case 'spd': | 
		
	
		
			
				|  |  |  |  | 			case 's_spd': | 
		
	
		
			
				|  |  |  |  | 			case 'e_spd': | 
		
	
		
			
				|  |  |  |  | 				return 'k_speed'; | 
		
	
		
			
				|  |  |  |  | 			case 'heal': | 
		
	
		
			
				|  |  |  |  | 			case 'e_heal': | 
		
	
		
			
				|  |  |  |  | 			case 's_heal': | 
		
	
		
			
				|  |  |  |  | 				return 'tmp_hp'; | 
		
	
		
			
				|  |  |  |  | 			default: | 
		
	
		
			
				|  |  |  |  | 				return ''; | 
		
	
	
		
			
				
					|  |  |  | @ -57,13 +59,15 @@ if (!function_exists('getVariableName')) { | 
		
	
		
			
				|  |  |  |  | } | 
		
	
		
			
				|  |  |  |  | 
 | 
		
	
		
			
				|  |  |  |  | if (!function_exists('getCharVariable')) { | 
		
	
		
			
				|  |  |  |  | 	function getCharVariable($attribute, $char, $pos) { | 
		
	
		
			
				|  |  |  |  | 	function getCharVariable($attribute, $pos) { | 
		
	
		
			
				|  |  |  |  | 		switch ($attribute) { | 
		
	
		
			
				|  |  |  |  | 			case 'hp_max': | 
		
	
		
			
				|  |  |  |  | 			case 'mp_max': | 
		
	
		
			
				|  |  |  |  | 			case 's_hp_max': | 
		
	
		
			
				|  |  |  |  | 			case 'e_hp_max': | 
		
	
		
			
				|  |  |  |  | 			case 's_mp_max': | 
		
	
		
			
				|  |  |  |  | 			case 'e_mp_max': | 
		
	
		
			
				|  |  |  |  | 				return 1; | 
		
	
		
			
				|  |  |  |  | 			default: | 
		
	
		
			
				|  |  |  |  | 				if($char == 'self') { | 
		
	
		
			
				|  |  |  |  | 				if($attribute[0] == 's') { | 
		
	
		
			
				|  |  |  |  | 					return $pos - 1; | 
		
	
		
			
				|  |  |  |  | 				} else { | 
		
	
		
			
				|  |  |  |  | 					return 2 - $pos; | 
		
	
	
		
			
				
					|  |  |  | @ -89,37 +93,35 @@ if (!function_exists('processStatChanges')) { | 
		
	
		
			
				|  |  |  |  | 			$statsCounter = 0; | 
		
	
		
			
				|  |  |  |  | 			foreach ($attacke as $attKey => &$stat) { | 
		
	
		
			
				|  |  |  |  | 				if(is_array($stat)) { | 
		
	
		
			
				|  |  |  |  | 					//echo '<br>'.print_r($stat); | 
		
	
		
			
				|  |  |  |  | 					echo '<br>'.print_r($stat); | 
		
	
		
			
				|  |  |  |  | 					//echo '<br>dauer: '.$stat['dauer'].'/'.$stat['maxdauer']; | 
		
	
		
			
				|  |  |  |  | 					//echo '<br>wert: '.$stat['dauer']; | 
		
	
		
			
				|  |  |  |  | 					//echo '<br>operator: '; | 
		
	
		
			
				|  |  |  |  | 					//echo '<br>wert: '.$stat['wert']; | 
		
	
		
			
				|  |  |  |  | 					//echo '<br>attribut: '.getVariableName($stat['attribut'], $stat['char'], $charPos).' ('.$stat['attribut'].')'; | 
		
	
		
			
				|  |  |  |  | 					//echo '<br>value: '.$GLOBALS['kampf'][getVariableName($stat['attribut'], $stat['char'], $charPos)][getCharVariable($stat['attribut'], $stat['char'], $charPos)]; | 
		
	
		
			
				|  |  |  |  | 					//echo '<br>zAttribut: '.getVariableName($stat['zattribut'], $stat['char'], $charPos).' ('.$stat['zattribut'].')'; | 
		
	
		
			
				|  |  |  |  | //					echo '<br>value: '.$GLOBALS['kampf'][getVariableName($stat['zattribut'], $stat['char'], $charPos)][getCharVariable($stat['zattribut'], $stat['char'], $charPos)]; | 
		
	
		
			
				|  |  |  |  | 					//echo '<br>variabel-index: '.getCharVariable($stat['attribut'], $charPos); | 
		
	
		
			
				|  |  |  |  | 					//echo '<br>attribut: '.getVariableName($stat['attribut'], $charPos).' ('.$stat['attribut'].')'; | 
		
	
		
			
				|  |  |  |  | 					//echo '<br>value: '.$GLOBALS['kampf'][getVariableName($stat['attribut'], $charPos)][getCharVariable($stat['attribut'], $charPos)]; | 
		
	
		
			
				|  |  |  |  | 					//echo '<br>zAttribut: '.getVariableName($stat['zattribut'], $charPos).' ('.$stat['zattribut'].')'; | 
		
	
		
			
				|  |  |  |  | 					//echo '<br>value: '.$GLOBALS['kampf'][getVariableName($stat['zattribut'], $charPos)][getCharVariable($stat['zattribut'], $charPos)]; | 
		
	
		
			
				|  |  |  |  | 					$statsCounter++; | 
		
	
		
			
				|  |  |  |  | 					$attributWert = &$GLOBALS['kampf'][getVariableName($stat['attribut'], $stat['char'], $charPos)][getCharVariable($stat['attribut'], $stat['char'], $charPos)]; | 
		
	
		
			
				|  |  |  |  | 					$attributWert = &$GLOBALS['kampf'][getVariableName($stat['attribut'], $charPos)][getCharVariable($stat['attribut'], $charPos)]; | 
		
	
		
			
				|  |  |  |  | 					if($stat['attribut'] != $stat['zattribut']) { | 
		
	
		
			
				|  |  |  |  | 						$zAttributWert = &$GLOBALS['kampf'][getVariableName($stat['zattribut'], $stat['char'], $charPos)][getCharVariable($stat['zattribut'], $stat['char'], $charPos)]; | 
		
	
		
			
				|  |  |  |  | 						$zAttributWert = &$GLOBALS['kampf'][getVariableName($stat['zattribut'], $charPos)][getCharVariable($stat['zattribut'], $charPos)]; | 
		
	
		
			
				|  |  |  |  | 					} else { | 
		
	
		
			
				|  |  |  |  | 						$zAttributWert = &$attributWert; | 
		
	
		
			
				|  |  |  |  | 					} | 
		
	
		
			
				|  |  |  |  | 					 | 
		
	
		
			
				|  |  |  |  | 					echo '<br>operator: "'.$stat['operator'].'"'; | 
		
	
		
			
				|  |  |  |  | 					if(($stat['wirkung'] == 'always' || $stat['dauer'] == $stat['maxdauer']) && ($stat['unblockbar'] || !$GLOBALS['kampf']['aussetzen'])) { | 
		
	
		
			
				|  |  |  |  | 						switch ($stat['operator']) { | 
		
	
		
			
				|  |  |  |  | 							case '+': | 
		
	
		
			
				|  |  |  |  | 								//echo '+<br>'; | 
		
	
		
			
				|  |  |  |  | 								$stat['akk_schaden'] += getCalculatedValue($stat['formel'], $stat['wert'], $attributWert); | 
		
	
		
			
				|  |  |  |  | 								$zAttributWert += getCalculatedValue($stat['formel'], $stat['wert'], $attributWert); | 
		
	
		
			
				|  |  |  |  | 								break; | 
		
	
		
			
				|  |  |  |  | 							case '-': | 
		
	
		
			
				|  |  |  |  | 								//echo '-<br>'; | 
		
	
		
			
				|  |  |  |  | 								$stat['akk_schaden'] -= getCalculatedValue($stat['formel'], $stat['wert'], $attributWert); | 
		
	
		
			
				|  |  |  |  | 								$zAttributWert -= getCalculatedValue($stat['formel'], $stat['wert'], $attributWert); | 
		
	
		
			
				|  |  |  |  | 								break; | 
		
	
		
			
				|  |  |  |  | 							case '*': | 
		
	
		
			
				|  |  |  |  | 								//echo '*<br>'; | 
		
	
		
			
				|  |  |  |  | 								//vorherigen wert merken um später gegen rechnen zu können | 
		
	
		
			
				|  |  |  |  | 								$tmp_wert = $attributWert; | 
		
	
		
			
				|  |  |  |  | 								//echo 'tmp_wert: '.$tmp_wert.'<br>'; | 
		
	
	
		
			
				
					|  |  |  | @ -127,46 +129,46 @@ if (!function_exists('processStatChanges')) { | 
		
	
		
			
				|  |  |  |  | 								$stat['akk_schaden'] += $attributWert - $tmp_wert; | 
		
	
		
			
				|  |  |  |  | 								break; | 
		
	
		
			
				|  |  |  |  | 							case '/': | 
		
	
		
			
				|  |  |  |  | 								//echo '/<br>'; | 
		
	
		
			
				|  |  |  |  | 								//vorherigen wert merken um später gegen rechnen zu können | 
		
	
		
			
				|  |  |  |  | 								$tmp_wert = $attributWert; | 
		
	
		
			
				|  |  |  |  | 								//echo 'tmp_wert: '.$tmp_wert.'<br>'; | 
		
	
		
			
				|  |  |  |  | 								$zAttributWert /= getCalculatedValue($stat['formel'], $stat['wert'], $attributWert); | 
		
	
		
			
				|  |  |  |  | 								$stat['akk_schaden'] += $attributWert - $tmp_wert; | 
		
	
		
			
				|  |  |  |  | 								break; | 
		
	
		
			
				|  |  |  |  | 							default: | 
		
	
		
			
				|  |  |  |  | 								echo '<br>kein operator gefunden!'; | 
		
	
		
			
				|  |  |  |  | 						} | 
		
	
		
			
				|  |  |  |  | 					} | 
		
	
		
			
				|  |  |  |  | 					//echo '<br>ber. value: '.$zAttributWert; | 
		
	
		
			
				|  |  |  |  | 					//echo '<br>akk_schaden: '.$stat['akk_schaden'].'<br>'; | 
		
	
		
			
				|  |  |  |  | 					//echo 'Varname: '.getVariableName($stat['attribut'], $stat['char']).'<br>'; | 
		
	
		
			
				|  |  |  |  | 					//echo 'Vartyp: '.getCharVariable($stat['attribut'], $stat['attribut']).'<br>'; | 
		
	
		
			
				|  |  |  |  | 					//echo 'Schaden: '.getCalculatedValue($stat['schaden'], $stat['wert'], $stat['attribut']).'<br>'; | 
		
	
		
			
				|  |  |  |  | 					//echo 'Varname: '.getVariableName($stat['attribut'], $charPos).'<br>'; | 
		
	
		
			
				|  |  |  |  | 					//echo 'Schaden: '.getCalculatedValue($stat['schaden'], $stat['wert'], $attributWert).'<br>'; | 
		
	
		
			
				|  |  |  |  | 					//echo '<br>zattribut: '.$stat['zattribut']; | 
		
	
		
			
				|  |  |  |  | 
 | 
		
	
		
			
				|  |  |  |  | 					if(getVariableName($stat['zattribut'], $stat['char'], $charPos) == 'tmp_hp') { | 
		
	
		
			
				|  |  |  |  | 					if(getVariableName($stat['zattribut'], $charPos) == 'tmp_hp') { | 
		
	
		
			
				|  |  |  |  | 						//hier extra den weiteren parameter für healkonter setzen | 
		
	
		
			
				|  |  |  |  | 						$index = 3; | 
		
	
		
			
				|  |  |  |  | 						if($charPos == 1) { | 
		
	
		
			
				|  |  |  |  | 							if($stat['char'] == 'self') { | 
		
	
		
			
				|  |  |  |  | 							if($stat['zattribut'][0] == 's') { | 
		
	
		
			
				|  |  |  |  | 								$index = 3; | 
		
	
		
			
				|  |  |  |  | 							} else { | 
		
	
		
			
				|  |  |  |  | 								$index = 2; | 
		
	
		
			
				|  |  |  |  | 							} | 
		
	
		
			
				|  |  |  |  | 						} else { | 
		
	
		
			
				|  |  |  |  | 							if($stat['char'] == 'self') { | 
		
	
		
			
				|  |  |  |  | 							if($stat['zattribut'][0] == 's') { | 
		
	
		
			
				|  |  |  |  | 								$index = 2; | 
		
	
		
			
				|  |  |  |  | 							} else { | 
		
	
		
			
				|  |  |  |  | 								$index = 3; | 
		
	
		
			
				|  |  |  |  | 							} | 
		
	
		
			
				|  |  |  |  | 						} | 
		
	
		
			
				|  |  |  |  | 						$GLOBALS['kampf'][getVariableName($stat['zattribut'], $stat['char'], $charPos)][$index] = true; | 
		
	
		
			
				|  |  |  |  | 						$GLOBALS['kampf'][getVariableName($stat['zattribut'], $charPos)][$index] = true; | 
		
	
		
			
				|  |  |  |  | 					} | 
		
	
		
			
				|  |  |  |  | 
 | 
		
	
		
			
				|  |  |  |  | 
 | 
		
	
		
			
				|  |  |  |  | 					$stat['dauer']--; | 
		
	
		
			
				|  |  |  |  | 					if($stat['dauer'] < 1) { | 
		
	
		
			
				|  |  |  |  | 						if($stat['wiederherstellbar'] == true) { | 
		
	
		
			
				|  |  |  |  | 							//echo 'resette stat '.$stat['attribut'].' um den wert '.$stat['akk_schaden'].'<br>'; | 
		
	
		
			
				|  |  |  |  | 							//echo 'resette stat '.$zAttributWert.' um den wert '.$stat['akk_schaden'].'<br>'; | 
		
	
		
			
				|  |  |  |  | 							$zAttributWert -= $stat['akk_schaden']; | 
		
	
		
			
				|  |  |  |  | 						} | 
		
	
		
			
				|  |  |  |  | 						$statsCounter--; | 
		
	
	
		
			
				
					|  |  |  | 
 |