Web Teleporter za peníze
Z WoWResource Wiki
Níže uvedený script vytvoří formulář na teleportaci hráčů do hlavních měst za peníze. - hráč musí být offline
<?php $user = 'root'; // Jméno uživatele pro připojení do databáze MySQL $pass = 'hesloveslo'; // Heslo uživatele pro připojení do databáze MySQL $realmd = 'realmd'; // Jméno Databáze s Accounty $characters = 'characters'; // Jméno Databáze s Characters $ip = '127.0.0.1'; // IP adresa serveru MySQL $cena = '100000'; // Cena za teleport v cooperech (10000 = 1g) ?> <table align="center" width="210"> <form action="<?php echo $_SERVER['PHP_SELF'] ?>" method="POST"> <tr><td>Account</td><td><input type="text" name="ucet"></td></tr> <tr><td>Character</td><td><input type="text" name="jmenopostavy"></td></tr> <tr><td>Heslo</td><td><input type="password" name="heslokacc"></td></tr> <tr><td>Místo</td><td><select name="misto"> <option value="">-- vyber místa --</option> <option value="shattrath">Shattrath City</option> <option value="sw">Stormwind</option> <option value="ironforge">Ironforge</option> <option value="darnassus">Darnassus</option> <option value="og">Orgrimmar</option> <option value="thunderbluff">Thunder Bluff</option> <option value="undercity">Undercity</option> </td></tr> <tr><td></td><td><input type="submit" Value="Teleportovat"></td></tr> </form> <tr><td colspan="2" align="center"><strong> <?php $account = addslashes($_POST['ucet']); $character = addslashes($_POST['jmenopostavy']); $password = addslashes($_POST['heslokacc']); $lokace = addslashes($_POST['misto']); function sha_password($account,$password){ $account = strtoupper($account); $password = strtoupper($password); return SHA1($account.':'.$password); } if ($account == "" || $character == "" || $password == "" || $lokace == ""): echo "Je nutno vyplnit všechny údaje"; else: $account = strtoupper($account); $heslo = sha_password($account, $password); $dbconn = mysql_connect($ip, $user, $pass) or die ("Spojení nebylo uspěšné"); mysql_select_db($realmd, $dbconn) or die ("Nepovedlo se vybrat databázy $realmd"); $acc_dotaz_sql = "SELECT id, username, sha_pass_hash FROM account WHERE username='".$account."' AND sha_pass_hash='".$heslo."'"; $acc_dotaz_sql_vysledek = mysql_query($acc_dotaz_sql, $dbconn); $row = mysql_fetch_array($acc_dotaz_sql_vysledek); if ($row["id"] == ""): echo "Chybně zadané ACC nebo Heslo"; else: $acc = $row["id"]; mysql_select_db($characters, $dbconn) or die ("Nepovedlo se vybrat databázy $characters"); $hrac_dotaz_sql = "SELECT guid, account, CAST(SUBSTRING_INDEX(SUBSTRING_INDEX(`data`, ' ', 1398), ' ', -1) AS UNSIGNED) AS `money`, name, online FROM characters WHERE account='".$acc."' AND name='".$character."' AND online=0"; $hrac_dotaz_sql_vysledek = mysql_query($hrac_dotaz_sql, $dbconn); $radek = mysql_fetch_array($hrac_dotaz_sql_vysledek); $charguid = $radek["guid"]; if ($charguid == ""): echo "Špatně zadaný název characteru, nebo jste online"; else: if ($radek["money"] < $cena ): echo "Nedostatek peněz"; else: $penizky = $radek["money"]; switch($lokace): case shattrath: $x = "-1522"; $y = "5313"; $z = "9"; $map = "530"; break; case sw: $x = "-8833"; $y = "628"; $z = "94"; $map = "0"; break; case ironforge: $x = "-5039"; $y = "-809"; $z = "495"; $map = "0"; break; case darnassus: $x = "9953"; $y = "2233"; $z = "1332"; $map = "1"; break; case og: $x = "1328"; $y = "-4379"; $z = "26"; $map = "1"; break; case thunderbluff: $x = "-1345"; $y = "195"; $z = "61"; $map = "1"; break; case undercity: $x = "1897"; $y = "236"; $z = "55"; $map = "0"; break; endswitch; $odecet = $penizky-$cena; $sqlko = "update `characters` set `data`=CONCAT(CAST(SUBSTRING_INDEX(`data`, ' ', 1397) AS CHAR), ' ', $odecet, ' ', CAST(SUBSTRING_INDEX(`data`, ' ', -(1528-1398) - 1)AS CHAR)), position_x='$x', position_y='$y', position_z='$z', map='$map' where guid='$charguid'"; mysql_query($sqlko); echo "Character $character byl Teleportován"; endif; endif; endif; mysql_close(); endif; ?> </strong></td></tr> <tr><td colspan="2" align="center">1)Teleport stojí <? $vgoldech = $cena/10000; echo $vgoldech;?> zlatých<br>2) Character musí být Offline.</td></tr> </table>
Návod
- Nastavte přihlašovací údaje do databáze a cenu za teleport. Převodní vztah činní 1g = 10000
$user = 'root'; // Jméno uživatele pro připojení do databáze MySQL $pass = 'hesloveslo'; // Heslo uživatele pro připojení do databáze MySQL $realmd = 'realmd'; // Jméno Databáze s Accounty $characters = 'characters'; // Jméno Databáze s Characters $ip = '127.0.0.1'; // IP adresa serveru MySQL $cena = '100000'; // Cena za teleport v cooperech (10000 = 1g)