Guest User

Untitled

a guest
Jul 21st, 2018
161
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.42 KB | None | 0 0
  1. ptask Timer_XP[XP_TIME](playerid)
  2. {
  3. GivePlayerXP(playerid, XP_VALUE);
  4. return 1;
  5. }
  6.  
  7. ptask Timer_Hunger[18000](playerid) // 1sec - 1000, 1min - 60000, 3min - 180000
  8. {
  9. if(!Spawned[playerid]) return 1;
  10. if(PlayerInfo[playerid][pThirst] <= 0 || PlayerInfo[playerid][pHunger] <= 0)
  11. {
  12. new
  13. Float:health,
  14. Float:damage = float(5 + random(5));
  15. GetPlayerHealth(playerid, health);
  16. if(health <= damage)
  17. {
  18. // dabar nuimsim jau visas HP
  19. SendClientMessage(playerid, 0xBABABAFF, "Mirėte dėl troškulio arba alkio.");
  20. }
  21. SetPlayerHealth(playerid, health - damage);
  22. }
  23. if(PlayerInfo[playerid][pHunger] > 0) SetHungerLevel(playerid, PlayerInfo[playerid][pHunger] - 1 + random(2));
  24. if(PlayerInfo[playerid][pThirst] > 0) SetThirstLevel(playerid, PlayerInfo[playerid][pThirst] - 1 + random(2));
  25. return 1;
  26. }
  27.  
  28. stock UpdateXPString(playerid)
  29. {
  30. new
  31. string[42];
  32. format(string, sizeof string, "XP:_%d/%d___LYGIS:_%d", PlayerInfo[playerid][pXP], (PlayerInfo[playerid][pLevel] + 1) * XP_DIFFERENCE_PER_LEVEL, PlayerInfo[playerid][pLevel]);
  33. PlayerTextDrawSetString(playerid, Player_HUD_Txd[playerid][0], string);
  34. return 1;
  35. }
  36. stock UpdateHungerBar(playerid)
  37. {
  38. PlayerTextDrawHide(playerid, Player_HUD_Txd[playerid][1]);
  39. PlayerTextDrawTextSize(playerid, Player_HUD_Txd[playerid][1], 0.61 * PlayerInfo[playerid][pHunger], 4.730);
  40. PlayerTextDrawShow(playerid, Player_HUD_Txd[playerid][1]);
  41. return 1;
  42. }
  43. stock UpdateThirstBar(playerid)
  44. {
  45. PlayerTextDrawHide(playerid, Player_HUD_Txd[playerid][2]);
  46. PlayerTextDrawTextSize(playerid, Player_HUD_Txd[playerid][2], 0.61 * PlayerInfo[playerid][pThirst], 4.730);
  47. PlayerTextDrawShow(playerid, Player_HUD_Txd[playerid][2]);
  48. return 1;
  49. }
  50.  
  51. stock GivePlayerXP(playerid, value, bool:update_txd = true)
  52. {
  53. if(!Spawned[playerid]) return 1;
  54. new
  55. next_level = (PlayerInfo[playerid][pLevel] + 1) * XP_DIFFERENCE_PER_LEVEL;
  56.  
  57. PlayerInfo[playerid][pXP] += value;
  58. if(PlayerInfo[playerid][pXP] > next_level)
  59. {
  60. AddPlayerLevel(playerid);
  61. }
  62. if(update_txd)
  63. {
  64. UpdateXPString(playerid);
  65. }
  66. return 1;
  67. }
  68.  
  69. stock AddPlayerLevel(playerid)
  70. {
  71. SendClientMessage(playerid, 0xBABABAFF, "Pasiekėte naują lygį!");
  72. PlayerInfo[playerid][pLevel] ++ ;
  73. PlayerInfo[playerid][pXP] = 0;
  74. SetPlayerScore(playerid, PlayerInfo[playerid][pLevel]);
  75. return 1;
  76. }
  77.  
  78. stock GetPlayerNameEx(playerid)
  79. {
  80. new name[24];
  81. GetPlayerName(playerid, name, sizeof name);
  82. return name;
  83. }
Advertisement
Add Comment
Please, Sign In to add comment