First commit
This commit is contained in:
189
app/ZnoteAAC/admin_skills.php
Normal file
189
app/ZnoteAAC/admin_skills.php
Normal file
@@ -0,0 +1,189 @@
|
||||
<?php require_once 'engine/init.php'; include 'layout/overall/header.php';
|
||||
protect_page();
|
||||
admin_only($user_data);
|
||||
|
||||
// PREP: Create a function that echos player skills
|
||||
function playerSkill($skills, $id) {
|
||||
if (!$skills) return 0;
|
||||
else {
|
||||
return $skills[$id]['value'];
|
||||
}
|
||||
}
|
||||
|
||||
// UPDATE SKILLS POST
|
||||
if (isset($_POST['pid']) && (int)$_POST['pid'] > 0) {
|
||||
$pid = (int)$_POST['pid'];
|
||||
if ($config['ServerEngine'] != 'TFS_10') $status = user_is_online($pid);
|
||||
else $status = user_is_online_10($pid);
|
||||
|
||||
if (!$status) {
|
||||
// New player level
|
||||
$level = (int)$_POST['level'];
|
||||
|
||||
// Fetch stat gain for vocation
|
||||
$statgain = $config['vocations_gain'][(int)$_POST['vocation']];
|
||||
$playercnf = $config['player'];
|
||||
|
||||
/*
|
||||
if ((int)$_POST['vocation'] !== 0) {
|
||||
// Fetch base level and stats:
|
||||
$baselevel = $config['level'];
|
||||
$basehealth = $config['health'];
|
||||
$basemana = $config['mana'];
|
||||
$basecap = $config['cap'];
|
||||
} else { // No vocation stats
|
||||
// Fetch base level and stats:
|
||||
$baselevel = $config['nvlevel'];
|
||||
$basehealth = $config['nvHealth'];
|
||||
$basemana = $config['nvMana'];
|
||||
$basecap = $config['nvCap'];
|
||||
}
|
||||
*/
|
||||
|
||||
$LevelsFromBase = $level - $playercnf['base']['level'];
|
||||
$newhp = $playercnf['base']['health'] + ($statgain['hp'] * $LevelsFromBase);
|
||||
$newmp = $playercnf['base']['mana'] + ($statgain['mp'] * $LevelsFromBase);
|
||||
$newcap = $playercnf['base']['cap'] + ($statgain['cap'] * $LevelsFromBase);
|
||||
|
||||
// Calibrate hp/mana/cap
|
||||
if ($config['ServerEngine'] != 'TFS_10') {
|
||||
mysql_update("UPDATE `player_skills` SET `value`='". (int)$_POST['fist'] ."' WHERE `player_id`='$pid' AND `skillid`='0' LIMIT 1;");
|
||||
mysql_update("UPDATE `player_skills` SET `value`='". (int)$_POST['club'] ."' WHERE `player_id`='$pid' AND `skillid`='1' LIMIT 1;");
|
||||
mysql_update("UPDATE `player_skills` SET `value`='". (int)$_POST['sword'] ."' WHERE `player_id`='$pid' AND `skillid`='2' LIMIT 1;");
|
||||
mysql_update("UPDATE `player_skills` SET `value`='". (int)$_POST['axe'] ."' WHERE `player_id`='$pid' AND `skillid`='3' LIMIT 1;");
|
||||
mysql_update("UPDATE `player_skills` SET `value`='". (int)$_POST['dist'] ."' WHERE `player_id`='$pid' AND `skillid`='4' LIMIT 1;");
|
||||
mysql_update("UPDATE `player_skills` SET `value`='". (int)$_POST['shield'] ."' WHERE `player_id`='$pid' AND `skillid`='5' LIMIT 1;");
|
||||
mysql_update("UPDATE `player_skills` SET `value`='". (int)$_POST['fish'] ."' WHERE `player_id`='$pid' AND `skillid`='6' LIMIT 1;");
|
||||
mysql_update("UPDATE `players` SET `maglevel`='". (int)$_POST['magic'] ."' WHERE `id`='$pid' LIMIT 1;");
|
||||
mysql_update("UPDATE `players` SET `vocation`='". (int)$_POST['vocation'] ."' WHERE `id`='$pid' LIMIT 1;");
|
||||
mysql_update("UPDATE `players` SET `level`='". $level ."' WHERE `id`='$pid' LIMIT 1;");
|
||||
mysql_update("UPDATE `players` SET `experience`='". level_to_experience($level) ."' WHERE `id`='$pid' LIMIT 1;");
|
||||
// Update HP/mana/cap accordingly to level & vocation
|
||||
mysql_update("UPDATE `players` SET `health`='". $newhp ."', `healthmax`='". $newhp ."', `mana`='". $newmp ."', `manamax`='". $newmp ."', `cap`='". $newcap ."' WHERE `id`='$pid' LIMIT 1;");
|
||||
} else {
|
||||
mysql_update("UPDATE `players` SET `health`='". $newhp ."', `healthmax`='". $newhp ."', `mana`='". $newmp ."', `manamax`='". $newmp ."', `cap`='". $newcap ."', `vocation`='". (int)$_POST['vocation'] ."', `skill_fist`='". (int)$_POST['fist'] ."', `skill_club`='". (int)$_POST['club'] ."', `skill_sword`='". (int)$_POST['sword'] ."', `skill_axe`='". (int)$_POST['axe'] ."', `skill_dist`='". (int)$_POST['dist'] ."', `skill_shielding`='". (int)$_POST['shield'] ."', `skill_fishing`='". (int)$_POST['fish'] ."', `maglevel`='". (int)$_POST['magic'] ."', `level`='". $level ."', `experience`='". level_to_experience($level) ."' WHERE `id`='$pid' LIMIT 1;");
|
||||
}
|
||||
?>
|
||||
<h1>Player skills updated!</h1>
|
||||
<?php
|
||||
} else {
|
||||
?>
|
||||
<font color="red" size="7">Player must be offline!</font>
|
||||
<?php
|
||||
}
|
||||
}
|
||||
|
||||
// Stage 1: Fetch name
|
||||
if (isset($_GET['name'])) {
|
||||
$name = getValue($_GET['name']);
|
||||
} else $name = false;
|
||||
//if (isset($_POST['name'])) $name = getValue($_POST['name']);
|
||||
|
||||
// Stage 2: Fetch user id and skills
|
||||
$skills = false;
|
||||
$pid = 0;
|
||||
if ($name !== false) {
|
||||
if (user_character_exist($name)) {
|
||||
$pid = user_character_id($name);
|
||||
|
||||
if ($config['ServerEngine'] != 'TFS_10') {
|
||||
$skills = mysql_select_multi("SELECT `value` FROM `player_skills` WHERE `player_id`='$pid' LIMIT 7;");
|
||||
$player = mysql_select_single("SELECT `maglevel`, `level`, `vocation` FROM `players` WHERE `id`='$pid' LIMIT 1;");
|
||||
$skills[] = array('value' => $player['maglevel']);
|
||||
$skills[] = array('value' => $player['level']);
|
||||
$skills[] = array('value' => $player['vocation']);
|
||||
} else {
|
||||
$player = mysql_select_single("SELECT `skill_fist`, `skill_club`, `skill_sword`, `skill_axe`, `skill_dist`, `skill_shielding`, `skill_fishing`, `maglevel`, `level`, `vocation` FROM `players` WHERE `id`='$pid' LIMIT 1;");
|
||||
$skills = array(
|
||||
0 => array('value' => $player['skill_fist']),
|
||||
1 => array('value' => $player['skill_club']),
|
||||
2 => array('value' => $player['skill_sword']),
|
||||
3 => array('value' => $player['skill_axe']),
|
||||
4 => array('value' => $player['skill_dist']),
|
||||
5 => array('value' => $player['skill_shielding']),
|
||||
6 => array('value' => $player['skill_fishing']),
|
||||
7 => array('value' => $player['maglevel']),
|
||||
8 => array('value' => $player['level']),
|
||||
9 => array('value' => $player['vocation'])
|
||||
);
|
||||
}
|
||||
|
||||
//data_dump($skills, false, "Player skills");
|
||||
} else $name = false;
|
||||
}
|
||||
|
||||
?>
|
||||
<form action="" method="<?php if (!$name) echo "get"; else echo "post";?>">
|
||||
<input type="hidden" name="pid" value="<?php echo $pid; ?>">
|
||||
<table class="table">
|
||||
<tr class="yellow">
|
||||
<td colspan="2"><center><font size="6">Player skills administration</font></center></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<input name="name" type="text" placeholder="Character name" <?php if ($name !== false) echo "value='$name' disabled";?>>
|
||||
<br><br>
|
||||
Vocation:<br>
|
||||
<select name="vocation" <?php if (!$name) echo "disabled";?>>
|
||||
<?php
|
||||
$vocations = $config['vocations'];
|
||||
foreach ($vocations as $vid => $vname) {
|
||||
?>
|
||||
<option value="<?php echo $vid; ?>" <?php if ($vid == playerSkill($skills, 9)) echo "selected"?> ><?php echo $vname['name']; ?></option>
|
||||
<?php
|
||||
}
|
||||
?>
|
||||
</select>
|
||||
<br><br>
|
||||
Fist fighting:<br>
|
||||
<input name="fist" type="text" <?php if (!$name) echo "disabled";?> value="<?php echo playerSkill($skills, 0); ?>">
|
||||
<br><br>
|
||||
Club fighting:<br>
|
||||
<input name="club" type="text" <?php if (!$name) echo "disabled";?> value="<?php echo playerSkill($skills, 1); ?>">
|
||||
<br><br>
|
||||
Sword fighting:<br>
|
||||
<input name="sword" type="text" <?php if (!$name) echo "disabled";?> value="<?php echo playerSkill($skills, 2); ?>">
|
||||
<br><br>
|
||||
Axe fighting:<br>
|
||||
<input name="axe" type="text" <?php if (!$name) echo "disabled";?> value="<?php echo playerSkill($skills, 3); ?>">
|
||||
<br><br>
|
||||
</td>
|
||||
<td>
|
||||
Dist fighting:<br>
|
||||
<input name="dist" type="text" <?php if (!$name) echo "disabled";?> value="<?php echo playerSkill($skills, 4); ?>">
|
||||
<br><br>
|
||||
Shield fighting:<br>
|
||||
<input name="shield" type="text" <?php if (!$name) echo "disabled";?> value="<?php echo playerSkill($skills, 5); ?>">
|
||||
<br><br>
|
||||
Fish fighting:<br>
|
||||
<input name="fish" type="text" <?php if (!$name) echo "disabled";?> value="<?php echo playerSkill($skills, 6); ?>">
|
||||
<br><br>
|
||||
Level:<br>
|
||||
<input name="level" type="text" <?php if (!$name) echo "disabled";?> value="<?php echo playerSkill($skills, 8); ?>">
|
||||
<br><br>
|
||||
Magic level:<br>
|
||||
<input name="magic" type="text" <?php if (!$name) echo "disabled";?> value="<?php echo playerSkill($skills, 7); ?>">
|
||||
<br><br>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td colspan="2">
|
||||
<?php
|
||||
if (!$name) {
|
||||
?>
|
||||
<input class="btn btn-primary" type="submit" value="Fetch character skills info">
|
||||
<?php
|
||||
} else {
|
||||
?>
|
||||
<input class="btn btn-success" type="submit" value="UPDATE SKILLS">
|
||||
<?php
|
||||
}
|
||||
?>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
<a href="admin_skills.php">Reset fields / search new character</a>
|
||||
</form>
|
||||
<?php
|
||||
// end
|
||||
include 'layout/overall/footer.php'; ?>
|
Reference in New Issue
Block a user