Advertisement
DetonaSampOficial

[FILTERSCRIPT] ~ SISTEMA DE CLAN

Jul 30th, 2016
377
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pawn 10.72 KB | None | 0 0
  1.   /*
  2.     ARQUIVO BAIXADO NA DETONA SAMP
  3.    - TUDO PARA SEU SERVIDOR SAMP -
  4. WWW.detonasampoficial.blogspot.com.br
  5. */                                  
  6.  
  7.  
  8.  
  9.  
  10.  
  11.  
  12.  
  13.  
  14. #include <a_samp>
  15. #include <sscanf2>
  16. #include <streamer>
  17. #include <ZCMD>
  18. #include <foreach>
  19.  
  20. //Skype: yZeCachuleta
  21. //=============================================================
  22.                             //DEFINES
  23. //=============================================================
  24. #define SCM SendClientMessage
  25. #define PRESSED(%0)         (((newkeys & (%0)) == (%0)) && ((oldkeys & (%0)) != (%0)))
  26.  
  27.                             //COLORS
  28. #define RED                "{FFFFFF}»"
  29. #define VER                "{F81414}"
  30. #define GREEN              "{37DB45}"
  31. #define WHITE               0xFFFFFF00
  32.  
  33.  
  34. //=============================================================
  35.                             //ENUM
  36. //=============================================================
  37.  
  38. enum playerinfo
  39. {
  40.  
  41.     pClan,
  42.     pLeader
  43. };
  44. new pInfo[MAX_PLAYERS][playerinfo];
  45. //========================================================================//
  46.                             //NEWS
  47. //========================================================================//
  48. new gate5;
  49. new bool:clan5stats=false;
  50. //========================================================================//
  51. //========================================================================//
  52. //========================================================================//
  53. main()
  54. {
  55.     print("\n----------------------------------");
  56.     print(" SISTEM BY JEFFERSON // MrOvelha");
  57.     print(" SISTEM BY JEFFERSON // MrOvelha");
  58.     print(" SISTEM BY JEFFERSON // MrOvelha");
  59.     print(" SISTEM BY JEFFERSON // MrOvelha");
  60.     print(" SISTEM BY JEFFERSON // MrOvelha");
  61.     print(" SISTEM BY JEFFERSON // MrOvelha");
  62.     print(" SISTEM BY JEFFERSON // MrOvelha");
  63.     print(" SISTEM BY JEFFERSON // MrOvelha");
  64.     print("----------------------------------\n");
  65. }
  66.  
  67. public OnGameModeInit()
  68. {
  69.     SetWorldTime(14);
  70.     Gates();
  71.     Create3DTextLabel("Created By:\n{C3C3C3}Jefferson/ MrOvelha", 0x008080FF, 134.4645,-106.1480,1.4297, 20, 0, 0);
  72.     return 1;
  73. }
  74.  
  75. public OnGameModeExit()
  76. {
  77.     return 1;
  78. }
  79.  
  80. public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
  81. {
  82.     if(PRESSED(KEY_CROUCH) && IsPlayerInAnyVehicle(playerid))
  83.     {
  84.  
  85.         if(IsPlayerInRangeOfPoint(playerid, 7.0, -3.3517,-266.6953,5.4297))
  86.         {
  87.             if(pInfo[playerid][pClan] == 5)
  88.             {
  89.                 if(clan5stats == false)
  90.                 {
  91.                     clan5stats = true;
  92.                     MoveObject(gate5, -3.2000000,-268.6000100,-1.0000000,1.5);
  93.                     SCM(playerid, -1, "* {37DB45}The gate was opened");
  94.                     }else{
  95.                     clan5stats = false;
  96.                     SCM(playerid, -1, "* {37DB45}The gate was closed ");
  97.                     MoveObject(gate5, -3.2000000,-268.6000100,7.2000000,1.5);
  98.                 }
  99.             }
  100.         }
  101.     }
  102.     return 1;
  103. }
  104.  
  105. public OnPlayerSpawn(playerid)
  106. {
  107.     SetPlayerPos(playerid, 134.4645,-106.1480,1.4297);
  108.     return 1;
  109. }
  110.  
  111. //=========================================================================//
  112.                         //CAR TEST
  113. CMD:cv(playerid, params[])
  114. {
  115.     new idveiculo, Float:Pos[3];
  116.     if(sscanf(params, "d", idveiculo)) return SendClientMessage(playerid, -1, "{FF0000}ERRO: use /cv [id veiculo]");
  117.     GetPlayerPos(playerid, Pos[0], Pos[1], Pos[2]);
  118.     CreateVehicle(idveiculo, Pos[0], Pos[1], Pos[2], 1515, 0, 6, 99999);
  119.     GameTextForPlayer(playerid, "Veiculo Criado", 3000, 3);
  120.     return 1;
  121. }
  122.  
  123. //========================================================================//
  124. CMD:armas(playerid, params[])
  125. {
  126.     GivePlayerWeapon(playerid,24,100);
  127.     GivePlayerWeapon(playerid,28,100);
  128.     GivePlayerWeapon(playerid,30,100);
  129.     GivePlayerWeapon(playerid,29,100);
  130.     return 1;
  131. }
  132. CMD:ogclan(playerid, params[])
  133. {
  134.     if(IsPlayerInRangeOfPoint(playerid, 7.0, -3.3517,-266.6953,5.4297))
  135.     {
  136.         if(pInfo[playerid][pClan] == 5)
  137.         {
  138.             if(clan5stats == false)
  139.             {
  140.                 clan5stats = true;
  141.                 MoveObject(gate5, -3.2000000,-268.6000100,-1.0000000,1.5);
  142.                 SCM(playerid, -1, "* {37DB45}The gate was opened");
  143.                 }else{
  144.                 clan5stats = false;
  145.                 SCM(playerid, -1, "* {37DB45}The gate was closed ");
  146.                 MoveObject(gate5, -3.2000000,-268.6000100,7.2000000,1.5);
  147.             }
  148.         }
  149.     }
  150.     return 1;
  151. }
  152.  
  153. CMD:c(playerid,params[])
  154. {
  155.     new clanstring[128];
  156.     if(pInfo[playerid][pClan])
  157.     {
  158.         if(!strlen(params))
  159.         {
  160.             SCM(playerid, -1, ""VER" /C [Message]");
  161.             return 1;
  162.         }
  163.         format(clanstring, sizeof(clanstring), "{006400}[CLAN CHAT] %s[%d] says: {FFFFFF}%s", PlayerName(playerid), playerid, params);
  164.         SendMessageToClan(playerid, clanstring, -1);
  165.     }
  166.     else {
  167.         SCM(playerid,-1,"*"RED" You do not have the permissions.!");
  168.     }
  169.     return 1;
  170. }
  171.  
  172. CMD:kickclan(playerid, params[])
  173. {
  174.     if(pInfo[playerid][pLeader] > 0)
  175.     {
  176.         new targetid, string[128];
  177.         if(sscanf(params, "u", targetid)) return  SCM(playerid,-1,""VER" /clankick [playerid]");
  178.         if(!IsPlayerConnected(targetid)) return SCM(playerid,-1,""VER" Player is not online");
  179.         if(pInfo[playerid][pLeader] != pInfo[targetid][pClan]) return SCM(playerid, -1, "This member is not part of your clan");
  180.         pInfo[targetid][pClan] = 0;
  181.         SCM(playerid, -1, "You have been removed from the clan");
  182.         format(string, sizeof(string), "Clan Leader %s has kicked %s from the clan", PlayerName(playerid), PlayerName(targetid));
  183.         foreach(Player, i)
  184.         {
  185.             if(pInfo[i][pClan] == pInfo[playerid][pLeader])
  186.         {
  187.             SCM(i, -1, string);
  188.         }
  189.         }
  190.         SCM(targetid,WHITE,string);
  191.         }else{
  192.         SCM(playerid, -1, "You don't have permissions ");
  193.     }
  194.     return 1;
  195. }
  196.  
  197. CMD:inviteclan(playerid,params[])
  198. {
  199.  
  200.     if(pInfo[playerid][pLeader] > 0)
  201.     {
  202.         new targetid, string[128];
  203.         if(sscanf(params, "u", targetid)) return  SCM(playerid,-1,""RED" /inviteclan [playerid]");
  204.         if(!IsPlayerConnected(targetid)) return SCM(playerid,-1,""RED" Player is not online");
  205.         pInfo[targetid][pClan] = pInfo[playerid][pLeader];
  206.  
  207.         format(string, sizeof(string), "*"VER" %s have given clan status of to %s",PlayerName(playerid),PlayerName(targetid));
  208.         SCM(targetid,WHITE,string);
  209.         SendClientMessage(playerid, -1, "player tal ganhou tal tal tal");
  210.         foreach(Player, i)
  211.         {
  212.             if(pInfo[i][pClan] == pInfo[playerid][pLeader])
  213.         {
  214.             SCM(i, -1, string);
  215.         }
  216.         }
  217.         SCM(targetid,WHITE,string);
  218.         }else{
  219.         SCM(playerid, -1, "You don't have permissions ");
  220.     }
  221.     return 1;
  222. }
  223.  
  224.  
  225. CMD:cleave(playerid, params[])
  226. {
  227.     pInfo[playerid][pClan] = 0;
  228.     SCM(playerid, -1, ""VER"You have been leave from the clan");
  229.     return 1;
  230. }
  231. CMD:membersclan(playerid, params[])
  232. {
  233.     if(pInfo[playerid][pClan] > 0)
  234.     {
  235.         foreach(Player, i)
  236.         {
  237.  
  238.             if(pInfo[i][pClan] == pInfo[playerid][pClan])
  239.             {
  240.                 new string[128];
  241.                 format(string, sizeof(string), "%s {006400}[CLAN MEMBER].", PlayerName(i)),PlayerName(playerid);
  242.                 SCM(playerid, -1, string);
  243.  
  244.                 }
  245.             }
  246.         }else{
  247.         SCM(playerid, -1, "You don't have clan ");
  248.     }
  249.     return 1;
  250. }
  251.  
  252. CMD:setleaderclan(playerid, params[])
  253. {
  254.     if(IsPlayerAdmin(playerid))
  255.     {
  256.         new targetid,level,string[128];
  257.         if(sscanf(params, "ud", targetid, level)) return  SCM(playerid,-1,""VER" /setleader [playerid] [level]");
  258.         if(!IsPlayerConnected(targetid)) return SCM(playerid,-1,""RED" Player is not online");
  259.         if(level < 0 || level > 6) return SCM(playerid,-1,""RED" 0 None, 1 CLAN1, 2 CLAN2, 3 CLAN3 , 4 CLAN4, 5 CLAN5 6 CLAN6");
  260.         SendClientMessage(playerid, -1, "player tal ganhou tal tal tal");
  261.         pInfo[targetid][pClan] = level;
  262.         pInfo[targetid][pLeader] = level;
  263.  
  264.         format(string, sizeof(string), "*"VER" %s have given clan leadership status of %d to %s",PlayerName(playerid),level,PlayerName(targetid));
  265.         SCM(targetid,WHITE,string);
  266.     }else{
  267.         SCM(playerid, -1, ""RED" You can not use this command");
  268.     }
  269.     return 1;
  270. }
  271.  
  272. CMD:setclan(playerid,params[])
  273. {
  274.     if(IsPlayerAdmin(playerid))
  275.     {
  276.         new targetid,level,string[128];
  277.         if(sscanf(params, "ud", targetid, level)) return  SCM(playerid,-1,""RED" /setclan [playerid] [level]");
  278.         if(!IsPlayerConnected(targetid)) return SCM(playerid,-1,""RED" Player is not online");
  279.         if(level < 0 || level > 6) return SCM(playerid,-1,""RED" 0 None, 1 CLAN1, 2 CLAN2, 3 CLAN3 , 4 CLAN4, 5 CLAN5 6 CLAN6");
  280.         SendClientMessage(playerid, -1, "player tal ganhou tal tal tal");
  281.         pInfo[targetid][pClan] = level;
  282.  
  283.         format(string, sizeof(string), "*"VER" %s have given clan status of %d to %s",PlayerName(playerid),level,PlayerName(targetid));
  284.         SCM(targetid,WHITE,string);
  285.     }else{
  286.         SCM(playerid, -1, ""RED" You can not use this command");
  287.     }
  288.     return 1;
  289. }
  290.  
  291. CMD:skinclan(playerid, params[])
  292. {
  293.     if(pInfo[playerid][pClan] > 0)
  294.     {
  295.         switch(pInfo[playerid][pClan])
  296.         {
  297.             case 1:
  298.             {
  299.                 SetPlayerSkin(playerid, 101);
  300.             }
  301.             case 2:
  302.             {
  303.                 SetPlayerSkin(playerid, 164);
  304.             }
  305.             case 3:
  306.             {
  307.                 SetPlayerSkin(playerid, 123);
  308.             }
  309.             case 4:
  310.             {
  311.                 SetPlayerSkin(playerid, 230);
  312.             }
  313.             case 5:
  314.             {
  315.                 SetPlayerSkin(playerid, 283);
  316.             }
  317.             case 6:
  318.             {
  319.                 SetPlayerSkin(playerid, 111);
  320.             }
  321.         }
  322.     }
  323.     else return SCM(playerid, -1, "ERROR: You are not part of a oficial clan. If you are, ask your leader for clan rights.");
  324.     return 1;
  325. }
  326.  
  327. CMD:cmdclan(playerid, params[])
  328. {
  329.     if(pInfo[playerid][pClan]){
  330.     SCM(playerid, -1, "{DC143C}» {006400}/c [Clan Chat]");
  331.     SCM(playerid, -1, "{DC143C}» {006400}/kickclan [ONLY LEADER]");
  332.     SCM(playerid, -1, "{DC143C}» {006400}/inviteclan [ONLY LEADER]");
  333.     SCM(playerid, -1, "{DC143C}» {006400}/membersclan [Show Clan Members]");
  334.     SCM(playerid, -1, "{DC143C}» {006400}/skinclan [Use The Skin Clan]");
  335.     SCM(playerid, -1, "{DC143C}» {006400}/cleave [Leave from clan]");
  336.     SCM(playerid, -1, "{DC143C}» {006400}/ogclan [Opens The Gate]");
  337.     }else{
  338.     SCM(playerid, -1, ""RED" You don't have permission");
  339.     }
  340.     return 1;
  341. }
  342.  
  343. //==========================================================================//
  344.                             //STOCKS
  345. //==========================================================================//
  346. stock PlayerName(playerid)
  347. {
  348.     new ppName[24];
  349.     GetPlayerName(playerid, ppName, 24);
  350.     return ppName;
  351. }
  352.  
  353. stock GetName(playerid)
  354. {
  355.     new Nameee[MAX_PLAYER_NAME];
  356.     GetPlayerName(playerid, Nameee, sizeof(Nameee));
  357.     return Nameee;
  358. }
  359.  
  360. stock SendMessageToClan(playerid, message[], color)
  361. {
  362.     foreach(Player, i)
  363.     {
  364.         if(pInfo[i][pClan] == pInfo[playerid][pClan])
  365.         {
  366.              SCM(i, color, message);
  367.          }
  368.      }
  369.     return 1;
  370. }
  371.  
  372. //==========================================================================//
  373.                             //MAPS
  374. //==========================================================================//
  375. stock Gates()
  376. {
  377.     gate5 = CreateObject(980,-3.2000000,-268.6000100,7.2000000,0.0000000,0.0000000,182.0000000); //object(airportgate) (1)
  378.     return 1;
  379. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement