Guest User

Startkit

a guest
Jul 4th, 2011
413
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pawn 15.68 KB | None | 0 0
  1. //-----------------------Includes---------------------
  2. #include <a_samp>
  3. #include <dini>
  4. #include <dudb>
  5. #include <zcmd>
  6. #include <sscanf2>
  7. #include <foreach>
  8. //-------------------Boje----------------------------
  9. #pragma unused ret_memcpy
  10. #define COLOR_ZUTA 0xD8D8D8FF
  11. #define COLOR_CRVENA 0xFF0000FF
  12. #define COLOR_PLAVA 0x0000FFFF
  13. #define COLOR_ZELENA 0x00FF00FF
  14. #define COLOR_CRNA 0x000000FF
  15. //----------------New------------------------------
  16. new IsLogged[MAX_PLAYERS];
  17. new file[256];
  18.  
  19.  
  20. main()
  21.  
  22. {
  23.     print("\n----------------------------------");
  24.     print("  Mod Pokrenut                      ");
  25.     print("----------------------------------\n");
  26.  
  27. }
  28.  
  29. enum pInfo
  30. {
  31.     AdminLevel,
  32.     Cash,
  33.     Score,
  34.     Color,
  35.     Job,
  36.     Vw,
  37.     Int,
  38.     Warns,
  39.     Fleader,
  40.     Fmember,
  41. }
  42. new PlayerInfo[MAX_PLAYERS][pInfo];
  43.  
  44.  
  45. public OnGameModeInit()
  46.  
  47. {
  48.  
  49.     SetGameModeText("Vas GM");
  50.     ShowPlayerMarkers(0);
  51.     SetWorldTime(18);
  52.  
  53.  
  54.     AddPlayerClass(0,2232.0906,-1161.6725,29.7969,1.4573,32,120,24,90,0,0);
  55.     return 1;
  56.  }
  57.  
  58.  
  59. //--------------------------------------Login/Register Sistem--------------------------------------------------------
  60. public OnPlayerConnect(playerid)
  61. {
  62.     IsLogged[playerid] = 0;
  63.     new name[MAX_PLAYER_NAME];
  64.     GetPlayerName(playerid, name, sizeof(name));
  65.     format(file, sizeof(file), "users/%s.ini", name);
  66.     if (!dini_Exists(file))
  67.     {
  68.         ShowPlayerDialog(playerid, 1, DIALOG_STYLE_INPUT, "Registracija", "Molimo registrirajte se kako bi se vasi podaci spremili.", "Registracija", "Odustani");
  69.     }
  70.     if(fexist(file))
  71.     {
  72.        ShowPlayerDialog(playerid, 2, DIALOG_STYLE_INPUT, "Prijava", "Molimo upisite svoju lozinku kako bi se logirali.", "Prijava", "Odustani");
  73.     }
  74. }
  75.  
  76.  
  77. public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
  78. {
  79. if (dialogid == 1)
  80.     {
  81.         new name[MAX_PLAYER_NAME], string[128];
  82.         GetPlayerName(playerid, name, sizeof(name));
  83.         format(file, sizeof(file), "users/%s.ini", name);
  84.         if(!response) return Kick(playerid);
  85.         if(!strlen(inputtext)) return
  86.         ShowPlayerDialog(playerid, 1, DIALOG_STYLE_INPUT, "Registracija","Molimo registrirajte se kako bi se vasi podaci spremili.", "Registracija", "Odustani");
  87.         dini_Create(file);
  88.         dini_IntSet(file, "Password", udb_hash(inputtext));
  89.         dini_IntSet(file, "AdminLevel",PlayerInfo[playerid][AdminLevel] = 0);
  90.         dini_IntSet(file, "Cash",PlayerInfo[playerid][Cash] = 500);
  91.         dini_IntSet(file, "Score",PlayerInfo[playerid][Score] = 0);
  92.         dini_IntSet(file, "Job",PlayerInfo[playerid][Job] = 0);
  93.         dini_IntSet(file, "Color",PlayerInfo[playerid][Color] = 0);
  94.         dini_IntSet(file, "Vw",PlayerInfo[playerid][Vw] = 0);
  95.         dini_IntSet(file, "Int",PlayerInfo[playerid][Int] = 0);
  96.         dini_IntSet(file, "Warns",PlayerInfo[playerid][Warns] = 0);
  97.         dini_IntSet(file, "Fleader",PlayerInfo[playerid][Fleader] = 0);
  98.         dini_IntSet(file, "Fmember",PlayerInfo[playerid][Fmember] = 0);
  99.         format(string, 128, "Uspjesno si se Registrirao Ime: %s lozinka: %s, automatski si prijavljen!", name, inputtext);
  100.         SendClientMessage(playerid, 0xFF00CC, string);
  101.         IsLogged[playerid] = 1;
  102.     }
  103.  
  104. if (dialogid == 2)
  105.     {
  106.       new name[MAX_PLAYER_NAME];
  107.       GetPlayerName(playerid, name, sizeof(name));
  108.       format(file, sizeof(file), "users/%s.ini", name);
  109.       if(!response) return Kick(playerid);
  110.       if (!strlen(inputtext)) return ShowPlayerDialog(playerid, 2, DIALOG_STYLE_INPUT, "Prijava", "Molimo upisite svoju lozinku kako bi se logirali.", "Prijava", "Odustani");
  111.       new tmp;
  112.       tmp = dini_Int(file, "Password");
  113.       if(udb_hash(inputtext) != tmp) {
  114.       SendClientMessage(playerid, 0xFF0000FF, "Pogresna Lozinka.");
  115.       ShowPlayerDialog(playerid, 2, DIALOG_STYLE_INPUT, "Prijava", "Molimo upisite svoju lozinku kako bi se logirali.", "Prijava", "Odustani");
  116.       }
  117.       else
  118.       {
  119.         IsLogged[playerid] = 1;
  120.         SetPlayerMoney(playerid, dini_Int(file, "Cash"));
  121.         SetPlayerScore(playerid, dini_Int(file, "Score"));
  122.         SetPlayerColor(playerid, dini_Int(file, "Color"));
  123.         SetPlayerVirtualWorld(playerid, dini_Int(file, "Vw"));
  124.         SetPlayerInterior(playerid, dini_Int(file, "Int"));
  125.         PlayerInfo[playerid][Job] = dini_Int(file, "Job");
  126.         PlayerInfo[playerid][Warns] = dini_Int(file, "Warns");
  127.         PlayerInfo[playerid][Fleader] = dini_Int(file, "Fleader");
  128.         PlayerInfo[playerid][Fmember] = dini_Int(file, "Fmember");
  129.         PlayerInfo[playerid][AdminLevel] = dini_Int(file, "AdminLevel");
  130.         SendClientMessage(playerid,0xFF00CC, "Dobrodosao ljepo te je opet vidjeti na serveru.");
  131.     }
  132.     }
  133. return 1;
  134. }
  135.  
  136. public OnPlayerDisconnect(playerid, reason)
  137. {
  138.     new name[24];
  139.     GetPlayerName(playerid,name,24);
  140.     format(file,sizeof(file),"users/%s.ini",name);
  141.     if(dini_Exists(file))
  142.     {
  143.         dini_IntSet(file,"Cash",GetPlayerMoney(playerid));
  144.         dini_IntSet(file,"Score",GetPlayerScore(playerid));
  145.         dini_IntSet(file,"Color",GetPlayerColor(playerid));
  146.         dini_IntSet(file,"AdminLevel",PlayerInfo[playerid][AdminLevel]);
  147.         dini_IntSet(file,"Job",PlayerInfo[playerid][Job]);
  148.         dini_IntSet(file,"Vw",GetPlayerVirtualWorld(playerid));
  149.         dini_IntSet(file,"Int",GetPlayerInterior(playerid));
  150.         dini_IntSet(file,"Warns",PlayerInfo[playerid][Warns]);
  151.         dini_IntSet(file,"Fleader",PlayerInfo[playerid][Fleader]);
  152.         dini_IntSet(file,"Fmember",PlayerInfo[playerid][Fmember]);
  153.         IsLogged[playerid] = 0;
  154.         return 1;
  155.     }
  156.     return 1;
  157. }
  158. //-------------------------------Commande----------------------------------------------------
  159. COMMAND:makeadmin(playerid, params[])
  160. {
  161.     new id;
  162.     new AdminLevel2;
  163.     if(IsPlayerConnected(id))
  164.     {
  165.         if(PlayerInfo[playerid][AdminLevel] >= 5 || IsPlayerAdmin(playerid))
  166.         {
  167.             if(!sscanf(params, "ui", id, AdminLevel2))
  168.             {
  169.                 if((AdminLevel2 >= 1 && AdminLevel2 <= 5) || AdminLevel2 == 0)
  170.                 {
  171.                     new string[64];
  172.                     new name[MAX_PLAYER_NAME], PlayerName[MAX_PLAYER_NAME];
  173.                     GetPlayerName(playerid, name, sizeof(name));
  174.                     GetPlayerName(id, PlayerName, sizeof(PlayerName));
  175.                     format(string, sizeof(string), "Admin %s ti je dao admin level %d .", name, AdminLevel2);
  176.                     SendClientMessage(id, 0xD8D8D8FF, string);
  177.                     format(string, sizeof(string), "Dao si %d Admin level %s .", AdminLevel2, PlayerName);
  178.                     SendClientMessage(playerid, 0xD8D8D8FF, string);
  179.                     PlayerInfo[id][AdminLevel] = AdminLevel2;
  180.                     return 1;
  181.                 }
  182.                 else return SendClientMessage(playerid, 0xD8D8D8FF, "Dostupni leveli: 1, 2, 3, 4 i 5.");
  183.             }
  184.             else return SendClientMessage(playerid, 0x00FF00FF, "Koristenje: /makeadmin [ID] [AdminLevel]");
  185.         }
  186.         else return SendClientMessage(playerid, 0xFF0000FF, "RCON admini SAMO");
  187.     }
  188.     else return SendClientMessage(playerid, 0xD8D8D8FF, "Pogresan ID");
  189. }
  190. COMMAND:ban(playerid, params[])
  191. {
  192.     new id;
  193.     if(IsPlayerConnected(id))
  194.     {
  195.         if(PlayerInfo[playerid][AdminLevel] >= 3)
  196.         {
  197.             if(!sscanf(params, "u", id))
  198.             {
  199.                 new string[64];
  200.                 new name[MAX_PLAYER_NAME], PlayerName[MAX_PLAYER_NAME];
  201.                 GetPlayerName(playerid, name, sizeof(name));
  202.                 GetPlayerName(id, PlayerName, sizeof(PlayerName));
  203.                 format(string, sizeof(string), "Banan si od admina: %s.", name);
  204.                 SendClientMessage(id, 0xFF0000FF, string);
  205.                 format(string, sizeof(string), "Banao si: %s .", id);
  206.                 SendClientMessage(playerid, 0xD8D8D8FF, string);
  207.                 Ban(id);
  208.                 return 1;
  209.             }
  210.             else return SendClientMessage(playerid, 0x00FF00FF, "Koristenje: /ban [ID]");
  211.         }
  212.         else return SendClientMessage(playerid, 0xFF0000FF, "Admini SAMO");
  213.     }
  214.     else return SendClientMessage(playerid, 0xD8D8D8FF, "Pogresan ID.");
  215. }
  216. COMMAND:kick(playerid, params[])
  217. {
  218.     new id;
  219.     if(IsPlayerConnected(id))
  220.     {
  221.         if(PlayerInfo[playerid][AdminLevel] >= 1)
  222.         {
  223.             if(!sscanf(params, "u", id))
  224.             {
  225.                 new string[64];
  226.                 new name[MAX_PLAYER_NAME], PlayerName[MAX_PLAYER_NAME];
  227.                 GetPlayerName(playerid, name, sizeof(name));
  228.                 GetPlayerName(id, PlayerName, sizeof(PlayerName));
  229.                 format(string, sizeof(string), "Izbacen si od admina: %s.", name);
  230.                 SendClientMessage(id, 0xFF0000FF, string);
  231.                 format(string, sizeof(string), "Izbacio si: %s .", id);
  232.                 SendClientMessage(playerid, 0xD8D8D8FF, string);
  233.                 Kick(id);
  234.                 return 1;
  235.             }
  236.             else return SendClientMessage(playerid, 0x00FF00FF, "Koristenje: /kick [ID]");
  237.         }
  238.         else return SendClientMessage(playerid, 0xFF0000FF, "Admini SAMO");
  239.     }
  240.     else return SendClientMessage(playerid, 0xD8D8D8FF, "Pogresan ID");
  241. }
  242. COMMAND:zamrzni(playerid, params[])
  243. {
  244.     if(PlayerInfo[playerid][AdminLevel] >= 1)
  245.     {
  246.         new id;
  247.         if(!sscanf(params, "u", id))
  248.         {
  249.             if(IsPlayerConnected(id))
  250.             {
  251.                 new Float:X, Float:Y, Float:Z;
  252.                 GetPlayerPos(playerid, X,Y,Z);
  253.                 if(IsPlayerInRangeOfPoint(id, 999999.0, X,Y,Z))
  254.                 {
  255.                     new string[64];
  256.                     new name[MAX_PLAYER_NAME], PlayerName[MAX_PLAYER_NAME];
  257.                     GetPlayerName(playerid, name, sizeof(name));
  258.                     GetPlayerName(id, PlayerName, sizeof(PlayerName));
  259.                     format(string, sizeof(string), "Zamrznjen si od admina: %s", name);
  260.                     SendClientMessage(id, 0xFF0000FF, string);
  261.                     format(string, sizeof(string), "Zamrznuo si %s", PlayerName);
  262.                     SendClientMessage(playerid, 0xD8D8D8FF, string);
  263.                     TogglePlayerControllable(id, 0);
  264.                     return 1;
  265.                 }
  266.                 else return SendClientMessage(playerid, 0xD8D8D8FF, "Nisi blizu igraca");
  267.             }
  268.             else return SendClientMessage(playerid, 0xD8D8D8FF, "Pogresan ID.");
  269.         }
  270.         else return SendClientMessage(playerid, 0x00FF00FF, "Koristenje: /zamrzni [ID]");
  271.     }
  272.     else return SendClientMessage(playerid, 0xFF0000FF, "Admini SAMO.");
  273. }
  274. COMMAND:odmrzni(playerid, params[])
  275. {
  276.     if(PlayerInfo[playerid][AdminLevel] >=1)
  277.     {
  278.         new id;
  279.         if(!sscanf(params, "u", id))
  280.         {
  281.             if(IsPlayerConnected(id))
  282.             {
  283.                 new Float:X, Float:Y, Float:Z;
  284.                 GetPlayerPos(playerid, X,Y,Z);
  285.                 if(IsPlayerInRangeOfPoint(id, 999999.0, X,Y,Z))
  286.                 {
  287.                     new string[64];
  288.                     new name[MAX_PLAYER_NAME], PlayerName[MAX_PLAYER_NAME];
  289.                     GetPlayerName(playerid, name, sizeof(name));
  290.                     GetPlayerName(id, PlayerName, sizeof(PlayerName));
  291.                     format(string, sizeof(string), "Odmrznjen si od admina: %s", name);
  292.                     SendClientMessage(id, 0xFF0000FF, string);
  293.                     format(string, sizeof(string), "Odmrznuo si: %s", PlayerName);
  294.                     SendClientMessage(playerid, 0xD8D8D8FF, string);
  295.                     TogglePlayerControllable(id, 1);
  296.                     return 1;
  297.                 }
  298.                 else return SendClientMessage(playerid, 0xD8D8D8FF, "Nisi blizu igraca.");
  299.             }
  300.             else return SendClientMessage(playerid, 0xD8D8D8FF, "Pogresan ID");
  301.         }
  302.         else return SendClientMessage(playerid, 0x00FF00FF, "Koristenje: /odmrzni [ID]");
  303.     }
  304.     else return SendClientMessage(playerid, 0xFF0000FF, "Admini SAMO");
  305. }
  306. COMMAND:goto(playerid, params[])
  307. {
  308.     new id;
  309.     if(IsPlayerConnected(id))
  310.     {
  311.         if(PlayerInfo[playerid][AdminLevel] >= 4)
  312.         {
  313.             if(!sscanf(params, "ui", id))
  314.             {
  315.                 new string[64];
  316.                 new name[MAX_PLAYER_NAME], PlayerName[MAX_PLAYER_NAME];
  317.                 new Float:x, Float:y, Float:z;  GetPlayerPos(id,x,y,z); SetPlayerInterior(playerid,GetPlayerInterior(id));
  318.                 GetPlayerName(playerid, name, sizeof(name));
  319.                 GetPlayerName(id, PlayerName, sizeof(PlayerName));
  320.                 format(string, sizeof(string), "Admin: %s se teleportirao do tebe.", name);
  321.                 SendClientMessage(id, 0xD8D8D8FF, string);
  322.                 format(string, sizeof(string), "Teleportirao si se do %s .", PlayerName);
  323.                 SendClientMessage(playerid, 0xD8D8D8FF, string);
  324.                 SetPlayerVirtualWorld(playerid,GetPlayerVirtualWorld(id));
  325.                 SetPlayerPos(playerid,x+2,y,z);
  326.                 return 1;
  327.             }
  328.             else return SendClientMessage(playerid, 0x00FF00FF, "Koristenje: /goto [ID]");
  329.         }
  330.         else return SendClientMessage(playerid, 0xFF0000FF, "Admini SAMO.");
  331.     }
  332.     else return SendClientMessage(playerid, 0xD8D8D8FF, "Pogresan ID.");
  333. }
  334. COMMAND:gethere(playerid, params[])
  335. {
  336.     new id;
  337.     if(IsPlayerConnected(id))
  338.     {
  339.         if(PlayerInfo[playerid][AdminLevel] >= 4)
  340.         {
  341.             if(!sscanf(params, "ui", id))
  342.             {
  343.                 new string[64];
  344.                 new name[MAX_PLAYER_NAME], PlayerName[MAX_PLAYER_NAME];
  345.                 new Float:x, Float:y, Float:z;  GetPlayerPos(playerid,x,y,z); SetPlayerInterior(id,GetPlayerInterior(playerid));
  346.                 GetPlayerName(playerid, name, sizeof(name));
  347.                 GetPlayerName(id, PlayerName, sizeof(PlayerName));
  348.                 format(string, sizeof(string), "Admin: %s te je teleportirao do sebe.", name);
  349.                 SendClientMessage(id, 0xD8D8D8FF, string);
  350.                 format(string, sizeof(string), "Teleportirao si %s do sebe.", PlayerName);
  351.                 SendClientMessage(playerid, 0xD8D8D8FF, string);
  352.                 SetPlayerVirtualWorld(id,GetPlayerVirtualWorld(playerid));
  353.                 SetPlayerPos(id,x+2,y,z);
  354.                 return 1;
  355.             }
  356.             else return SendClientMessage(playerid, 0x00FF00FF, "Koristenje: /gethere[ID]");
  357.         }
  358.         else return SendClientMessage(playerid, 0xFF0000FF, "Admini SAMO");
  359.     }
  360.     else return SendClientMessage(playerid, 0xD8D8D8FF, "Pogresan ID.");
  361. }
  362. COMMAND:zatvori(playerid, params[])
  363. {
  364.     new id;
  365.     if(IsPlayerConnected(id))
  366.     {
  367.         if(PlayerInfo[playerid][AdminLevel] >= 4)
  368.         {
  369.             if(!sscanf(params, "u", id))
  370.             {
  371.                 new string[64];
  372.                 new name[MAX_PLAYER_NAME], PlayerName[MAX_PLAYER_NAME];
  373.                 GetPlayerName(playerid, name, sizeof(name));
  374.                 GetPlayerName(id, PlayerName, sizeof(PlayerName));
  375.                 format(string, sizeof(string), "Zatvoren si od Admina: %s.", name);
  376.                 SendClientMessage(id, 0xFF0000FF, string);
  377.                 format(string, sizeof(string), "Zatvorio si %s .", PlayerName);
  378.                 SendClientMessage(playerid, 0xD8D8D8FF, string);
  379.                 SetPlayerPos(id, 264.6288,77.5742,1001.0391);
  380.                 SetPlayerInterior(id, 3);
  381.                 return 1;
  382.             }
  383.             else return SendClientMessage(playerid, 0x00FF00FF, "Koristenje: /zatvori [ID]");
  384.         }
  385.         else return SendClientMessage(playerid, 0xFF0000FF, "Admini SAMO");
  386.     }
  387.     else return SendClientMessage(playerid, 0xD8D8D8FF, "Pogresan ID.");
  388. }
  389. COMMAND:oslobodi(playerid, params[])
  390. {
  391.     new id;
  392.     if(IsPlayerConnected(id))
  393.     {
  394.         if(PlayerInfo[playerid][AdminLevel] >= 4)
  395.         {
  396.             if(!sscanf(params, "u", id))
  397.             {
  398.                 new string[64];
  399.                 new name[MAX_PLAYER_NAME], PlayerName[MAX_PLAYER_NAME];
  400.                 GetPlayerName(playerid, name, sizeof(name));
  401.                 GetPlayerName(id, PlayerName, sizeof(PlayerName));
  402.                 format(string, sizeof(string), "Oslobodjen si od admina: %s.", name);
  403.                 SendClientMessage(id, 0xFF0000FF, string);
  404.                 format(string, sizeof(string), "Oslobodio si: %s .", PlayerName);
  405.                 SendClientMessage(playerid, 0xD8D8D8FF, string);
  406.                 SetPlayerPos(id, 1555.097900, -1675.848754, 16.195312);
  407.                 SetPlayerInterior(id, 0);
  408.                 return 1;
  409.             }
  410.             else return SendClientMessage(playerid, 0x00FF00FF, "Koristenje: /oslobodi [ID]");
  411.         }
  412.         else return SendClientMessage(playerid, 0xFF0000FF, "Admini SAMO");
  413.     }
  414.     else return SendClientMessage(playerid, 0xD8D8D8FF, "Pogresan ID.");
  415. }
Advertisement
Add Comment
Please, Sign In to add comment