<?php /* * Created on 31.05.2011 * * @copyright (c) 2011 animegame.eu * @license http://www.gnu.org/licenses/gpl-3.0.html GNU General Public Licence * */ ?> <?php function displayAttackenMenu($action, $attackname, $attackid, $depth, $name, $starke, $verteidigung, $speed, $hp, $mp, $rassen, $level, $geld, $options, $type, $info, $req_atk, $req_lvl, $Frucht, $runden, $maxlvl) { if($action === NULL){ ?> <table> <tr> <th>Attacken</th> </tr> <tr> <td><a href="<?php echo $_SERVER['PHP_SELF']; ?>?choose=attacken&action=create">Attacke erstellen</a> </td> </tr> <tr> <td><a href="<?php echo $_SERVER['PHP_SELF']; ?>?choose=attacken&action=edit">Attacke editieren</a> </td> </tr> <tr> <td><a href="<?php echo $_SERVER['PHP_SELF']; ?>?choose=attacken&action=delete">Attacke löschen</a> </td> </tr> <tr> <th>Attackenset-Conditions</th> </tr> <tr> <td><a href="<?php echo $_SERVER['PHP_SELF']; ?>?choose=attacken">Condition erstellen</a> </td> </tr> <tr> <td><a href="<?php echo $_SERVER['PHP_SELF']; ?>?choose=attacken">Condition editieren</a> </td> </tr> <tr> <td><a href="<?php echo $_SERVER['PHP_SELF']; ?>?choose=attacken">Condition löschen</a> </td> </tr> <tr> <td><br> </td> </tr> <tr> <td><a href="<?php echo $_SERVER['PHP_SELF']; ?>">Zum Hauptmenu</a><br> </td> </tr> </table> <?php } else if(($action == 'delete' || $action == 'edit') && $attackname === NULL && $attackid === NULL){ searchfirstAttack($action); } else if(($action == 'delete' || $action == 'edit') && $attackid === NULL){ searchsecondAttack($action, $attackname); } else if(($action == 'create' || $action == 'edit') && $depth === NULL){ createOrEditAttack($action, $attackid); } else if($action == 'create' && $depth == 1){ createAttack($attackname, $Frucht, $starke, $verteidigung, $speed, $hp, $mp, $rassen, $level, $geld, $options, $type, $info, $req_atk, $req_lvl, $runden, $maxlvl); } else if($action == 'delete' && $depth >= 1){ deleteAttack($attackid, $depth); } else if($action == 'edit' && $depth == 1){ editAttack($attackname, $attackid, $Frucht, $starke, $verteidigung, $speed, $hp, $mp, $rassen, $level, $geld, $options, $type, $info, $req_atk, $req_lvl, $runden, $maxlvl); } } function searchfirstAttack($action) { ?> <form action="" method="POST"> <input name="choose" value="attacken" type="hidden"></input> <input name="action" value="<?php echo $action; ?>" type="hidden"></input> <table> <tr> <th colspan="2">Attacke suchen</th> </tr> <tr> <td><input name="attackname"> </td> <td><input type="submit" name="suche"> </td> </tr> <tr> <td><a href="<?php echo $_SERVER['PHP_SELF']; ?>">Zum Hauptmenu</a><br> </td> </tr> </table> </form> <?php } function searchsecondAttack($action, $attackname) { $qry = mysql_query('Select name,id from attacken where name like \'%'.$attackname.'%\''); ?> <form action="" method="POST"> <input name="choose" value="attacken" type="hidden"></input> <input name="action" value="<?php echo $action; ?>" type="hidden"></input> <?php if($action == 'delete'){ echo '<input name="depth" value="1" type="hidden"></input>'; }?> <table> <tr> <th colspan="2">Attacke auswählen</th> </tr> <tr> <td><select name="attackid"> <?php while($row = mysql_fetch_assoc($qry)){ echo '<option value="'.$row['id'].'">'.$row['name'].'</option>\n'; } ?> </select> </td> <td><input type="submit" name="auswählen"> </td> </tr> <tr> <td><a href="<?php echo $_SERVER['PHP_SELF']; ?>">Zum Hauptmenu</a><br> </td> </tr> </table> </form> <?php } function createOrEditAttack($action, $attackid) { if($action == 'edit'){ $row = mysql_fetch_assoc(mysql_query('Select * from attacken where id ='.$attackid)); } //Alle attacken auslesen $att_qry = mysql_query('SELECT id,name FROM attacken WHERE info not like \'%NPC%\' ORDER BY name'); $available_attacks = array(); while($attacks = mysql_fetch_assoc($att_qry)) { $available_attacks[] = array($attacks['id'], $attacks['name']); } $used_attacks = explode(',', $row['req_atk']); ?> <form action="" method="POST"> <input name="choose" value="attacken" type="hidden"></input> <input name="action" value="<?php echo $action; ?>" type="hidden"></input> <input name="attackid" value="<?php echo $attackid; ?>" type="hidden"></input> <input name="depth" value="1" type="hidden"></input> <table> <tr> <th colspan="2">Attacke</th> </tr> <tr> <td>ID:</td> <td><?php echo $attackid; ?> </td> </tr> <tr> <td>Name:</td> <td><input name='attackname' value='<?php echo $row['name']===NULL?'Attackenname':$row['name']; ?>'></input> </td> </tr> <tr> <td>Stärke:</td> <td><input name='starke' value='<?php echo $row['starke']===NULL?0:$row['starke']; ?>'></input> </td> </tr> <tr> <td>Verteidigung:</td> <td><input name='verteidigung' value='<?php echo $row['verteidigung']===NULL?0:$row['verteidigung']; ?>'></input> </td> </tr> <tr> <td>Speed:</td> <td><input name='speed' value='<?php echo $row['speed']===NULL?0:$row['speed']; ?>'></input> </td> </tr> <tr> <td>HP:</td> <td><input name='hp' value='<?php echo $row['hp']===NULL?0:$row['hp']; ?>'></input> </td> </tr> <tr> <td>MP:</td> <td><input name='mp' value='<?php echo $row['mp']===NULL?0:$row['mp']; ?>'></input> </td> </tr> <tr> <td>Rassen:</td> <td><input name='rassen' value='<?php echo $row['rassen']===NULL?0:$row['rassen']; ?>'></input> </td> </tr> <tr> <td>Level:</td> <td><input name='level' value='<?php echo $row['level']===NULL?0:$row['level']; ?>'></input> </td> </tr> <tr> <td>Geld:</td> <td><input name='geld' value='<?php echo $row['geld']===NULL?0:$row['geld']; ?>'></input> </td> </tr> <tr> <td>Type:</td> <td><select name="type"> <?php $types = array('normal', 'kaioken', 'kaioken2', 'SSJ', 'lose', 'lose2', 'hpmp', 'hp', 'tausch', 'tausch2', 'majin', 'copy', 'runde', 'frucht', 'konterhp', 'reborn', 'generic'); foreach ($types as $type) { if($row['type'] == $type){ echo '<option value="'.$type.'" selected="selected">'.$type.'</option>'; } else{ echo '<option value="'.$type.'">'.$type.'</option>'; } } ?> </select> </td> </tr> <tr> <td>Options:</td> <td><input name='options' value='<?php echo $row['options']===NULL?'{}':$row['options']; ?>'></input> </td> </tr> <tr> <td>Info:</td> <td><input name='info' value='<?php echo $row['info']===NULL?'No Info available yet!':$row['info']; ?>'></input> </td> </tr> <tr> <td>Required Attacks:</td> <td><select name="req_atk[0]"> <?php if($used_attacks[0] == 0){ echo '<option value="0" selected="selected">-Keine-</option>'; } else { echo '<option value="0">-Keine-</option>'; } foreach ($available_attacks as $attack) { if($attack[0] == $used_attacks[0]){ echo '<option value="'.$attack[0].'" selected="selected">'.$attack[1].'</option>'; } else{ echo '<option value="'.$attack[0].'">'.$attack[1].'</option>'; } } ?> </select> </td> </tr> <tr> <td></td> <td><select name="req_atk[1]"> <?php if($used_attacks[1] == 0){ echo '<option value="0" selected="selected">-Keine-</option>'; } else { echo '<option value="0">-Keine-</option>'; } foreach ($available_attacks as $attack) { if($attack[0] == $used_attacks[1]){ echo '<option value="'.$attack[0].'" selected="selected">'.$attack[1].'</option>'; } else{ echo '<option value="'.$attack[0].'">'.$attack[1].'</option>'; } } ?> </select> </td> </tr> <tr> <td></td> <td><select name="req_atk[2]"> <?php if($used_attacks[2] == 0){ echo '<option value="0" selected="selected">-Keine-</option>'; } else { echo '<option value="0">-Keine-</option>'; } foreach ($available_attacks as $attack) { if($attack[0] == $used_attacks[2]){ echo '<option value="'.$attack[0].'" selected="selected">'.$attack[1].'</option>'; } else{ echo '<option value="'.$attack[0].'">'.$attack[1].'</option>'; } } ?> </select> </td> </tr> <tr> <td>Required Level:</td> <td><input name='req_lvl' value='<?php echo $row['req_lvl']===NULL?0:$row['req_lvl']; ?>'></input> </td> </tr> <tr> <td>Frucht:</td> <td><select name="Frucht"> <?php // Fuers dropdown $f_sql = 'SELECT id, item FROM wochen_markt WHERE type = \'Teufels Frucht\' order by item'; $f_qry = mysql_query($f_sql); // <input name='Frucht' value='<?php echo $row[Frucht]===NULL?0:$row[Frucht]; '></input> if($row['Frucht'] === NULL || $row['Frucht'] == 0){ echo '<option value="0" selected="selected">-Keine-</option>'; } else { echo '<option value="0">-Keine-</option>'; } while($f_row = mysql_fetch_assoc($f_qry)){ if($f_row['id'] == $row['Frucht']){ echo '<option value="'.$f_row['id'].'" selected="selected">'.$f_row['item'].'</option>'; } else{ echo '<option value="'.$f_row['id'].'">'.$f_row['item'].'</option>'; } } ?> </select> </td> </tr> <tr> <td>Runden:</td> <td><input name='runden' value='<?php echo $row['runden']===NULL?0:$row['runden']; ?>'></input> </td> </tr> <tr> <td>Maxlvl:</td> <td><input name='maxlvl' value='<?php echo $row['maxlvl']===NULL?0:$row['maxlvl']; ?>'></input> </td> </tr> <tr> <td colspan="2"><input type="submit" value='<?php echo $action; ?>'></input> </td> </tr> <tr> <td><a href="<?php echo $_SERVER['PHP_SELF']; ?>">Zum Hauptmenu</a><br> </td> </tr> </table> </form> <?php } function createAttack($attackname, $Frucht, $starke, $verteidigung, $speed, $hp, $mp, $rassen, $level, $geld, $options, $type, $info, $req_atk, $req_lvl, $runden, $maxlvl) { json_decode($options, true); if(JSON_ERROR_NONE != json_last_error()) { echo "<br>"; echo "Attacke konnte nicht erstellt werden, syntax för options ist nicht korrekt!"; echo displayHistoryBackLink(); return; } if($Frucht != 0){ $sql = 'INSERT into attacken set name = \''.$attackname.'\', starke = '.$starke.', verteidigung = '.$verteidigung.', speed = '.$speed.', hp = '.$hp.', mp = '.$mp.', rassen = \''.$rassen.'\', level = '.$level.', geld = '.$geld.', type = \''.$type.'\', info = \''.$info.'\', req_atk = \''.$req_atk.'\', req_lvl = \''.$req_lvl.'\', Frucht = '.$Frucht.', runden = '.$runden.', maxlvl = '.$maxlvl.', options = \''.addslashes($options).'\''; } else { $sql = 'INSERT into attacken set name = \''.$attackname.'\', starke = '.$starke.', verteidigung = '.$verteidigung.', speed = '.$speed.', hp = '.$hp.', mp = '.$mp.', rassen = \''.$rassen.'\', level = '.$level.', geld = '.$geld.', type = \''.$type.'\', info = \''.$info.'\', req_atk = \''.$req_atk.'\', req_lvl = \''.$req_lvl.'\', runden = '.$runden.', maxlvl = '.$maxlvl.', options = \''.addslashes($options).'\''; } //echo $sql.'<br>'; if(!mysql_query($sql)){ echo "Fehler beim Erstellen der Attacke: Überprüfe deine Eingabe und melde erst DANACH dieses Statement einem Entwickler => $sql"; return; } logaction('Attacke '.$attackname.' wurde erstellt!'); ?> Attacke sollte nun erstellt sein!! <br> <a href="<?php echo $_SERVER['PHP_SELF']; ?>">Zum Hauptmenu</a> <br> <?php } function deleteAttack($attackid, $depth) { if($depth == 4){ $sql = 'Delete from attacken where id = '.$attackid; // echo 'Debugnachricht: '.$sql.'<br>'; mysql_query($sql); mysql_query('Delete from lernen where at_id = '.$attackid); logaction('Attacke mit id = '.$attackid.' wurde geloescht!'); } else{ for($i=0;$i<$depth;$i++){ $wirklich .= 'wirklich '; } ?> Sind sie sich <?php echo $wirklich; ?> sicher?? <a href="<?php echo $_SERVER['PHP_SELF']; ?>?choose=attacken&action=delete&attackid=<?php echo $attackid; ?>&depth=<?php echo $depth+1; ?>">ja</a> <br> <?php } ?> <a href="<?php echo $_SERVER['PHP_SELF']; ?>">Zum Hauptmenu</a> <br> <?php } function editAttack($attackname, $attackid, $Frucht, $starke, $verteidigung, $speed, $hp, $mp, $rassen, $level, $geld, $options, $type, $info, $req_atk, $req_lvl, $runden, $maxlvl) { $row = mysql_fetch_assoc(mysql_query('Select * from attacken where id ='.$attackid)); $req_atk = implode(',', $req_atk); json_decode($options, true); if(JSON_ERROR_NONE != json_last_error()) { echo "<br>"; echo "Attacke konnte nicht erstellt werden, syntax för options ist nicht korrekt!"; echo "<br>"; echo displayHistoryBackLink(); return; } if($Frucht != 0){ $sql = 'UPDATE attacken set name = \''.htmlspecialchars(urldecode($attackname)).'\', starke = '.$starke.', verteidigung = '.$verteidigung.', speed = '.$speed.', hp = '.$hp.', mp = '.$mp.', rassen = \''.$rassen.'\', level = '.$level.', geld = '.$geld.', type = \''.$type.'\', info = \''.$info.'\', req_atk = \''.$req_atk.'\', req_lvl = \''.$req_lvl.'\', Frucht = '.$Frucht.', runden = '.$runden.', maxlvl = '.$maxlvl.', options = \''.$options.'\' where id = '.$attackid; } else { $sql = 'UPDATE attacken set name = \''.htmlspecialchars(urldecode($attackname)).'\', starke = '.$starke.', verteidigung = '.$verteidigung.', speed = '.$speed.', hp = '.$hp.', mp = '.$mp.', rassen = \''.$rassen.'\', level = '.$level.', geld = '.$geld.', type = \''.$type.'\', info = \''.$info.'\', req_atk = \''.$req_atk.'\', req_lvl = \''.$req_lvl.'\', Frucht = NULL, runden = '.$runden.', maxlvl = '.$maxlvl.', options = \''.$options.'\' where id = '.$attackid; } if($row['name'] != $attackname){ mysql_query('Update lernen set name = \''.$attackname.'\' WHERE at_id ='.$attackid); } //echo 'Debugnachricht: '.$sql.'<br>'; if(!mysql_query($sql)){ echo "Fehler beim Editieren der Attacke: Überprüfe deine Eingabe und melde erst DANACH dieses Statement einem Entwickler => $sql"; return; } logaction('Attacke mit dem jetzigen Namen '.$attackname.' wurde editiert!'); ?> <a href="<?php echo $_SERVER['PHP_SELF']; ?>?choose=attacken">Zum Attackenmenü</a> , <a href="<?php echo $_SERVER['PHP_SELF']; ?>">Zum Hauptmenu</a> <br> <?php } ?>