Advertisement
Fastmapler

Fix for Multiple Slots

Jul 7th, 2018
184
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.89 KB | None | 0 0
  1. //Code originally from RTB Addon Player_DifferentSlotPlayers by BlockStar. Fixed by Fastmapler.
  2. //Setting the support so we can see all Slots
  3. package InventorySlotAdjustment
  4. {
  5. function Armor::onNewDatablock(%data,%this)
  6. {
  7. Parent::onNewDatablock(%data,%this);
  8. if(isObject(%this.client) && %data.maxTools != %this.client.lastMaxTools)
  9. {
  10. %this.client.lastMaxTools = %data.maxTools;
  11. commandToClient(%this.client,'PlayGui_CreateToolHud',%data.maxTools);
  12. for(%i=0;%i<%data.maxTools;%i++)
  13. {
  14. if(isObject(%this.tool[%i]))
  15. messageClient(%this.client,'MsgItemPickup',"",%i,%this.tool[%i].getID(),1);
  16. else
  17. messageClient(%this.client,'MsgItemPickup',"",%i,0,1);
  18. }
  19. }
  20. }
  21. function GameConnection::setControlObject(%this,%obj)
  22. {
  23. Parent::setControlObject(%this,%obj);
  24. if(%obj == %this.player && %obj.getDatablock().maxTools != %this.lastMaxTools)
  25. {
  26. %this.lastMaxTools = %obj.getDatablock().maxTools;
  27. commandToClient(%this,'PlayGui_CreateToolHud',%obj.getDatablock().maxTools);
  28. }
  29. }
  30. function Player::changeDatablock(%this,%data,%client)
  31. {
  32. if(%data != %this.getDatablock() && %data.maxTools != %this.client.lastMaxTools)
  33. {
  34. %this.client.lastMaxTools = %data.maxTools;
  35. commandToClient(%this.client,'PlayGui_CreateToolHud',%data.maxTools);
  36. }
  37. Parent::changeDatablock(%this,%data,%client);
  38. }
  39. function GameConnection::createPlayer(%cl, %trans)
  40. {
  41. parent::createPlayer(%cl, %trans);
  42. if(isObject(%player = %cl.player))
  43. {
  44. %data = %player.getDatablock();
  45.  
  46. %cl.lastMaxTools = %data.maxTools;
  47. commandToClient(%cl,'PlayGui_CreateToolHud',%data.maxTools);
  48. for(%i=0;%i<%data.maxTools;%i++)
  49. {
  50. if(isObject(%player.tool[%i]))
  51. messageClient(%cl,'MsgItemPickup',"",%i,%player.tool[%i].getID(),1);
  52. else
  53. messageClient(%cl,'MsgItemPickup',"",%i,0,1);
  54. }
  55. }
  56. }
  57. };
  58. activatePackage(InventorySlotAdjustment);
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement