|
|
|
<?php
|
|
|
|
|
|
|
|
function getDefaultData() {
|
|
|
|
$array = array();
|
|
|
|
$array['race_type']=array(
|
|
|
|
array(
|
|
|
|
'name' => 'Onepiece',
|
|
|
|
'id' => 1,
|
|
|
|
'gm_only' => false,
|
|
|
|
),
|
|
|
|
array(
|
|
|
|
'name' => 'Dragonball',
|
|
|
|
'id' => 2,
|
|
|
|
'gm_only' => false,
|
|
|
|
),
|
|
|
|
array(
|
|
|
|
'name' => 'NPC',
|
|
|
|
'id' => 3,
|
|
|
|
'gm_only' => true,
|
|
|
|
),
|
|
|
|
);
|
|
|
|
|
|
|
|
// Dieses Array ist zum simulieren der Datenbank da!
|
|
|
|
$array['race']=array(
|
|
|
|
|
|
|
|
array(
|
|
|
|
'name' => 'Mensch',
|
|
|
|
'type' => 2,
|
|
|
|
'id' => 1,
|
|
|
|
'hp' => 150,
|
|
|
|
'mp' => 30,
|
|
|
|
'str' => 15,
|
|
|
|
'def' => 9,
|
|
|
|
'spd' => 13,
|
|
|
|
'lck' => 4,
|
|
|
|
'stm' => 8,
|
|
|
|
'special' => false
|
|
|
|
),
|
|
|
|
array(
|
|
|
|
'name' => 'Saiyajin',
|
|
|
|
'type' => 2,
|
|
|
|
'id' => 2,
|
|
|
|
'hp' => 120,
|
|
|
|
'mp' => 30,
|
|
|
|
'str' => 18,
|
|
|
|
'def' => 10,
|
|
|
|
'spd' => 9,
|
|
|
|
'lck' => 5,
|
|
|
|
'stm' => 10,
|
|
|
|
'special' => false
|
|
|
|
),
|
|
|
|
array(
|
|
|
|
'name' => 'Dämon',
|
|
|
|
'type' => 2,
|
|
|
|
'id' => 3,
|
|
|
|
'hp' => 160,
|
|
|
|
'mp' => 50,
|
|
|
|
'str' => 8,
|
|
|
|
'def' => 9,
|
|
|
|
'spd' => 18,
|
|
|
|
'lck' => 4,
|
|
|
|
'stm' => 5,
|
|
|
|
'special' => false
|
|
|
|
),
|
|
|
|
array(
|
|
|
|
'name' => 'Mutant',
|
|
|
|
'type' => 2,
|
|
|
|
'id' => 4,
|
|
|
|
'hp' => 180,
|
|
|
|
'mp' => 15,
|
|
|
|
'str' => 13,
|
|
|
|
'def' => 9,
|
|
|
|
'spd' => 18,
|
|
|
|
'lck' => 4,
|
|
|
|
'stm' => 5,
|
|
|
|
'special' => false
|
|
|
|
),
|
|
|
|
array(
|
|
|
|
'name' => 'Cyborg',
|
|
|
|
'type' => 2,
|
|
|
|
'id' => 5,
|
|
|
|
'hp' => 250,
|
|
|
|
'mp' => 20,
|
|
|
|
'str' => 11,
|
|
|
|
'def' => 30,
|
|
|
|
'spd' => 0,
|
|
|
|
'lck' => 0,
|
|
|
|
'stm' => 0,
|
|
|
|
'special' => false
|
|
|
|
),
|
|
|
|
array(
|
|
|
|
'name' => 'Namekianer',
|
|
|
|
'type' => 2,
|
|
|
|
'id' => 6,
|
|
|
|
'hp' => 100,
|
|
|
|
'mp' => 10,
|
|
|
|
'str' => 18,
|
|
|
|
'def' => 10,
|
|
|
|
'spd' => 14,
|
|
|
|
'lck' => 6,
|
|
|
|
'stm' => 10,
|
|
|
|
'special' => false
|
|
|
|
),
|
|
|
|
array(
|
|
|
|
'name' => 'Tsufurujin',
|
|
|
|
'type' => 2,
|
|
|
|
'id' => 13,
|
|
|
|
'hp' => 50,
|
|
|
|
'mp' => 120,
|
|
|
|
'str' => 0,
|
|
|
|
'def' => 0,
|
|
|
|
'spd' => 11,
|
|
|
|
'lck' => 30,
|
|
|
|
'stm' => 0,
|
|
|
|
'special' => false,
|
|
|
|
),
|
|
|
|
|
|
|
|
// Start 'One Piece'
|
|
|
|
array(
|
|
|
|
'name' => 'Pirat',
|
|
|
|
'type' => 1,
|
|
|
|
'id' => 7,
|
|
|
|
'hp' => 100,
|
|
|
|
'mp' => 25,
|
|
|
|
'str' => 20,
|
|
|
|
'def' => 10,
|
|
|
|
'spd' => 15,
|
|
|
|
'lck' => 3,
|
|
|
|
'stm' => 7,
|
|
|
|
'special' => false
|
|
|
|
),
|
|
|
|
// In-Between Special chars
|
|
|
|
array(
|
|
|
|
'name' => 'Shichibukai',
|
|
|
|
'type' => 1,
|
|
|
|
'id' => 8,
|
|
|
|
'hp' => 1000,
|
|
|
|
'mp' => 150,
|
|
|
|
'str' => 100,
|
|
|
|
'def' => 100,
|
|
|
|
'spd' => 100,
|
|
|
|
'lck' => 100,
|
|
|
|
'stm' => 100,
|
|
|
|
'tp' => 500,
|
|
|
|
'special' => true,
|
|
|
|
'item' => 15
|
|
|
|
),
|
|
|
|
array(
|
|
|
|
'name' => 'Kaioshin',
|
|
|
|
'type' => 2,
|
|
|
|
'id' => 9,
|
|
|
|
'hp' => 1000,
|
|
|
|
'mp' => 150,
|
|
|
|
'str' => 100,
|
|
|
|
'def' => 100,
|
|
|
|
'spd' => 100,
|
|
|
|
'lck' => 100,
|
|
|
|
'stm' => 100,
|
|
|
|
'tp' => 500,
|
|
|
|
'special' => true,
|
|
|
|
'item' => 3
|
|
|
|
),
|
|
|
|
// Continue 'One Piece'
|
|
|
|
array(
|
|
|
|
'name' => 'Schwertkämpfer',
|
|
|
|
'type' => 1,
|
|
|
|
'id' => 10,
|
|
|
|
'hp' => 100,
|
|
|
|
'mp' => 25,
|
|
|
|
'str' => 25,
|
|
|
|
'def' => 10,
|
|
|
|
'spd' => 10,
|
|
|
|
'lck' => 2,
|
|
|
|
'stm' => 8,
|
|
|
|
'special' => false
|
|
|
|
),
|
|
|
|
array(
|
|
|
|
'name' => 'Grandline Maschine',
|
|
|
|
'type' => 1,
|
|
|
|
'id' => 11,
|
|
|
|
'hp' => 400,
|
|
|
|
'mp' => 5,
|
|
|
|
'str' => 5,
|
|
|
|
'def' => 5,
|
|
|
|
'spd' => 5,
|
|
|
|
'lck' => 0,
|
|
|
|
'stm' => 10,
|
|
|
|
'special' => false
|
|
|
|
),
|
|
|
|
// NPC chars
|
|
|
|
array(
|
|
|
|
'name' => 'NPC',
|
|
|
|
'type' => 3,
|
|
|
|
'id' => 12,
|
|
|
|
'hp' => 0,
|
|
|
|
'mp' => 0,
|
|
|
|
'str' => 0,
|
|
|
|
'def' => 0,
|
|
|
|
'spd' => 0,
|
|
|
|
'lck' => 0,
|
|
|
|
'stm' => 0,
|
|
|
|
'special' => true
|
|
|
|
),
|
|
|
|
array(
|
|
|
|
'name' => 'MONSTER',
|
|
|
|
'type' => 3,
|
|
|
|
'id' => 14,
|
|
|
|
'hp' => 0,
|
|
|
|
'mp' => 0,
|
|
|
|
'str' => 0,
|
|
|
|
'def' => 0,
|
|
|
|
'spd' => 0,
|
|
|
|
'lck' => 0,
|
|
|
|
'stm' => 0,
|
|
|
|
'special' => true
|
|
|
|
),
|
|
|
|
);
|
|
|
|
return $array;
|
|
|
|
}
|
|
|
|
|
|
|
|
function createLink($name, $values, $confirmation = NULL) {
|
|
|
|
if ( $confirmation !== NULL ) {
|
|
|
|
$link = '<a href="javascript:if(prompt(\'Bestätige mit der Eingabe von \\\''.$confirmation.'\\\'\')==\''.$confirmation.'\') window.location.href=\'?choose=rassen';
|
|
|
|
} else {
|
|
|
|
$link = '<a href="?choose=rassen';
|
|
|
|
}
|
|
|
|
foreach ($values as $key => $value) {
|
|
|
|
$link .= '&'.$key.'='.$value;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
if ( $confirmation !== NULL ) {
|
|
|
|
$link .= '\'">'.$name.'</a>';
|
|
|
|
} else {
|
|
|
|
$link .= '">'.$name.'</a>';
|
|
|
|
}
|
|
|
|
|
|
|
|
return $link;
|
|
|
|
}
|
|
|
|
|
|
|
|
function displayRassen($request) {
|
|
|
|
$showOverview = true;
|
|
|
|
if($request['action'] == 'setup') {
|
|
|
|
$showOverview = displayRassenSetup( $request );
|
|
|
|
} else if ($request['action'] == 'edit') {
|
|
|
|
$showOverview = displayRassenEdit( $request );
|
|
|
|
} else if ($request['action'] == 'delete') {
|
|
|
|
$showOverview = displayRassenDelete( $request );
|
|
|
|
} else if ($request['action'] == 'edit_type') {
|
|
|
|
$showOverview = displayRassenTypeEdit( $request );
|
|
|
|
} else if ($request['action'] == 'delete_type') {
|
|
|
|
$showOverview = displayRassenTypeDelete( $request );
|
|
|
|
} else if ($request['action'] == 'create') {
|
|
|
|
$showOverview = displayRassenCreate( $request );
|
|
|
|
} else if ($request['action'] == 'create_type') {
|
|
|
|
$showOverview = displayRassenTypeCreate( $request );
|
|
|
|
}
|
|
|
|
?>
|
|
|
|
<table>
|
|
|
|
<?php
|
|
|
|
$num = mysqli_num_rows(db_query('SELECT * FROM rassen_type'));
|
|
|
|
if($num == 0) {
|
|
|
|
echo '<tr><th colspan="4">'.createLink('setup rassen database', array('action' => 'setup')).'</a></th></tr>';
|
|
|
|
} else if ( $showOverview ) {
|
|
|
|
$race_types = getRaceTypes();
|
|
|
|
?>
|
|
|
|
<tr>
|
|
|
|
<th colspan="4">
|
|
|
|
Rassen-Typ Übersicht
|
|
|
|
</th>
|
|
|
|
</tr>
|
|
|
|
<tr>
|
|
|
|
<th align="center">Name</th>
|
|
|
|
<th align="center">GM-Only</th>
|
|
|
|
<th align="center" colspan="2">Aktion</th>
|
|
|
|
</tr>
|
|
|
|
<?php
|
|
|
|
foreach ($race_types as $type) {
|
|
|
|
$editLink = createLink('Edit', array('action' => 'edit_type', 'id' => $type['id']));
|
|
|
|
$deleteLink = createLink('Delete', array('action' => 'delete_type', 'id' => $type['id']), $type['name']);
|
|
|
|
echo '<tr><td>'.$type['name'].'</td><td>'.($type['gm_only']?'Ja':'Nein').'</td><td>'.$editLink.'</td><td>'.$deleteLink.'</td></tr>'."\n";
|
|
|
|
}
|
|
|
|
?>
|
|
|
|
<tr><td colspan="4" align="center"><?php echo createLink('Neuer Rassentyp', array('action' => 'create_type')); ?></td></tr>
|
|
|
|
|
|
|
|
<tr><th colspan="4"><hr/></th></tr>
|
|
|
|
<tr>
|
|
|
|
<th colspan="4">
|
|
|
|
Rassen Übersicht
|
|
|
|
</th>
|
|
|
|
</tr>
|
|
|
|
<tr>
|
|
|
|
<th align="center">Name</th>
|
|
|
|
<th align="center">Type</th>
|
|
|
|
<th align="center" colspan="2">Aktion</th>
|
|
|
|
</tr>
|
|
|
|
<?php
|
|
|
|
foreach ($race_types as $type) {
|
|
|
|
$races = getRacesByType($type);
|
|
|
|
foreach ($races as $race) {
|
|
|
|
$editLink = createLink('Edit', array('action' => 'edit', 'id' => $race['id']));
|
|
|
|
$deleteLink = createLink('Delete', array('action' => 'delete', 'id' => $race['id']), $race['name']);
|
|
|
|
echo '<tr><td>'.$race['name'].'</td><td>'.$type['name'].'</td><td>'.$editLink.'</td><td>'.$deleteLink.'</td></tr>'."\n";
|
|
|
|
}
|
|
|
|
}
|
|
|
|
?>
|
|
|
|
<tr><td colspan="4" align="center"><?php echo createLink('Neue Rasse', array('action' => 'create')); ?></td></tr>
|
|
|
|
<tr><th colspan="4"><hr/></th></tr>
|
|
|
|
<?php
|
|
|
|
} else {
|
|
|
|
?>
|
|
|
|
<tr>
|
|
|
|
<td>
|
|
|
|
<?php echo createLink('Zur Übersicht', array())."\n"; ?>
|
|
|
|
</td>
|
|
|
|
</tr>
|
|
|
|
<?php
|
|
|
|
}
|
|
|
|
?>
|
|
|
|
<tr>
|
|
|
|
<td>
|
|
|
|
<a href="<?php echo $_SERVER['PHP_SELF']; ?>">Zum Hauptmenu</a>
|
|
|
|
</td>
|
|
|
|
</tr>
|
|
|
|
</table>
|
|
|
|
<?php
|
|
|
|
}
|
|
|
|
|
|
|
|
function displayRassenSetup( $request ) {
|
|
|
|
$array = getDefaultData();
|
|
|
|
foreach($array['race_type'] as $race_type) {
|
|
|
|
db_query('INSERT INTO rassen_type(id, name, gm_only) values('.$race_type['id'].', \''.$race_type['name'].'\', '.($race_type['gm_only']?'1':'0').')');
|
|
|
|
}
|
|
|
|
foreach($array['race'] as $r) {
|
|
|
|
db_query('INSERT INTO rassen(name, type, id, hp, mp, str, def, spd, lck, stm, special) '.
|
|
|
|
'values(\''.$r['name'].'\', '.$r['type'].','.$r['id'].', '.$r['hp'].','.$r['mp'].','.$r['str'].','.$r['def'].','.$r['spd'].','.$r['lck'].','.$r['stm'].','.($r['special']?'1':'0').')');
|
|
|
|
}
|
|
|
|
return true;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
function createRassenForm( $data = NULL ) {
|
|
|
|
$action = ($data === NULL) ? 'create' : 'edit';
|
|
|
|
$items = array();
|
|
|
|
$qry = db_query('SELECT id, name FROM sp_item ORDER BY name');
|
|
|
|
while ($row = mysqli_fetch_assoc($qry)) {
|
|
|
|
$items[] = array('name' => $row['name'], 'id' => $row['id']);
|
|
|
|
}
|
|
|
|
?>
|
|
|
|
<form action="" method="POST">
|
|
|
|
<input name="persist" value="true" type="hidden" />
|
|
|
|
<?php
|
|
|
|
if ($data !== NULL) {
|
|
|
|
?>
|
|
|
|
<input name="id" value="<?php echo $data['id']; ?>" type="hidden" />
|
|
|
|
<?php
|
|
|
|
}
|
|
|
|
?>
|
|
|
|
|
|
|
|
<table>
|
|
|
|
<tr><th colspan="2">Rasse</th></tr>
|
|
|
|
<tr><th>Name</th><td><input name="name" value="<?php echo $data['name']; ?>" /></td></tr>
|
|
|
|
<tr><th>Typ</th><td>
|
|
|
|
<select name="type">
|
|
|
|
<?php
|
|
|
|
$race_types = getRaceTypes();
|
|
|
|
foreach ($race_types as $race_type) {
|
|
|
|
$selected = ($race_type['id'] == $data['type']);
|
|
|
|
?>
|
|
|
|
<option value="<?php echo $race_type['id']; ?>" <?php echo $selected?'selected':''; ?>><?php echo $race_type['name']; ?></option>
|
|
|
|
<?php
|
|
|
|
}
|
|
|
|
?>
|
|
|
|
</select>
|
|
|
|
<tr><th>HP</th><td><input name="hp" value="<?php echo $data['hp']; ?>" /></td></tr>
|
|
|
|
<tr><th>MP</th><td><input name="mp" value="<?php echo $data['mp']; ?>" /></td></tr>
|
|
|
|
<tr><th>Stärke</th><td><input name="str" value="<?php echo $data['str']; ?>" /></td></tr>
|
|
|
|
<tr><th>Verteidigung</th><td><input name="def" value="<?php echo $data['def']; ?>" /></td></tr>
|
|
|
|
<tr><th>Geschwindigkeit</th><td><input name="spd" value="<?php echo $data['spd']; ?>" /></td></tr>
|
|
|
|
<tr><th>Glück</th><td><input name="lck" value="<?php echo $data['lck']; ?>" /></td></tr>
|
|
|
|
<tr><th>Ausdauer</th><td><input name="stm" value="<?php echo $data['stm']; ?>" /></td></tr>
|
|
|
|
<tr><th>Special</th><td><input name="special" <?php echo $data['special']?'checked':''; ?> type="checkbox" /></td></tr>
|
|
|
|
<tr>
|
|
|
|
<th>Item (nur Special)</th>
|
|
|
|
<td>
|
|
|
|
<select name="item">
|
|
|
|
<option value="">- Keins -</option>
|
|
|
|
<?php
|
|
|
|
foreach ($items as $item) {
|
|
|
|
$selected = $item['id'] == $data['item'] ? 'selected':'';
|
|
|
|
echo '<option value="'.$item['id'].'" '.$selected.'>'.$item['name'].'</option>'."\n";
|
|
|
|
}
|
|
|
|
?>
|
|
|
|
</select>
|
|
|
|
</td>
|
|
|
|
</tr>
|
|
|
|
<tr><td colspan="2" align="center"><input type="submit" value="<?php echo $action; ?>" /></td></tr>
|
|
|
|
</table>
|
|
|
|
</form>
|
|
|
|
<?php
|
|
|
|
}
|
|
|
|
|
|
|
|
function displayRassenCreate( $request ) {
|
|
|
|
if ( $request['persist'] ) {
|
|
|
|
$special = ($request['special']=='on') ? 'true' : 'false';
|
|
|
|
$item = ($request['item'] != NULL) ? $request['item'] : 'NULL';
|
|
|
|
$id = mysqli_fetch_row(db_query('SELECT max(id) + 1 FROM rassen'));
|
|
|
|
$id = $id[0];
|
|
|
|
|
|
|
|
$data = array('"'.$request['name'].'"', $request['type'], $request['hp'], $request['mp'], $request['str'], $request['def'], $request['spd'], $request['lck'], $request['stm'], $special, $item);
|
|
|
|
db_query('INSERT INTO rassen(id, name, type, hp, mp, str, def, spd, lck, stm, special, item) values('.$id.', '.join(',', $data).')');
|
|
|
|
return true;
|
|
|
|
} else {
|
|
|
|
createRassenForm();
|
|
|
|
return false;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
function displayRassenEdit( $request ) {
|
|
|
|
if ( $request['persist'] ) {
|
|
|
|
$special = ($request['special']=='on') ? 'true' : 'false';
|
|
|
|
$item = ($request['item'] != NULL) ? $request['item'] : 'NULL';
|
|
|
|
$data = array(
|
|
|
|
'name' => '"'.$request['name'].'"',
|
|
|
|
'type' => $request['type'],
|
|
|
|
'hp' => $request['hp'],
|
|
|
|
'mp' => $request['mp'],
|
|
|
|
'str' => $request['str'],
|
|
|
|
'def' => $request['def'],
|
|
|
|
'spd' => $request['spd'],
|
|
|
|
'lck' => $request['lck'],
|
|
|
|
'stm' => $request['stm'],
|
|
|
|
'special' => $special,
|
|
|
|
'item' => $item
|
|
|
|
);
|
|
|
|
|
|
|
|
$data_entries = array();
|
|
|
|
foreach ($data as $key => $value) {
|
|
|
|
$data_entries[] = $key.'='.$value;
|
|
|
|
}
|
|
|
|
|
|
|
|
db_query('UPDATE rassen SET '.join(', ', $data_entries).' WHERE id = '.$request['id']);
|
|
|
|
return true;
|
|
|
|
} else {
|
|
|
|
createRassenForm(getRaceById($request['id']));
|
|
|
|
return false;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
function displayRassenDelete( $request ) {
|
|
|
|
db_query('DELETE FROM rassen WHERE id = '.$request['id']);
|
|
|
|
return true;
|
|
|
|
}
|
|
|
|
|
|
|
|
function createRassenTypeForm( $data = NULL ) {
|
|
|
|
$action = ($data === NULL) ? 'create' : 'edit';
|
|
|
|
?>
|
|
|
|
<form action="" method="POST">
|
|
|
|
<input name="persist" value="true" type="hidden" />
|
|
|
|
<?php
|
|
|
|
if ($data !== NULL) {
|
|
|
|
?>
|
|
|
|
<input name="id" value="<?php echo $data['id']; ?>" type="hidden" />
|
|
|
|
<?php
|
|
|
|
}
|
|
|
|
?>
|
|
|
|
|
|
|
|
<table>
|
|
|
|
<tr><th colspan="2">Rassen-typ</th></tr>
|
|
|
|
<tr><th>Name</th><td><input name="name" value="<?php echo $data['name']; ?>" /></td></tr>
|
|
|
|
<tr><th>GM-Only</th><td><input name="gm_only" type="checkbox" <?php echo $data['gm_only']?'checked':''; ?> /></td></tr>
|
|
|
|
<tr><td colspan="2" align="center"><input type="submit" value="<?php echo $action; ?>" /></td></tr>
|
|
|
|
</table>
|
|
|
|
</form>
|
|
|
|
<?php
|
|
|
|
}
|
|
|
|
|
|
|
|
function displayRassenTypeCreate( $request ) {
|
|
|
|
if ( $request['persist'] ) {
|
|
|
|
$gm_only = ($request['gm_only']=='on') ? 'true' : 'false';
|
|
|
|
$id = mysqli_fetch_row(db_query('SELECT max(id) + 1 FROM rassen_type'));
|
|
|
|
$id = $id[0];
|
|
|
|
|
|
|
|
db_query('INSERT INTO rassen_type(id, name, gm_only) values('.$id.', "'.$request['name'].'", '.$gm_only.')');
|
|
|
|
return true;
|
|
|
|
} else {
|
|
|
|
createRassenTypeForm();
|
|
|
|
return false;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
function displayRassenTypeEdit( $request ) {
|
|
|
|
if ( $request['persist'] ) {
|
|
|
|
$gm_only = ($request['gm_only']=='on') ? 'true' : 'false';
|
|
|
|
db_query('UPDATE rassen_type SET name = "'.$request['name'].'", gm_only = '.$gm_only.' WHERE id = '.$request['id']);
|
|
|
|
return true;
|
|
|
|
} else {
|
|
|
|
createRassenTypeForm(getRaceTypeById($request['id']));
|
|
|
|
return false;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
function displayRassenTypeDelete( $request ) {
|
|
|
|
db_query('DELETE FROM rassen_type WHERE id = '.$request['id']);
|
|
|
|
return true;
|
|
|
|
}
|
|
|
|
|