Advertisement
Guest User

m4a_X Inventory System PHP 1.0.1

a guest
Dec 7th, 2013
176
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.94 KB | None | 0 0
  1. <?php
  2. // PHP Inventar System für SA:MP!
  3.  
  4. /*
  5. • Es werden nun beim Auswählen die Namen der Gegenstände ausgegeben anstatt der ID.
  6. • Man kann sein gewählten Gegenstand wieder in sein Inventar zurückgelegen. (Vorsicht das ganze kann durch die SQL Spalte "Benutzung" etwas buggen)
  7. • Beim Zurücklegen von einem Gegenstand wird nun auch der Name angezeigt.
  8. • Gegenstände mit der Anzahl "0" werden nicht mehr aus der Liste Entfernt.
  9. */
  10.  
  11.  
  12. class Inventory {
  13.  
  14. protected function __construct($player, $name, $params){ }
  15.  
  16. public function item($id) {
  17.  
  18. /*
  19. Die Items können ihr nach eurer Wahl anpassen,
  20. einfach eine neue case dazu machen und die ID anpassen.
  21. Wenn ihr Hilfe braucht könnt ihr euch gerne bei mir in melden.
  22.  
  23. GTA5-Forum.com @m4a_X
  24. SA-MP.de @m4a_X
  25. Skype @samp-maax
  26. */
  27.  
  28. switch($id) {
  29. case 0:
  30. $name = "Nichts";
  31. break;
  32. case 1:
  33. $name = "Schluessel";
  34. break;
  35. case 2:
  36. $name = "Brecheisen";
  37. break;
  38. case 3:
  39. $name = "Feuerzeug";
  40. break;
  41. case 4:
  42. $name = "Waffe - M4";
  43. break;
  44. case 5:
  45. $name = "Magazin (Gross)";
  46. break;
  47. case 6:
  48. $name = "Magazin (Klein)";
  49. break;
  50. }
  51. return $name;
  52. }
  53.  
  54. public function itemFunc($id, $player) {
  55. if($id == 4) {
  56. $player->giveWeapon(31, 30);
  57. } else if($id == 5) {
  58. $player->setAmmo($player->getWeapon(), 500);
  59. } else if($id == 6) {
  60. $player->setAmmo($player->getWeapon(), 100);
  61. }
  62. }
  63.  
  64. public function itemBackFunc($id, $player) {
  65. if($id == 4) { //Entfernt die Item ID 4 in meinem Fall die M4. (das ist das item 4 also case 4:)
  66. $player->setAmmo($player->getWeapon(), 0);
  67. }
  68. }
  69.  
  70. public static function inventory($player, $name) {
  71. $sql = mysql_query("SELECT * FROM `inventory` WHERE Name = '{$name}' AND Anzahl != '0'");
  72. $player->sendClientMessage(COLOR_RED, "-> Dein Inventar <-");
  73. while($row = mysql_fetch_array($sql)) {
  74. $player->sendClientMessage(COLOR_WHITE, "ItemID: {$row['ID']} | Item: ". self::item($row['Item']) ." | Anzahl: {$row['Anzahl']}");
  75. }
  76. }
  77.  
  78. public static function useItem($player, $params) {
  79. if($params != "") {
  80. $sql = mysql_query("SELECT * FROM `inventory` WHERE ID = '{$params}'");
  81. $row = mysql_fetch_array($sql);
  82. if($row['Name'] == $player->getName()) {
  83. $sql1 = mysql_query("SELECT * FROM `inventory` WHERE ID = {$params}'");
  84. $row1 = mysql_fetch_array($sql);
  85. if($row['Anzahl'] != 0) {
  86. $player->sendClientMessage(COLOR_GREEN, "Du hast das Item '". self::item($row['Item']) ."' ausgewaehlt.");
  87. $neue_anzahl = $row['Anzahl']-1;
  88. self::itemFunc($row['ID'], $player);
  89. mysql_query("UPDATE `inventory` SET Anzahl = '{$neue_anzahl}', Benutzung = '1' WHERE ID = '{$row['ID']}'");
  90. } else {
  91. $player->sendClientMessage(COLOR_RED, "Du hast das Item nicht.");
  92. }
  93. } else $player->sendClientMessage(COLOR_RED, "Das Item gehoert nicht dir!");
  94. } else $player->sendClientMessage(COLOR_RED, "BENUTZE: /use [Item ID]");
  95. }
  96.  
  97. public static function itemBack($player, $params) {
  98. if($params != "") {
  99. $sql = mysql_query("SELECT * FROM `inventory` WHERE ID = '{$params}'");
  100. $row = mysql_fetch_array($sql);
  101. if($row['Name'] == $player->getName()) {
  102. $sql1 = mysql_query("SELECT * FROM `inventory` WHERE ID = {$params}'");
  103. $row1 = mysql_fetch_array($sql);
  104. if($row['Benutzung'] != 0) {
  105. $player->sendClientMessage(COLOR_GREEN, "Du hast das Item '". self::item($row['Item']) ."' zurueckgelegt.");
  106. $neue_anzahl = $row['Anzahl']+1;
  107. self::itemBackFunc($row['ID'], $player);
  108. mysql_query("UPDATE `inventory` SET Anzahl = '{$neue_anzahl}', Benutzung = '0' WHERE ID = '{$row['ID']}'");
  109. } else {
  110. $player->sendClientMessage(COLOR_RED, "Das Item wird nicht benutzt.");
  111. }
  112. } else $player->sendClientMessage(COLOR_RED, "Das Item gehoert nicht dir!");
  113. } else $player->sendClientMessage(COLOR_RED, "BENUTZE: /unuse [Item ID]");
  114. }
  115. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement