Guest User

Untitled

a guest
Aug 15th, 2018
98
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 6.07 KB | None | 0 0
  1. <?php
  2. $host = "127.0.0.1"; // Mysql host
  3. $user = "root"; // Mysql username
  4. $pass = "paswd"; // Mysql password
  5. $characters = "characters"; // Characters database
  6. $auth = "auth"; // Auth/realm server
  7.  
  8. mysql_connect($host, $user, $pass) or die('neprisijungta prie duomenu bazes');
  9.  
  10. function check_for_symbols($string)
  11. {
  12. $len=strlen($string);
  13. $allowed_chars="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";
  14. for($i=0;$i<$len;$i++)if(!strstr($allowed_chars,$string[$i]))
  15. return TRUE;
  16. return FALSE;
  17. }
  18.  
  19. function sha_password($user,$pass)
  20. {
  21. $user = strtoupper($user);
  22. $pass = strtoupper($pass);
  23. return SHA1($user.':'.$pass);
  24. }
  25.  
  26. function paswd_check($user, $paswd)
  27. {
  28. mysql_selectdb($auth);
  29. $data = mysql_query("select `sha_pass_hash` from `account` where `id`='$user'");
  30. $paswd0 = mysql_fetch_array($data, MYSQL_NUM);
  31. if($paswd0[0] == $paswd)
  32. return true;
  33. return false;
  34. }
  35.  
  36. function check_character($char, $acc_id)
  37. {
  38. mysql_selectdb($characters);
  39. $data = mysql_query("select * from characters where user='$N' and `account`='$acc_id'");
  40. if($data != NULL)
  41. return true
  42. return false;
  43. }
  44.  
  45. function unstuck($character)
  46. {
  47. $data = mysql_query("select id, race, class from characters where name='$character'");
  48. $data = mysql_fetch_array($data, MYSQL_NUM);
  49.  
  50. //initializing variables
  51. $map = $posX = $posY = $posZ = $posO = 0;
  52.  
  53. switch($data[1])
  54. {
  55. case 1: //Human
  56. {
  57. if($data[2] == 6) //6 = death knight
  58. {$map = 0; $posX = -8914.57f; $posY = -5662.21f; $posZ = 426.028f; $posO = 3.93485;}
  59. else{$map = 0; $posX = -8914.57f; $posY = -133.909f; $posZ = 80.5378f; $posO = 0; }
  60. }break;
  61. case 2: //Orc
  62. {
  63. if($data[2] == 6) //6 = death knight
  64. {$map = 0; $posX = -8914.57f; $posY = -5662.21f; $posZ = 426.028f; $posO = 3.93485;}
  65. else{$map = 1; $posX = -618.518f; $posY = -4251.67f; $posZ = 38.718f; $posO = 0;}
  66. }break;
  67. case 3: //Dwarf
  68. {
  69. if($data[2] == 6) //6 = death knight
  70. {$map = 0; $posX = -8914.57f; $posY = -5662.21f; $posZ = 426.028f; $posO = 3.93485;}
  71. else{$map = 1; $posX = -6230.42f; $posY = 330.232f; $posZ = 383.105f; $posO = 6.17716f;}
  72. }break;
  73. case 4: //Night Elf
  74. {
  75. if($data[2] == 6) //6 = death knight
  76. {$map = 0; $posX = -8914.57f; $posY = -5662.21f; $posZ = 426.028f; $posO = 3.93485;}
  77. else{$map = 1; $posX = 10311.3f; $posY = 831.463f; $posZ = 1326.41f; $posO = 5.69632f;}
  78. }break;
  79. case 5: //Undead
  80. {
  81. if($data[2] == 6) //6 = death knight
  82. {$map = 0; $posX = -8914.57f; $posY = -5662.21f; $posZ = 426.028f; $posO = 3.93485;}
  83. else{$map = 0; $posX = 1699.85f; $posY = 1706.56f; $posZ = 135.928f; $posO = 2.70526f;}
  84. }break;
  85. case 6: //Tauren
  86. {
  87. if($data[2] == 6) //6 = death knight
  88. {$map = 0; $posX = -8914.57f; $posY = -5662.21f; $posZ = 426.028f; $posO = 3.93485;}
  89. else{$map = 1; $posX = -2915.55f; $posY = -257.347f; $posZ = 59.2693f; $posO = 0;}
  90. }break;
  91. case 7: //Gnome
  92. {
  93. if($data[2] == 6) //6 = death knight
  94. {$map = 0; $posX = -8914.57f; $posY = -5662.21f; $posZ = 426.028f; $posO = 3.93485;}
  95. else{$map = 0; $posX = -4983.42f; $posY = 877.7f; $posZ = 274.31f; $posO = 0;}
  96. }break;
  97. case 8: //Troll
  98. {
  99. if($data[2] == 6) //6 = death knight
  100. {$map = 0; $posX = -8914.57f; $posY = -5662.21f; $posZ = 426.028f; $posO = 3.93485;}
  101. else{$map = 1; $posX = -1171.45f; $posY = -5263.65f; $posZ = 0.847728f; $posO = 0;}
  102. }break;
  103. case 9: //Goblin
  104. {
  105. if($data[2] == 6) //6 = death knight
  106. {$map = 0; $posX = -8914.57f; $posY = -5662.21f; $posZ = 426.028f; $posO = 3.93485;}
  107. else{$map = 648; $posX = -8423.78f; $posY = 1363.93f; $posZ = 104.679f; $posO = 1.56294;}
  108. }break;
  109. case 10://Blood Elf
  110. {
  111. if($data[2] == 6) //6 = death knight
  112. {$map = 0; $posX = -8914.57f; $posY = -5662.21f; $posZ = 426.028f; $posO = 3.93485;}
  113. else{$map = 530; $posX = -1171.45f; $posY = -6357.29f; $posZ = 33.4026f; $posO = 5.31605f;}
  114. }break;
  115. case 11://Draenei
  116. {
  117. if($data[2] == 6) //6 = death knight
  118. {$map = 0; $posX = -8914.57f; $posY = -5662.21f; $posZ = 426.028f; $posO = 3.93485;}
  119. else{$map = 530; $posX = -3961.64f; $posY = -13931.2f; $posZ = 100.615f; $posO = 2.08364f;}
  120. }break;
  121. case 22://Worgen
  122. {
  123. if($data[2] == 6) //6 = death knight
  124. {$map = 0; $posX = -8914.57f; $posY = -5662.21f; $posZ = 426.028f; $posO = 3.93485;}
  125. else{$map = 638; $posX = -1443.62f; $posY = 1409.88f; $posZ = 35.5561f; $posO = 3.19265f;}
  126. }break;
  127. }
  128.  
  129. mysql_query("update `characters` set `map`='$map', `position_x`='$posX', `position_y`='$posY', `position_z`='$posZ', `orientation`='".$data[1]."'";
  130. }
  131.  
  132. if($_POST['unstuck'])
  133. {
  134. $username = mysql_real_escape_string(strtoupper($_POST['username']));
  135. $password = mysql_real_escape_string(strtoupper($_POST['password']));
  136. $password = sha_password($username, $password);
  137. $character = mysql_real_escape_string(strtoupper($character));
  138.  
  139. if(!check_for_symbols($username) || !check_for_symbols($password) || !check_for_symbols($character))
  140. die("you can use only mubers and letters");
  141.  
  142. mysql_selectdb($auth) or die("cant connect to $auth database");
  143. $account = mysql_query("select `id` from `account` where `username`='$username'");
  144. if($account != NULL)
  145. {
  146. if(paswd_check($account))
  147. {
  148. if(check_character($character, $account))
  149. {
  150. $character_id = mysql_query("select id, online from characters where name='$character'");
  151. $character_id = mysql_fetch_array($character_id, MYSQL_NUM);
  152. if($character_id[1] != 1)
  153. {
  154. unstuck($character_id[0]);
  155. echo"Your character has been teleported to start zone";
  156. }else die("Your character should be offline");
  157. }else die("You have entered wrong character name or this character does not exists");
  158. }else die("You have entered wrong password or account. retype it again");
  159.  
  160. }else die('this account does not exists');
  161. }
  162. else
  163. {
  164. ?>
  165. <center>
  166. <form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="POST">
  167. Username:<input type="text" name="username"/><br />
  168. Password:<input type="password" name="password"/><br />
  169. Character Name:<input type="text" name="character"/><br />
  170. <input type="submit" name="unstuck" value="Unstuck!"/>
  171. </form>
  172. </center>
  173. <?php
  174. }
  175. ?>
Add Comment
Please, Sign In to add comment