Guest User

SafeHold v0.1

a guest
Aug 26th, 2010
91
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pawn 3.18 KB | None | 0 0
  1. // Скрипт беспроблемного использования SpecialActionc и Holdingobjects не мешая друг другу.
  2. // [FS] SafeHold v0.1 by Morino_Reigan
  3. // CopyRight © SAMP-RUS TEAM 2010.
  4. // Любое распространение данного скрипта по другим сайтам категорически запрещена.
  5.  
  6. #include <a_samp>
  7. forward h_setPlayerHoldingObject(playerid,modelid,bone,x,y,z,rotx,roty,rotz);
  8. forward h_isPlayerHoldingObject(playerid);
  9. forward h_stopPlayerHoldingObject(playerid);
  10. forward h_setPlayerSpecialAction(playerid,action);
  11.  
  12. enum oinf
  13. {
  14.     holds,
  15.     hmodelid,
  16.     hbone,
  17.     Float:hx,
  18.     Float:hy,
  19.     Float:hz,
  20.     Float:hrotx,
  21.     Float:hroty,
  22.     Float:hrotz
  23. };
  24. new holdobject[MAX_PLAYERS][oinf];
  25. new pSpec[MAX_PLAYERS];
  26.  
  27. public OnFilterScriptInit()
  28. {
  29.     print("\n--------------------------------------");
  30.     print(" [FS]Safe object Hold by Morino_Reigan");
  31.     print("    Copyright © SAMP-RUS TEAM 2010");
  32.     print("                Загружен");
  33.     print("--------------------------------------\n");
  34.     return SendClientMessageToAll(0xff00ff,"Скрипт \"[FS]Safe object Hold\" by Morino_Reigan загружен администратором");
  35. }
  36.  
  37. public OnFilterScriptExit()
  38. {
  39.     print("\n--------------------------------------");
  40.     print(" [FS]Safe object Hold by Morino_Reigan");
  41.     print("    Copyright © SAMP-RUS TEAM 2010");
  42.     print("                Загружен");
  43.     print("--------------------------------------\n");
  44.     return SendClientMessageToAll(0xff00ff,"Скрипт \"[FS]Safe object Hold\" by Morino_Reigan выгружен администратором");
  45. }
  46.  
  47. public OnPlayerConnect(playerid)
  48. {
  49.     return 1;
  50. }
  51.  
  52. public OnPlayerDisconnect(playerid, reason)
  53. {
  54.     pSpec[playerid]=0;
  55.     return 1;
  56. }
  57.  
  58. public h_setPlayerHoldingObject(playerid,modelid,bone,x,y,z,rotx,roty,rotz)
  59. {
  60.     if(holdobject[playerid][holds]==1)return 1;
  61.     holdobject[playerid][holds]=1;
  62.     holdobject[playerid][hmodelid]=modelid;
  63.     holdobject[playerid][hbone]=bone;
  64.     holdobject[playerid][hx]=x;
  65.     holdobject[playerid][hy]=y;
  66.     holdobject[playerid][hz]=z;
  67.     holdobject[playerid][hrotx]=rotx;
  68.     holdobject[playerid][hroty]=roty;
  69.     holdobject[playerid][hrotz]=rotz;
  70.     SetPlayerHoldingObject(playerid,modelid,bone,x,y,z,rotx,roty,rotz);
  71.     return 0;
  72. }
  73.  
  74. public h_stopPlayerHoldingObject(playerid)
  75. {
  76.     if(holdobject[playerid][holds]==1)
  77.     StopPlayerHoldingObject(playerid),
  78.     holdobject[playerid][holds]=0;
  79.     return 0;
  80. }
  81.  
  82. public h_isPlayerHoldingObject(playerid)
  83. {
  84.     if(holdobject[playerid][holds]==1)return 1;
  85.     return 0;
  86. }
  87.  
  88. public h_setPlayerSpecialAction(playerid,action)
  89. {
  90.     pSpec[playerid]=action;
  91.     SetPlayerSpecialAction(playerid,action);
  92.     return 1;
  93. }
  94.  
  95. public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
  96. {
  97.     if(oldkeys==KEY_SECONDARY_ATTACK)
  98.     {
  99.         if(holdobject[playerid][holds]==1&&pSpec[playerid]!=0)
  100.         {
  101.             SetPlayerHoldingObject(playerid,holdobject[playerid][hmodelid],holdobject[playerid][hbone],holdobject[playerid][hx],holdobject[playerid][hy],holdobject[playerid][hz],holdobject[playerid][hrotx],holdobject[playerid][hroty],holdobject[playerid][hrotz]);
  102.         }
  103.     }
  104.     return 1;
  105. }
Advertisement
Add Comment
Please, Sign In to add comment