Advertisement
Preda

SQLITE SYSTEM + ADMIN SYSYEM BETA 2

Aug 21st, 2012
182
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pawn 32.69 KB | None | 0 0
  1. //  ============================================================// CREATOR: PREDA // // CREDITS MUST STAY SAME //============================================================
  2. // CREDITS //
  3. // ZCMD ; SSCANF2 ; rBITS ; SQLITE ; YOU CAN FIND THEM IN DESCRIPTION//
  4. // THANKS TO SA-MP.COM COMUNNITY FOR TUTORIALS AND FOR ITS RESPECTOUS MEMBERS //
  5. #define FILTERSCRIPT
  6. //=======INCLUDES # DEFINES=========//
  7. #include <a_samp>
  8. #include <sscanf2>
  9. #include <zcmd>
  10. #include <rbits>
  11. #define COL_GREEN   "{6EF83C}"
  12. #define COL_RED     "{F81414}"
  13. #define COL_BLUE    "{00C0FF}"
  14. #define SPM         SendClientMessage
  15. #define SPMALL      SendClientMessageToAll
  16. //=======INCLUDES # DEFINES=========//
  17. // ============== NEW ==========//
  18. new AdminON[MAX_PLAYERS];   // ADMIN`s STATE ( ON/OFF JOB(DUTY) )
  19. //=============================//
  20.  
  21. //=======ENUM=======//
  22. new
  23.     Bit1:  g_PlayerLogged       <MAX_PLAYERS>,
  24.     Bit16: g_AdminLevel         <MAX_PLAYERS>,
  25.     Bit16: g_Score              <MAX_PLAYERS>,
  26.     Bit16: g_Kills              <MAX_PLAYERS>,
  27.     Bit16: g_Deaths             <MAX_PLAYERS>,
  28.     Bit16: g_Money              <MAX_PLAYERS>,
  29.     Bit16: g_Respect            <MAX_PLAYERS>,
  30.     Bit16: g_Mute               <MAX_PLAYERS>,
  31.     DB: Database
  32. ;
  33. //====================//
  34. //======FORWARDS=======//
  35.  
  36. //====================//
  37.  
  38. //=====STOCKS=====//
  39. stock DB_Escape(text[])
  40. {
  41.     new
  42.         ret[80 * 2],
  43.         ch,
  44.         i,
  45.         j;
  46.     while ((ch = text[i++]) && j < sizeof (ret))
  47.     {
  48.         if (ch == '\'')
  49.         {
  50.             if (j < sizeof (ret) - 2)
  51.             {
  52.                 ret[j++] = '\'';
  53.                 ret[j++] = '\'';
  54.             }
  55.         }
  56.         else if (j < sizeof (ret))
  57.         {
  58.             ret[j++] = ch;
  59.         }
  60.         else
  61.         {
  62.             j++;
  63.         }
  64.     }
  65.     ret[sizeof (ret) - 1] = '\0';
  66.     return ret;
  67. }
  68. stock IsAnyPlayerInVehicle(vehicleid)
  69. {
  70.     for(new i = 0; i < MAX_PLAYERS; i++) if (IsPlayerInVehicle(vehicleid, i)) return 1;
  71.     return 0;
  72. }
  73. stock AdminName(playerid)
  74. {
  75.     new AdminN[MAX_PLAYER_NAME];
  76.     if(IsPlayerConnected(playerid))
  77.     {
  78.         GetPlayerName(playerid, AdminN, sizeof(AdminN));
  79.     }
  80.     return AdminN;
  81. }
  82. stock pAdminAll(playerid)
  83. {
  84.     if(Bit16_Get(g_AdminLevel,playerid) >= 1)
  85.     {
  86.     }
  87.     else
  88.     {
  89.         SPM(playerid, -1, "NOT "COL_RED"ADMIN");
  90.     }
  91.     return 1;
  92. }
  93. stock pAdmin2(playerid)
  94. {
  95.     if(Bit16_Get(g_AdminLevel,playerid) >= 2)
  96.     {
  97.     }
  98.     else
  99.     {
  100.         SPM(playerid, -1, "NOT "COL_RED"ADMIN");
  101.     }
  102.     return 1;
  103. }
  104. stock pAdmin3(playerid)
  105. {
  106.     if(Bit16_Get(g_AdminLevel,playerid) >= 3)
  107.     {
  108.     }
  109.     else
  110.     {
  111.         SPM(playerid, -1, "NOT "COL_RED"ADMIN");
  112.     }
  113.     return 1;
  114. }
  115. //=====================================================//
  116. #if defined FILTERSCRIPT
  117.  
  118. public OnFilterScriptInit()
  119. {
  120.     print("\n==============================   SIGNED, Preda ==============================");
  121.     print("==============================   ALL IN ONE SCRIPT ==============================");
  122.     print("==============================   SIGNED, Preda ==============================\n");
  123.     UsePlayerPedAnims();
  124.     Database = db_open("ServerDatabase.db");
  125.     db_query(Database, "CREATE TABLE IF NOT EXISTS `USERS` (`NAME`, `PASSWORD`, `IP`, `SCORE`, `CASH`, `ADMINLEVEL`, `KILLS`, `DEATHS`, `MONEY`, `RESPECT`)");
  126.     return 1;
  127. }
  128. public OnFilterScriptExit()
  129. {
  130.     for(new i; i != MAX_PLAYERS; i++) OnPlayerDisconnect(i, 1);
  131.     db_close(Database);
  132.     return 1;
  133. }
  134.  
  135. #else
  136. #endif
  137. // DO NOT CHANGE //
  138. public OnPlayerConnect(playerid)
  139. {
  140.     new string[140];
  141.     new name1[MAX_PLAYER_NAME];
  142.     GetPlayerName(playerid, name1, sizeof(name1));
  143.     format(string, sizeof(string), "{FFFFFF}== "COL_RED"!"COL_BLUE"%s "COL_GREEN"[ID: %d] {FFFFFF}joined us"COL_RED"! {FFFFFF}==", name1, playerid);
  144.     SPMALL(0xB8860BAA, string);
  145.     SPM(playerid, -1, ""COL_BLUE"[SQLITE]Use /account In Order To See Your Current Statistics");
  146.    
  147.     new
  148.         Query[ 150 ],
  149.         DBResult: Result,
  150.         name[ MAX_PLAYER_NAME ]
  151.     ;
  152.     GetPlayerName(playerid, name, sizeof(name));
  153.     Bit1_Set(g_PlayerLogged, playerid, false);
  154.     format(Query, sizeof(Query), "SELECT `NAME` FROM `USERS` WHERE `NAME` = '%s' COLLATE NOCASE", DB_Escape(name));
  155.     Result = db_query(Database, Query);
  156.     if(db_num_rows(Result))
  157.     {
  158.         format(Query, sizeof(Query), "{FFFFFF}Welcome "COL_BLUE"%s(%d), SQLITE database found you.\n\n"COL_GREEN"Write down your "COL_RED"password in order to "COL_BLUE"LOG IN", name, playerid);
  159.         ShowPlayerDialog(playerid, 1, DIALOG_STYLE_INPUT, ""COL_BLUE"SQLITE", Query, "LOGIN", "LEAVE");
  160.     }
  161.     else
  162.     {
  163.         format(Query, sizeof(Query), "{FFFFFF}Welcome "COL_BLUE"%s(%d), "COL_BLUE"SQLITE "COL_RED"didn't found you in our "COL_RED"database\n\nWrite down your PASSWORD which you will use to LOG IN and save STATS", name, playerid);
  164.         ShowPlayerDialog(playerid, 0, DIALOG_STYLE_INPUT, ""COL_BLUE"SQLITE", Query, "REGISTER", "LEAVE");
  165.     }
  166.     db_free_result(Result);
  167.     return 1;
  168. }
  169.     //==========REGISTERING & LOGIN SYSTYEM NOTE: DONT CHANGE==========//
  170. public OnPlayerDisconnect(playerid, reason)
  171. {
  172.     new
  173.         Query[ 200 ],
  174.         name[ MAX_PLAYER_NAME ]
  175.     ;
  176.     GetPlayerName(playerid, name, sizeof(name));
  177.  
  178.     if(Bit1_Get(g_PlayerLogged, playerid) == 1)
  179.     {
  180.        
  181.         format(Query,sizeof(Query),"UPDATE `USERS` SET SCORE = '%d', CASH = '%d', ADMINLEVEL = '%d', KILLS = '%d', DEATHS = '%d', RESPECT = '%d', SKIN = '%d' WHERE `NAME` = '%s' COLLATE NOCASE",
  182.                                                                                         GetPlayerScore(playerid),
  183.                                                                                         GetPlayerMoney(playerid),
  184.                                                                                         Bit16_Get(g_AdminLevel, playerid),
  185.                                                                                         Bit16_Get(g_Kills, playerid),
  186.                                                                                         Bit16_Get(g_Deaths, playerid),
  187.                                                                                         Bit16_Get(g_Respect, playerid),
  188.                                                                                         GetPlayerSkin(playerid),
  189.                                                                                         DB_Escape(name));
  190.         db_query(Database, Query);
  191.         Bit1_Set(g_PlayerLogged, playerid, false);
  192.     }
  193.     return 1;
  194. }
  195.     //==================================================================//
  196.  
  197. public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
  198. {
  199.     new
  200.         Query[ 256 ],
  201.         DBResult: Result,
  202.         name[ MAX_PLAYER_NAME ],
  203.         ip[ 16 ]
  204.     ;
  205.     GetPlayerName(playerid, name, sizeof(name));
  206.     GetPlayerIp(playerid, ip, sizeof(ip));
  207.  
  208.     if(dialogid == 1)
  209.     {
  210.         if(response)
  211.         {
  212.             format(Query, sizeof(Query), "SELECT * FROM `USERS` WHERE `NAME` = '%s' COLLATE NOCASE AND `PASSWORD` = '%s'", DB_Escape(name), DB_Escape(inputtext));
  213.             Result = db_query(Database, Query);
  214.             if(db_num_rows(Result))
  215.             {
  216.                 new Field[ 20 ];
  217.                 db_get_field_assoc(Result, "SCORE", Field, 30);
  218.                 SetPlayerScore(playerid, strval(Field));
  219.                 db_get_field_assoc(Result, "CASH", Field, 30);
  220.                 GivePlayerMoney(playerid, strval(Field));
  221.                 db_get_field_assoc(Result, "ADMINLEVEL", Field, 30);
  222.                 Bit16_Set(g_AdminLevel, playerid, strval(Field));
  223.                 db_get_field_assoc(Result, "KILLS", Field, 30);
  224.                 Bit16_Set(g_Kills, playerid, strval(Field));
  225.                 db_get_field_assoc(Result, "DEATHS", Field, 30);
  226.                 Bit16_Set(g_Deaths, playerid, strval(Field));
  227.                 db_get_field_assoc(Result, "RESPECT", Field, 30);
  228.                 Bit16_Set(g_Respect, playerid, strval(Field));
  229.                 db_get_field_assoc(Result, "SKIN", Field, 30);
  230.                 SetPlayerSkin(playerid, strval(Field));
  231.                 Bit1_Set(g_PlayerLogged, playerid, true);
  232.                 SPM(playerid, -1, ""COL_BLUE"[SQLITE]"COL_GREEN"SUCCEFULLY LOGGED IN");
  233.                 if(Bit16_Get(g_AdminLevel, playerid) >= 1)
  234.                 {
  235.                         AdminON[playerid] = 0;
  236.                         SPM(playerid, -1, ""COL_GREEN"YOUR DUTY IS "COL_RED"0");
  237.                         SPM(playerid, -1, ""COL_GREEN"Hello, "COL_BLUE"Admin."COL_GREEN"Your CHAT is "COL_RED"/as [ADMIN SPEAK] (TEXT)");
  238.                 }
  239.             }
  240.             else
  241.             {
  242.                 format(Query, sizeof(Query), "{FFFFFF}Welcome "COL_BLUE"%s(%d), "COL_BLUE"SQLITE database found you.\n\n"COL_GREEN"Write down your "COL_RED"password in order to LOG IN", name, playerid);
  243.                 ShowPlayerDialog(playerid, 1, DIALOG_STYLE_INPUT, "{FFFFFF}Register System", Query, "LOGIN", "LEAVE");
  244.                 SPM(playerid, -1, ""COL_RED"[SQLITE] Couldn't Match Passwords, It's WRONG !");
  245.             }
  246.             db_free_result(Result);
  247.         }
  248.         else return Kick(playerid);
  249.     }
  250.     if(dialogid == 0)
  251.     {
  252.         if(response)
  253.         {
  254.             if(strlen(inputtext) > 24 || strlen(inputtext) < 3)
  255.             {
  256.                 format(Query, sizeof(Query), ""COL_GREEN"Welcome "COL_BLUE"%s(%d), "COL_BLUE"SQLITE "COL_RED"didn't found you in our database\n\n"COL_GREEN"Write down your "COL_BLUE"PASSWORD,you will "COL_RED"NEED it.", name, playerid);
  257.                 ShowPlayerDialog(playerid, 0, DIALOG_STYLE_INPUT, ""COL_BLUE"SQLITE", Query, "REGISTER", "LEAVE");
  258.                 SPM(playerid, -1, "! 3-24 characters !");
  259.             }
  260.             else
  261.             {
  262.                 format(Query, sizeof(Query), "INSERT INTO `USERS` (`NAME`, `PASSWORD`, `IP`, `SCORE`, `CASH`, `ADMINLEVEL`, `DEATHS`, `KILLS`, `RESPECT`) VALUES('%s','%s','%s', '5', '500', '0', '0','0','5')", DB_Escape(name), DB_Escape(inputtext), DB_Escape(ip));
  263.                 db_query(Database, Query);
  264.                 Bit1_Set(g_PlayerLogged, playerid, true);
  265.                 GivePlayerMoney(playerid, 500);
  266.                 SetPlayerScore(playerid, 0);
  267.                 SPM(playerid, -1, ""COL_BLUE"[SQLITE]"COL_GREEN"SUCCEFULLY LOGGED IN");
  268.             }
  269.         }
  270.         else return Kick(playerid);
  271.     }
  272.     return 1;
  273. }
  274. public OnPlayerDeath(playerid, killerid, reason)
  275. {
  276.     Bit16_Set(g_Kills,killerid,Bit16_Get(g_Kills,killerid)+1);
  277.     Bit16_Set(g_Deaths,playerid,Bit16_Get(g_Deaths,playerid)+1);
  278.     SPM(playerid, -1, ""COL_BLUE"[SQLITE]VARIABLE "COL_RED"`DEATHS` IS INCREASING");
  279.     SPM(killerid, -1, ""COL_BLUE"[SQLITE]VARIABLE "COL_GREEN"`KILLS` IS INCREASING");
  280.     return 1;
  281. }
  282.     //=================================                 ZCMD                ================================================//
  283.  
  284.     COMMAND:account(playerid,inputtext[])
  285.     {
  286.             // STATS -------------------------//
  287.             new money = Bit16_Get(g_Money, playerid);
  288.             new admin = Bit16_Get(g_AdminLevel, playerid);
  289.             new score = Bit16_Get(g_Score, playerid);
  290.             new killss = Bit16_Get(g_Kills, playerid);
  291.             new deaths = Bit16_Get(g_Deaths, playerid);
  292.             new respectt = Bit16_Get(g_Respect, playerid);
  293.             new string1[400],stats[1500],namestring[50];
  294.             format(string1, sizeof string1, ""COL_GREEN" MONEY: "COL_RED"%d "COL_GREEN"|ADMIN LEVEL : "COL_RED"%d"COL_GREEN"| SCORE: "COL_RED"%d "COL_GREEN"| KILLS: "COL_RED"%d "COL_GREEN"| DEATHS: "COL_RED"%d "COL_GREEN"| RESPECT: "COL_RED" %d", money, admin, score, killss, deaths, respectt);
  295.             format(stats, sizeof stats, "%s", string1);
  296.             format(namestring,sizeof(namestring),""COL_GREEN"Your account, "COL_BLUE"%s",AdminName(playerid));
  297.             ShowPlayerDialog(playerid,3,DIALOG_STYLE_MSGBOX,namestring,stats,"OK","OK");
  298.  
  299.             // STATS -------------------------//
  300.             return 1;
  301.     }
  302.    
  303.     COMMAND:as(playerid,inputtext[])
  304.     {
  305.         new string[150],name[MAX_PLAYER_NAME],text;
  306.         if(sscanf(inputtext,"u", text))return SPM(playerid, -1, "CORRECT: /as (ADMIN SPEAK) [TEXT]");
  307.         {
  308.             GetPlayerName(playerid, name, sizeof(name));
  309.             format(string, sizeof(string),""COL_BLUE"[%d]"COL_RED"[ID:%d]"COL_GREEN"%s{FFFFFF}:%s",Bit16_Get(g_AdminLevel, playerid),playerid,name,inputtext);
  310.             if(pAdminAll(playerid))
  311.             {
  312.                 SPMALL(-1, string);
  313.                 print(string);
  314.             }
  315.         }
  316.         return 1;
  317.     }
  318.    
  319.     COMMAND:admincmds(playerid, inputtext[])
  320.     {
  321.         if(Bit16_Get(g_AdminLevel, playerid) >= 1)
  322.         {
  323.             SPM(playerid, 0xFFA500FF, "=================================== LEVEL 1 ADMIN COMMANDS ===========================================");
  324.             SPM(playerid, 0xFFA500FF, "|LVL 1|: /to,/here,/adminon,/adminoff,/health,/armour,/ls,/sf,/lv,/(re)spawn,/chatclear |LVL 1|");
  325.             SPM(playerid, 0xFFA500FF, "=================================== LEVEL 2 ADMIN COMMANDS ===========================================");
  326.             SPM(playerid, 0xFFA500FF, "|LVL 2|: /vehicle,/respawncars,/respawncar,healthall,armourall,skin |LVL 2|");
  327.             SPM(playerid, 0xFFA500FF, "=================================== LEVEL 3 ADMIN COMMANDS ===========================================");
  328.             SPM(playerid, 0xFFA500FF, "|LVL 3|: /out(kick),lockacc(ban),/givescore(all),/giveweapon(all),/spy(spectate) |LVL 3|");
  329.         }
  330.         return 1;
  331.     }
  332.  
  333.     COMMAND:spy(playerid, inputtext[])
  334.     {
  335.         new target;
  336.         if(sscanf(inputtext,"u",target))return SPM(playerid, -1, "CORRECT: /spy [playerID/playerNAME]");
  337.         {
  338.             if(target != INVALID_PLAYER_ID && IsPlayerConnected(target))
  339.             {
  340.                 if(pAdmin3(playerid))
  341.                 {
  342.                     PlayerSpectatePlayer(playerid,target);
  343.                     new string[200],string2[200],targetname[MAX_PLAYER_NAME],ip[20];
  344.                     new Float:phealth, Float:parmour;
  345.                     GetPlayerHealth(target,phealth);
  346.                     GetPlayerArmour(target,parmour);
  347.                     GetPlayerName(target,targetname,sizeof(targetname));
  348.                     GetPlayerIp(target,ip,sizeof(ip));
  349.                     format(string,sizeof(string),""COL_BLUE"==ADMIN=="COL_GREEN"%s "COL_BLUE"is now SPECTATING "COL_GREEN"%s",AdminName(playerid),targetname);
  350.                     format(string2,sizeof(string2),""COL_BLUE"==ADMIN==Spectating "COL_GREEN"%s IP:%d"COL_BLUE",HEALTH:"COL_GREEN"%d,"COL_BLUE"ARMOUR:"COL_GREEN"%d",targetname,ip,phealth,parmour);
  351.                     SPM(playerid,-1,string2);
  352.                     if(pAdminAll(playerid))
  353.                     {
  354.                         SPMALL(-1, string);
  355.                     }
  356.                 }
  357.             }
  358.         }
  359.         return 1;
  360.     }
  361.     COMMAND:spawn(playerid, inputtext[])
  362.     {
  363.         new target;
  364.         if(sscanf(inputtext,"u",target))return SPM(playerid, -1, "CORRECT: /spawn [playerID/playerNAME]");
  365.         {
  366.             if(target != INVALID_PLAYER_ID && IsPlayerConnected(target))
  367.             {
  368.                 if(pAdmin2(playerid))
  369.                 {
  370.                     SpawnPlayer(target);
  371.                     new string[70],string1[70],targetname[MAX_PLAYER_NAME];
  372.                     GetPlayerName(target,targetname,sizeof(targetname));
  373.                     format(string,sizeof(string),""COL_BLUE"==ADMIN=="COL_GREEN"%s "COL_BLUE"SPAWNED YOU",AdminName(playerid));
  374.                     SPM(target,-1,string);
  375.                     format(string1,sizeof(string1),""COL_BLUE"==ADMIN==You SPAWNED "COL_GREEN"%s",targetname);
  376.                     SPM(playerid, -1, string1);
  377.                 }
  378.             }
  379.         }
  380.         return 1;
  381.     }
  382.    
  383.     COMMAND:giveweapon(playerid, inputtext[])
  384.     {
  385.         new target,weapon;
  386.         if(sscanf(inputtext,"ud",target,weapon))return SPM(playerid, -1, "CORRECT: /giveweapon [playerID/playerNAME] [WEAPON]");
  387.         {
  388.             if(target != INVALID_PLAYER_ID && IsPlayerConnected(target))
  389.             {
  390.                 if(pAdmin3(playerid))
  391.                 {
  392.                     GivePlayerWeapon(target, weapon, 600);
  393.                     new string[90],string1[90],targetname[MAX_PLAYER_NAME];
  394.                     GetPlayerName(target,targetname,sizeof(targetname));
  395.                     format(string,sizeof(string),""COL_BLUE"==ADMIN=="COL_GREEN"%s "COL_BLUE"gave you WEAPON ID "COL_GREEN"%d",AdminName(playerid),weapon);
  396.                     SPM(target,-1,string);
  397.                     format(string1,sizeof(string1),""COL_BLUE"==ADMIN==You gave "COL_GREEN"%s "COL_BLUE"WEAPON ID "COL_GREEN"%d",targetname,weapon);
  398.                     SPM(playerid,-1,string1);
  399.                 }
  400.                 if(pAdminAll(playerid))
  401.                 {
  402.                         new string2[80],targetname[MAX_PLAYER_NAME];
  403.                         GetPlayerName(target,targetname,sizeof(targetname));
  404.                         format(string2,sizeof(string2),""COL_BLUE"==ADMIN=="COL_GREEN"%s "COL_BLUE"gave "COL_GREEN"%s "COL_BLUE" WEAPON ID "COL_GREEN"%d",AdminName(playerid),targetname,weapon);
  405.                 }
  406.  
  407.             }
  408.         }
  409.         return 1;
  410.     }
  411.     COMMAND:giveweaponall(playerid, inputtext[])
  412.     {
  413.         new weaponn;
  414.         if(sscanf(inputtext,"u",weaponn))return SPM(playerid, -1, "CORRECT: /giveweaponall [WEAPON ID]");
  415.         {
  416.             if(pAdmin3(playerid))
  417.             {
  418.                 for(new i = 0; i < MAX_PLAYERS; i++)
  419.                 {
  420.                     GivePlayerWeapon(i,weaponn,600);
  421.                 }
  422.                 new string[250];
  423.                 format(string,sizeof(string),""COL_BLUE"==ADMIN=="COL_GREEN"%s "COL_BLUE"GAVE WEAPON "COL_GREEN"%d "COL_BLUE"TO ALL",AdminName(playerid),weaponn);
  424.                 SPMALL(-1,string);
  425.             }
  426.         }
  427.         return 1;
  428.     }
  429.     COMMAND:givescore(playerid, inputtext[])
  430.     {
  431.         new target,score;
  432.         if(sscanf(inputtext,"ud",target,score))return SPM(playerid, -1, "CORRECT: givescore [playerID/playerNAME] [AMMOUNT]");
  433.         {
  434.             if(target != INVALID_PLAYER_ID && IsPlayerConnected(target))
  435.             {
  436.                 if(pAdmin3(playerid))
  437.                 {
  438.                     SetPlayerScore(target,GetPlayerScore(target)+score);
  439.                     new string[100],string1[100],targetname[MAX_PLAYER_NAME];
  440.                     GetPlayerName(target,targetname,sizeof(targetname));
  441.                     format(string,sizeof(string),""COL_BLUE"==ADMIN=="COL_GREEN"%s "COL_BLUE"gave you "COL_GREEN"%d SCORE",AdminName(playerid),score);
  442.                     SPM(target,-1,string);
  443.                     format(string1,sizeof(string1),""COL_BLUE"==ADMIN==You gave "COL_GREEN"%s %d SCORE",targetname,score);
  444.                     SPM(playerid,-1,string1);
  445.                     if(pAdminAll(playerid))
  446.                     {
  447.                         new string2[100];
  448.                         format(string2,sizeof(string2),""COL_BLUE"==ADMIN=="COL_GREEN"%s gave %s "COL_BLUE"%d SCORE",AdminName(playerid),targetname,score);
  449.                         SPMALL(-1, string2);
  450.                     }
  451.                 }
  452.             }
  453.         }
  454.         return 1;
  455.     }
  456.     COMMAND:givescoreall(playerid, inputtext[])
  457.     {
  458.         new score;
  459.         if(sscanf(inputtext,"u",score))return SPM(playerid, -1, "CORRECT: givescoreall [AMMOUNT]");
  460.         {
  461.                 if(pAdmin3(playerid))
  462.                 {
  463.                     for(new i = 0; i < MAX_PLAYERS; i++)
  464.                     {
  465.                         SetPlayerScore(i,GetPlayerScore(i)+score);
  466.                     }
  467.                 }
  468.                 new string[70];
  469.                 format(string,sizeof(string),""COL_BLUE"==ADMIN=="COL_GREEN"%s gave %d "COL_BLUE"SCORE TO ALL",AdminName(playerid),score);
  470.                 SPMALL(-1,string);
  471.         }
  472.         return 1;
  473.     }
  474.     COMMAND:ls(playerid, inputtext[])
  475.     {
  476.         if(Bit16_Get(g_AdminLevel, playerid) >= 1)
  477.         {
  478.             SetPlayerPos(playerid, 1529.6,-1691.2,13.3);
  479.             SetPlayerInterior(playerid, 0);
  480.         }
  481.         return 1;
  482.     }
  483.    
  484.     COMMAND:lv(playerid, inputtext[])
  485.     {
  486.         if(Bit16_Get(g_AdminLevel, playerid) >= 1)
  487.         {
  488.             SetPlayerPos(playerid, 1699.2,1435.1, 10.7);
  489.             SetPlayerInterior(playerid, 0);
  490.         }
  491.         return 1;
  492.     }
  493.    
  494.     COMMAND:sf(playerid, inputtext[])
  495.     {
  496.         if(Bit16_Get(g_AdminLevel, playerid) >= 1)
  497.         {
  498.             SetPlayerPos(playerid, -1417.0,-295.8,14.1);
  499.             SetPlayerInterior(playerid, 0);
  500.         }
  501.         return 1;
  502.     }
  503.  
  504.    
  505.     COMMAND:adminson(playerid, inputtext[])
  506.     {
  507.         for(new i = 0; i < MAX_PLAYERS; i++)
  508.         {
  509.             if(IsPlayerConnected(i) && pAdminAll(playerid))
  510.             {
  511.                     SPM(playerid, 0xAA3333AA, "== ADMINS ONLINE ==");
  512.                     new string[256], adminname[MAX_PLAYER_NAME];
  513.                     GetPlayerName(playerid, adminname, sizeof(adminname));
  514.                     format(string, sizeof(string), "ADMIN %s[ID: %d] ; LEVEL %d ; AVALIABLE = %d", adminname, i, Bit16_Get(g_AdminLevel,i), AdminON[i]);
  515.                     SPM(playerid, 0xB8860BFF, string);
  516.                     SPM(playerid, 0xAA3333AA, "== ADMINS ONLINE ==");
  517.             }
  518.         }
  519.     }
  520.    
  521.     COMMAND:adminon(playerid, inputtext[])
  522.     {
  523.         if(Bit16_Get(g_AdminLevel, playerid) >= 1 && AdminON[playerid] == 0)
  524.         {
  525.             AdminON[playerid] = 1;
  526.             new string[100], adminname[MAX_PLAYER_NAME];
  527.             GetPlayerName(playerid, adminname, sizeof(adminname));
  528.             format(string, sizeof(string), "==ADMIN== %s [ID: %d] IS NOW AVALIABLE, PM HIM ==ADMIN==",adminname, playerid);
  529.             SPM(playerid, 0x33CCFFAA, string);
  530.             SetPlayerArmour(playerid, 10000);
  531.             SetPlayerHealth(playerid, 10000);
  532.             print(string);
  533.         }
  534.     }
  535.    
  536.     COMMAND:punish(playerid, inputtext[])
  537.     {
  538.         new target;
  539.         if(sscanf(inputtext,"u", target))return SPM(playerid, -1, "CORRECT: /punish [playerID/playerNAME]");
  540.         if(target != INVALID_PLAYER_ID && IsPlayerConnected(target))
  541.         {
  542.             if(Bit16_Get(g_AdminLevel, playerid) >= 2)
  543.             {
  544.                 new Float:X,Float:Y,Float:Z;
  545.                 GetPlayerPos(target, X,Y,Z);
  546.                 CreateExplosion(X,Y,Z, 1, 1000);
  547.                 new string[50], adminname[MAX_PLAYER_NAME], targetname[MAX_PLAYER_NAME];
  548.                 GetPlayerName(playerid, adminname, sizeof(adminname));
  549.                 GetPlayerName(target, targetname, sizeof(targetname));
  550.                 format(string, sizeof(string), "==ADMIN== %s [ID: %d] HAS PUNISHED %s",adminname, playerid, targetname);
  551.                 if(pAdminAll(playerid))
  552.                 {
  553.                     SPMALL(0x33CCFFAA, string);
  554.                     print(string);
  555.                 }
  556.             }
  557.         }
  558.         return 1;
  559.     }
  560.    
  561.     COMMAND:respawncar(playerid, inputtext[])
  562.     {
  563.         if(Bit16_Get(g_AdminLevel, playerid) >= 1 && IsPlayerInAnyVehicle(playerid))
  564.         {
  565.             SetVehicleToRespawn(GetPlayerVehicleID(playerid));
  566.             new string[70];
  567.             format(string,sizeof(string),""COL_BLUE"==ADMIN=="COL_RED"%s respawned VEHICLE "COL_GREEN"%d",AdminName(playerid), GetPlayerVehicleID(playerid));
  568.             if(pAdminAll(playerid))
  569.             {
  570.                 SPMALL(-1, string);
  571.                 print(string);
  572.             }
  573.         }
  574.         return 1;
  575.     }
  576.        
  577.    
  578.     COMMAND:to(playerid, inputtext[])
  579.     {
  580.         new target;
  581.         if(sscanf(inputtext,"u",target))return SPM(playerid, -1, "CORRECT: /to [playerID/playerNAME]");
  582.         if(target !=INVALID_PLAYER_ID && IsPlayerConnected(target))
  583.         {
  584.             if(Bit16_Get(g_AdminLevel, playerid) >= 1)
  585.             {
  586.                 new Float:x,Float:y,Float:z;
  587.                 GetPlayerPos(target, x, y, z);
  588.                 SetPlayerPos(playerid, x, y, z);
  589.                 new string[50],string1[50],targetname[MAX_PLAYER_NAME];
  590.                 GetPlayerName(target,targetname,sizeof(targetname));
  591.                 format(string,sizeof(string),""COL_BLUE"==ADMIN==You went TO "COL_GREEN"%s",targetname);
  592.                 SPM(playerid,-1,string);
  593.                 format(string1,sizeof(string1),""COL_BLUE"==ADMIN=="COL_RED"%s "COL_GREEN"went to you",AdminName(playerid));
  594.                 SPM(target,-1,string1);
  595.                 print(string);
  596.                 print(string1);
  597.             }
  598.         }
  599.         return 1;
  600.     }
  601.    
  602.     COMMAND:here(playerid, inputtext[])
  603.     {
  604.         new target;
  605.         if(sscanf(inputtext,"u",target))return SPM(playerid, -1, "CORRECT: /here [playerID/playerNAME]");
  606.         if(target !=INVALID_PLAYER_ID && IsPlayerConnected(target))
  607.         {
  608.             if(Bit16_Get(g_AdminLevel, playerid) >= 1)
  609.             {
  610.                 new Float:x,Float:y,Float:z;
  611.                 GetPlayerPos(playerid, x, y, z);
  612.                 SetPlayerPos(target, x, y, z);
  613.                 new string[50],string1[50],targetname[MAX_PLAYER_NAME];
  614.                 GetPlayerName(target,targetname,sizeof(targetname));
  615.                 format(string,sizeof(string),""COL_BLUE"==ADMIN==You GOT here "COL_GREEN"%s",targetname);
  616.                 SPM(playerid,-1,string);
  617.                 format(string1,sizeof(string1),""COL_BLUE"==ADMIN=="COL_RED"%s "COL_GREEN"got you here",AdminName(playerid));
  618.                 SPM(target,-1,string1);
  619.                 print(string);
  620.                 print(string1);
  621.             }
  622.         }
  623.         return 1;
  624.     }
  625.    
  626.     COMMAND:respect(playerid, inputtext[])
  627.     {
  628.         new target;
  629.         if(sscanf(inputtext,"u",target))return SPM(playerid, -1, "CORRECT: /respect [playerID/playerNAME]");
  630.         if(target !=INVALID_PLAYER_ID && IsPlayerConnected(target))
  631.         {
  632.             Bit16_Set(g_Respect,target,Bit16_Get(g_Respect,target)+1);
  633.             new string[90],targetstring[90],targetname[MAX_PLAYER_NAME];
  634.             GetPlayerName(target,targetname,sizeof(targetname));
  635.             format(targetstring,sizeof(targetstring),""COL_BLUE"[SQLITE]YOU GAVE %s "COL_RED"+1 "COL_GREEN"RESPECT.", targetname);
  636.             format(string, sizeof(string),""COL_BLUE"[SQLITE]%s gave you "COL_RED"+1 "COL_GREEN"RESPECT.",AdminName(playerid));
  637.             SPM(target, -1, string);
  638.             SPM(playerid, -1, targetstring);
  639.             print(string);
  640.             print(targetstring);
  641.         }
  642.         return 1;
  643.     }
  644.    
  645.     COMMAND:chatclear(playerid, inputtext[])
  646.     {
  647.         if(Bit16_Get(g_AdminLevel, playerid) >= 1)
  648.         {
  649.             for(new i = 0; i < 50; i++) SPMALL(-1," ");
  650.             new string[60];
  651.             format(string,sizeof(string),""COL_BLUE" == "COL_RED"%s CLEARED CHAT "COL_BLUE"==",AdminName(playerid));
  652.             SPMALL(-1, string);
  653.             print(string);
  654.         }
  655.         return 1;
  656.     }
  657.        
  658.     COMMAND:respawncars(playerid, inputtext[])
  659.     {
  660.         if(pAdmin2(playerid))
  661.         for(new car = 0; car < MAX_VEHICLES; car++)
  662.         {
  663.             if(IsAnyPlayerInVehicle(car))
  664.             {
  665.             }
  666.             else
  667.             {
  668.                 SetVehicleToRespawn(car);
  669.             }
  670.         }
  671.         new string[130], adminname[MAX_PLAYER_NAME];
  672.         GetPlayerName(playerid, adminname, sizeof(adminname));
  673.         format(string, sizeof(string), ""COL_BLUE"==ADMIN==  All cars respawned by "COL_RED"%s", adminname);
  674.         SPMALL(0x33CCFFAA,string);
  675.         print(string);
  676.         return 1;
  677.     }
  678.    
  679.     COMMAND:adminoff(playerid, inputtext[])
  680.     {
  681.         if(Bit16_Get(g_AdminLevel, playerid) >= 1 && AdminON[playerid] == 1)
  682.         {
  683.             AdminON[playerid] = 0;
  684.             new string[100], adminname[MAX_PLAYER_NAME];
  685.             GetPlayerName(playerid, adminname, sizeof(adminname));
  686.             format(string, sizeof(string), "==ADMIN== %s [ID: %d] IS NOW UNAVALIABLE ==ADMIN==",adminname, playerid);
  687.             SPM(playerid, 0x33CCFFAA, string);
  688.             SetPlayerHealth(playerid, 100);
  689.             SetPlayerArmour(playerid, 0);
  690.             print(string);
  691.         }
  692.     }
  693.            
  694.  
  695.     COMMAND:admin(playerid,inputtext[])
  696.     {
  697.  
  698.         new target, alvl;
  699.         if(sscanf(inputtext,"ud",target,alvl))return SPM(playerid,0xff0000FF,"CORRECT: /admin [playerID/NAME] [ADMIN LEVEL]");
  700.         if(target != INVALID_PLAYER_ID && IsPlayerConnected(target))
  701.         {
  702.             if(alvl >= 0 || alvl <=5)
  703.             {
  704.                 if(IsPlayerAdmin(playerid) || Bit16_Get(g_AdminLevel, playerid) == 5)
  705.                 {
  706.                     Bit16_Set(g_AdminLevel,target,alvl);
  707.                     SPM(target, -1 , "PROMOTED TO ADMIN");
  708.                     GameTextForPlayer(target, "~r~PROMOTED TO ~g~ADMIN", 3500, 4);
  709.                 }
  710.                 if(pAdminAll(playerid))
  711.                 {
  712.                     new string[120],targetname[MAX_PLAYER_NAME];
  713.                     GetPlayerName(target,targetname,sizeof(targetname));
  714.                     format(string, sizeof(string), ""COL_BLUE"==ADMIN==%s PROMOTED "COL_RED"%s TO LEVEL "COL_GREEN"%d ADMIN",AdminName(playerid),targetname,alvl);
  715.                     SPMALL(-1, string);
  716.                     print(string);
  717.                 }
  718.             }
  719.             else SPM(playerid, 0x33CCFFAA, "CORRECT: MAX LEVEL 5 , MIN LEVEL 0");
  720.  
  721.         }
  722.         else  SPM(playerid,0xff0000FF,"Player not CONNECTED !");
  723.         return 1;
  724.     }
  725.    
  726.     COMMAND:out(playerid, inputtext[])
  727.     {
  728.         new target, reason;
  729.         if(sscanf(inputtext,"ud",target,reason))return SPM(playerid, 0xff0000FF,"CORRECT: /out (KICK) [playerID/NAME] [REASON]");
  730.         {
  731.             if(target != INVALID_PLAYER_ID && IsPlayerConnected(target))
  732.             {
  733.                 if(pAdmin3(playerid))
  734.                 {
  735.                     new string[130],targetname[MAX_PLAYER_NAME];
  736.                     GetPlayerName(target,targetname,sizeof(targetname));
  737.                     format(string,sizeof(string), ""COL_GREEN"==ADMIN=="COL_BLUE"%s HAS "COL_RED"KICKED "COL_GREEN"%s FOR: "COL_BLUE"%s", AdminName(playerid), targetname, reason);
  738.                     SPMALL(-1,string);
  739.                     Kick(target);
  740.                     print(string);
  741.                 }
  742.             }
  743.         }
  744.         return 1;
  745.     }
  746.     COMMAND:lockacc(playerid, inputtext[])
  747.     {
  748.         new target, reason;
  749.         if(sscanf(inputtext,"ud",target,reason))return SPM(playerid, 0xff0000FF,"CORRECT: /lockacc(BAN) [playerID/NAME] [REASON]");
  750.         {
  751.             if(target != INVALID_PLAYER_ID && IsPlayerConnected(target))
  752.             {
  753.                 if(pAdmin3(playerid))
  754.                 {
  755.                     new string[130],targetname[MAX_PLAYER_NAME];
  756.                     GetPlayerName(target,targetname,sizeof(targetname));
  757.                     format(string,sizeof(string), ""COL_GREEN"==ADMIN=="COL_BLUE"%s HAS "COL_RED"BANNED "COL_GREEN"%s FOR: "COL_BLUE"%s", AdminName(playerid), targetname, reason);
  758.                     SPMALL(-1,string);
  759.                     Ban(target);
  760.                     print(string);
  761.                 }
  762.             }
  763.         }
  764.         return 1;
  765.     }
  766.  
  767.     COMMAND:health(playerid, inputtext[])
  768.     {
  769.         new target, health;
  770.         if(sscanf(inputtext,"ud",target, health))return SPM(playerid, -1,"CORRECT: /health [playerID/playerNAME][HEALTH]");
  771.         if(target != INVALID_PLAYER_ID && IsPlayerConnected(target))
  772.         {
  773.             if(pAdminAll(playerid))
  774.             {
  775.                 SetPlayerHealth(target, health);
  776.                 new string[50],string1[50],targetname[MAX_PLAYER_NAME];
  777.                 GetPlayerName(target,targetname,sizeof(targetname));
  778.                 format(string,sizeof(string), ""COL_BLUE"==ADMIN==%s "COL_GREEN"set your health to "COL_RED"%d",AdminName(playerid), health);
  779.                 SPM(target, -1, string);
  780.                 format(string1,sizeof(string1), ""COL_BLUE"==ADMIN==You set "COL_RED"%s"COL_GREEN"'s health to "COL_RED"%d",targetname,health);
  781.                 SPM(playerid, -1, string1);
  782.                 print(string);
  783.                 print(string1);
  784.                
  785.             }
  786.         }
  787.         else SPM(playerid, 0x33CCFFAA, "PLAYER not CONNECTED !");
  788.         return 1;
  789.        
  790.     }
  791.     COMMAND:healthall(playerid, inputtext[])
  792.     {
  793.         if(pAdmin2(playerid))
  794.         {
  795.             for(new i = 0; i < MAX_PLAYERS; i++)
  796.             {
  797.                 SetPlayerHealth(i, 100);
  798.             }
  799.             new string[65];
  800.             format(string,sizeof(string),""COL_BLUE"==ADMIN==%s gave "COL_RED"everyone "COL_GREEN"HEALTH",AdminName(playerid));
  801.             SPMALL(-1, string);
  802.             print(string);
  803.         }
  804.         return 1;
  805.     }
  806.    
  807.     COMMAND:armour(playerid, inputtext[])
  808.     {
  809.         new target, armour;
  810.         if(sscanf(inputtext,"ud",target, armour))return SendClientMessage(playerid, -1,"CORRECT: /armour [playerID/playerNAME][ARMOUR]");
  811.         if(target != INVALID_PLAYER_ID && IsPlayerConnected(target))
  812.         {
  813.             if(pAdminAll(playerid))
  814.             {
  815.                 SetPlayerArmour(target, armour);
  816.                 new string[50],string1[50],targetname[MAX_PLAYER_NAME];
  817.                 GetPlayerName(target,targetname,sizeof(targetname));
  818.                 format(string,sizeof(string), ""COL_BLUE"==ADMIN==%s "COL_GREEN"set your ARMOUR to "COL_RED"%d",AdminName(playerid), armour);
  819.                 SPM(target, -1, string);
  820.                 format(string1,sizeof(string1), ""COL_BLUE"==ADMIN==You set "COL_RED"%s"COL_GREEN"'s ARMOUR to "COL_RED"%d",targetname, armour);
  821.                 SPM(playerid, -1, string1);
  822.                 print(string);
  823.                 print(string1);
  824.             }
  825.         }
  826.         else SendClientMessage(playerid, 0x33CCFFAA, "PLAYER not CONNECTED !");
  827.         return 1;
  828.  
  829.     }
  830.    
  831.     COMMAND:armourall(playerid, inputtext[])
  832.     {
  833.         if(pAdmin2(playerid))
  834.         {
  835.             for(new i = 0; i < MAX_PLAYERS; i++)
  836.             {
  837.                 SetPlayerArmour(i,100);
  838.             }
  839.             new string[65];
  840.             format(string,sizeof(string),""COL_BLUE"==ADMIN==%s gave "COL_RED"everyone "COL_GREEN"ARMOUR",AdminName(playerid));
  841.             SPMALL(-1, string);
  842.             print(string);
  843.         }
  844.         return 1;
  845.     }
  846.    
  847.     COMMAND:vehicle(playerid, inputtext[])
  848.     {
  849.         new vehicleidd;
  850.         if(sscanf(inputtext,"u",vehicleidd)) return SendClientMessage(playerid, -1, "CORRECT: /vehicle [VEHICLE ID]");
  851.         {
  852.             if(vehicleidd >= 400 || vehicleidd <= 611) return SendClientMessage(playerid, -1, ""COL_BLUE"INVALID "COL_GREEN"MODEL");
  853.             {
  854.                 if(pAdmin2(playerid))
  855.                 {
  856.                     new Float:x, Float:y, Float:z;
  857.                     GetPlayerPos(playerid, x, y, z);
  858.                     CreateVehicle(vehicleidd, x+2, y+2, z, 90.0, 0, 2, 2);
  859.                     new string[70];
  860.                     format(string, sizeof(string), ""COL_BLUE"==ADMIN==%s spawned VEH ID "COL_GREEN"%d",AdminName(playerid),vehicleidd);
  861.                     if(pAdminAll(playerid))
  862.                     {
  863.                         SPMALL(-1, string);
  864.                         print(string);
  865.                     }
  866.                 }
  867.             }
  868.         }
  869.         return 1;
  870.     }
  871.    
  872.     COMMAND:skin(playerid, inputtext[])
  873.     {
  874.         new target,skin;
  875.         if(sscanf(inputtext,"ud",target,skin)) return SPM(playerid, -1, "CORRECT: /skin [playerID/playerNAME] [skinID]");
  876.         {
  877.             if(target != INVALID_PLAYER_ID && IsPlayerConnected(target))
  878.             {
  879.                 if(pAdmin2(playerid))
  880.                 {
  881.                     SetPlayerSkin(target,skin);
  882.                     new string[70],string1[70],targetname[MAX_PLAYER_NAME];
  883.                     GetPlayerName(target,targetname,sizeof(targetname));
  884.                     format(string,sizeof(string),""COL_BLUE"==ADMIN=="COL_GREEN"%s "COL_BLUE"set your SKIN to "COL_RED"%d",AdminName(playerid),skin);
  885.                     SPM(target,-1,string);
  886.                     format(string1,sizeof(string1),""COL_BLUE"==ADMIN==You SET "COL_GREEN"%s"COL_BLUE"'s SKIN to "COL_GREEN"%d",targetname,skin);
  887.                     SPM(playerid, -1, string1);
  888.                 }
  889.             }
  890.         }
  891.         return 1;
  892.     }
  893.  
  894.    
  895.    
  896.     //=================================                 ZCMD                ================================================//
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement