Advertisement
Guest User

[FS] Zamana Bagli Rutbe Sistemi

a guest
Aug 16th, 2016
117
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pawn 8.17 KB | None | 0 0
  1. /*
  2.  
  3. Bu sistem XpDeviL tarafından yapılmıştır.
  4.  
  5.  
  6.  
  7. Oyuncu belirlediğiniz süre oyunda kalırsa rütbesi artar. Oyuncu oyundan çıkınca
  8.  
  9. oyunda kaldığı toplam süre kaydolur.
  10.  
  11. */
  12.  
  13.  
  14. #include <a_samp>
  15. #include <dini>
  16.  
  17.  
  18.  
  19. new Text:ArkaP;
  20.  
  21. new Text:Bslk;
  22.  
  23. new Text:rutbe[MAX_PLAYERS];
  24.  
  25. new Text:yildiz[MAX_PLAYERS];
  26.  
  27.  
  28. #define Klasor "RutbeSistemi" // Oyuncu verilerinin kaydedileceği klasör
  29.  
  30.  
  31.  
  32. // Rütbe isimleri (Türkçe karakter kullanmayın):
  33. #define Rutbe1 "Caylak" // İlk rütbenin adı
  34. #define Rutbe2 "Acemi" // 2. rütbenin adı
  35. #define Rutbe3 "Deneyimli" // 3. rütbenin adı
  36. #define Rutbe4 "Usta" // 4. rütbenin adı
  37. #define Rutbe5 "Uzman" // 5. rütbenin adı
  38.  
  39.  
  40.  
  41. // Rütbe süreleri:
  42. #define zRutbe1 0 // İlk rütbeye erişilecek zaman (DK) [NOT: Burası hep 0 olsun. Yoksa yeni başlayan birinin rütbesi olmaz ve çeşitli buglar oluşur.]
  43. #define zRutbe2 15 // 2. rütbeye erişilecek zaman (DK)
  44. #define zRutbe3 45 // 3. rütbeye erişilecek zaman (DK)
  45. #define zRutbe4 90 // 4. rütbeye erişilecek zaman (DK)
  46. #define zRutbe5 120 // 5. rütbeye erişilecek zaman (DK)
  47.  
  48.  
  49.  
  50. enum oVar
  51.  
  52. {
  53.  
  54.     saniye,
  55.  
  56.     dakika,
  57.  
  58.     Rutbe
  59.  
  60. };
  61.  
  62.  
  63.  
  64. new
  65.  
  66.     OyuncuVeri[MAX_PLAYERS][oVar],
  67.  
  68.     Timer[MAX_PLAYERS]
  69.  
  70. ;
  71.  
  72.  
  73.  
  74. public OnFilterScriptInit()
  75.  
  76. {
  77.  
  78.     print("n--------------------------------------");
  79.  
  80.     print(" Zamanli Rutbe Sistemi - Yuklendi - by XpDeviL");
  81.  
  82.     print("--------------------------------------n");
  83.  
  84.    
  85.  
  86.     ArkaP = TextDrawCreate(679.000000, 414.000000, ".");
  87.  
  88.     TextDrawBackgroundColor(ArkaP,255);
  89.  
  90.     TextDrawFont(ArkaP,1);
  91.  
  92.     TextDrawLetterSize(ArkaP, 0.500000, -4.500000);
  93.  
  94.     TextDrawColor(ArkaP,100);
  95.  
  96.     TextDrawSetOutline(ArkaP,0);
  97.  
  98.     TextDrawSetProportional(ArkaP,1);
  99.  
  100.     TextDrawSetShadow(ArkaP,0);
  101.  
  102.     TextDrawUseBox(ArkaP,1);
  103.  
  104.     TextDrawBoxColor(ArkaP,100);
  105.  
  106.     TextDrawTextSize(ArkaP, 527.000000, -4.000000);
  107.  
  108.  
  109.  
  110.     Bslk = TextDrawCreate(536.000000, 366.000000, "Rutbeniz");
  111.  
  112.     TextDrawBackgroundColor(Bslk,255);
  113.  
  114.     TextDrawFont(Bslk,0);
  115.  
  116.     TextDrawLetterSize(Bslk, 0.500000, 1.599998);
  117.  
  118.     TextDrawColor(Bslk, -1);
  119.  
  120.     TextDrawSetOutline(Bslk,1);
  121.  
  122.     TextDrawSetProportional(Bslk,1);
  123.  
  124.  
  125.  
  126.     for(new i; i<MAX_PLAYERS; i++){
  127.  
  128.     rutbe[i] = TextDrawCreate(536.000000, 384.000000, "Rutbeniz: ~g~Deneyimli");
  129.  
  130.     TextDrawBackgroundColor(rutbe[i],255);
  131.  
  132.     TextDrawFont(rutbe[i],1);
  133.  
  134.     TextDrawLetterSize(rutbe[i], 0.240000, 1.000000);
  135.  
  136.     TextDrawColor(rutbe[i], -1);
  137.  
  138.     TextDrawSetOutline(rutbe[i],1);
  139.  
  140.     TextDrawSetProportional(rutbe[i],1);
  141.  
  142.  
  143.  
  144.     yildiz[i] = TextDrawCreate(535.000000, 398.000000, "~y~] ] ]");
  145.  
  146.     TextDrawBackgroundColor(yildiz[i],255);
  147.  
  148.     TextDrawFont(yildiz[i],0);
  149.  
  150.     TextDrawLetterSize(yildiz[i], 0.270000, 1.000000);
  151.  
  152.     TextDrawColor(yildiz[i], -1);
  153.  
  154.     TextDrawSetOutline(yildiz[i],1);
  155.  
  156.     TextDrawSetProportional(yildiz[i],1);}
  157.  
  158.     return 1;
  159.  
  160. }
  161.  
  162.  
  163.  
  164. public OnPlayerConnect(playerid)
  165.  
  166. {
  167.  
  168.     new dosya[50], isim[24];
  169.  
  170.     GetPlayerName(playerid, isim, sizeof(isim));
  171.  
  172.     format(dosya, sizeof(dosya), "%s/%s.ini", Klasor, isim);
  173.  
  174.    
  175.  
  176.     if(!dini_Exists(dosya))
  177.  
  178.     {
  179.  
  180.     dini_Create(dosya);
  181.  
  182.     OyuncuVeri[playerid][saniye] = 0;
  183.  
  184.     OyuncuVeri[playerid][dakika] = 0;
  185.  
  186.     OyuncuVeri[playerid][Rutbe] = 1;
  187.  
  188.     } else {
  189.  
  190.     OyuncuVeri[playerid][saniye] = dini_Int(dosya, "Saniye");
  191.  
  192.     OyuncuVeri[playerid][dakika] = dini_Int(dosya, "Dakika");
  193.  
  194.     OyuncuVeri[playerid][Rutbe] = dini_Int(dosya, "Rutbe");
  195.  
  196.     }
  197.  
  198.    
  199.  
  200.     Timer[playerid] = SetTimerEx("SureArt",1000, true, "d", playerid);
  201.  
  202.     return 1;
  203.  
  204. }
  205.  
  206.  
  207.  
  208. public OnPlayerDisconnect(playerid, reason)
  209.  
  210. {
  211.  
  212.     new dosya[50], isim[24];
  213.  
  214.     GetPlayerName(playerid, isim, sizeof(isim));
  215.  
  216.     format(dosya, sizeof(dosya), "%s/%s.ini", Klasor, isim);
  217.  
  218.    
  219.  
  220.     dini_IntSet(dosya, "Saniye", OyuncuVeri[playerid][saniye]);
  221.  
  222.     dini_IntSet(dosya, "Dakika", OyuncuVeri[playerid][dakika]);
  223.  
  224.     dini_IntSet(dosya, "Rutbe", OyuncuVeri[playerid][Rutbe]);
  225.  
  226.     return 1;
  227.  
  228. }
  229.  
  230.  
  231.  
  232. public OnPlayerCommandText(playerid, cmdtext[])
  233.  
  234. {
  235.  
  236.     if (strcmp("/rutbem", cmdtext, true,10) == 0)
  237.  
  238.     {
  239.  
  240.         new str[128];
  241.  
  242.         format(str, sizeof(str), "Rütbeniz: {800000}%s", GetPlayerRutbe(playerid));
  243.  
  244.         SendClientMessage(playerid, 0x00FF00AA, str);
  245.  
  246.         return 1;
  247.  
  248.     }
  249.  
  250.     return 0;
  251.  
  252. }
  253.  
  254.  
  255.  
  256. forward SureArt(playerid);
  257.  
  258. public SureArt(playerid)
  259.  
  260. {
  261.  
  262.     OyuncuVeri[playerid][saniye]++;
  263.  
  264.     if(OyuncuVeri[playerid][saniye] == 60) OyuncuVeri[playerid][saniye]=0, OyuncuVeri[playerid][dakika]++;
  265.  
  266.  
  267.  
  268.     if(OyuncuVeri[playerid][dakika] >= zRutbe1 && OyuncuVeri[playerid][dakika] < zRutbe2)
  269.  
  270.     {
  271.  
  272.     if(OyuncuVeri[playerid][Rutbe] != 1){
  273.  
  274.     OyuncuVeri[playerid][Rutbe] = 1;
  275.  
  276.     }} else if(OyuncuVeri[playerid][dakika] >= zRutbe2 && OyuncuVeri[playerid][dakika] < zRutbe3)
  277.  
  278.     {
  279.  
  280.     if(OyuncuVeri[playerid][Rutbe] != 2){
  281.  
  282.     OyuncuVeri[playerid][Rutbe] = 2;
  283.  
  284.     new isim[24], str[128];
  285.  
  286.     GetPlayerName(playerid, isim, sizeof(isim));
  287.  
  288.     format(str, sizeof(str), "*** {FFFFFF}%s{00FF00} adlı kişi {800000}%s {00FF00}rütbesine erişti!", isim, Rutbe2);
  289.  
  290.     SendClientMessage(playerid, 0x00FF00AA, str);
  291.  
  292.     }} else if(OyuncuVeri[playerid][dakika] >= zRutbe3 && OyuncuVeri[playerid][dakika] < zRutbe4)
  293.  
  294.     {
  295.  
  296.     if(OyuncuVeri[playerid][Rutbe] != 3){
  297.  
  298.     OyuncuVeri[playerid][Rutbe] = 3;
  299.  
  300.     new isim[24], str[128];
  301.  
  302.     GetPlayerName(playerid, isim, sizeof(isim));
  303.  
  304.     format(str, sizeof(str), "*** {FFFFFF}%s{00FF00} adlı kişi {800000}%s {00FF00}rütbesine erişti!", isim, Rutbe3);
  305.  
  306.     SendClientMessage(playerid, 0x00FF00AA, str);
  307.  
  308.     }} else if(OyuncuVeri[playerid][dakika] >= zRutbe4 && OyuncuVeri[playerid][dakika] < zRutbe5)
  309.  
  310.     {
  311.  
  312.     if(OyuncuVeri[playerid][Rutbe] != 4){
  313.  
  314.     OyuncuVeri[playerid][Rutbe] = 4;
  315.  
  316.     new isim[24], str[128];
  317.  
  318.     GetPlayerName(playerid, isim, sizeof(isim));
  319.  
  320.     format(str, sizeof(str), "*** {FFFFFF}%s{00FF00} adlı kişi {800000}%s {00FF00}rütbesine erişti!", isim, Rutbe4);
  321.  
  322.     SendClientMessage(playerid, 0x00FF00AA, str);
  323.  
  324.     }} else if(OyuncuVeri[playerid][dakika] >= zRutbe5)
  325.  
  326.     {
  327.  
  328.     if(OyuncuVeri[playerid][Rutbe] != 5){
  329.  
  330.     OyuncuVeri[playerid][Rutbe] = 5;
  331.  
  332.     new isim[24], str[128];
  333.  
  334.     GetPlayerName(playerid, isim, sizeof(isim));
  335.  
  336.     format(str, sizeof(str), "*** {FFFFFF}%s{00FF00} adlı kişi {800000}%s {00FF00}rütbesine erişti!", isim, Rutbe5);
  337.  
  338.     SendClientMessage(playerid, 0x00FF00AA, str);
  339.  
  340.     }}
  341.  
  342.     TDAyarla(playerid);
  343.  
  344.     return 1;
  345.  
  346. }
  347.  
  348.  
  349.  
  350. stock GetPlayerRutbe(playerid)
  351.  
  352. {
  353.  
  354.     new str[64];
  355.  
  356.     if(OyuncuVeri[playerid][Rutbe] == 1) format(str, sizeof(str), "%s", Rutbe1);
  357.  
  358.     if(OyuncuVeri[playerid][Rutbe] == 2) format(str, sizeof(str), "%s", Rutbe2);
  359.  
  360.     if(OyuncuVeri[playerid][Rutbe] == 3) format(str, sizeof(str), "%s", Rutbe3);
  361.  
  362.     if(OyuncuVeri[playerid][Rutbe] == 4) format(str, sizeof(str), "%s", Rutbe4);
  363.  
  364.     if(OyuncuVeri[playerid][Rutbe] == 5) format(str, sizeof(str), "%s", Rutbe5);
  365.  
  366.     return str;
  367.  
  368. }
  369.  
  370.  
  371.  
  372. stock TDAyarla(playerid)
  373.  
  374. {
  375.  
  376.     new str[64];
  377.  
  378.     if(OyuncuVeri[playerid][Rutbe] == 1){
  379.  
  380.     format(str, sizeof(str), "Gecerli Rutbeniz: ~g~%s", GetPlayerRutbe(playerid));
  381.  
  382.     TextDrawSetString(rutbe[playerid], str);
  383.  
  384.     TextDrawSetString(yildiz[playerid], "~y~]");
  385.  
  386.     } else if(OyuncuVeri[playerid][Rutbe] == 2){
  387.  
  388.     format(str, sizeof(str), "Gecerli Rutbeniz: ~g~%s", GetPlayerRutbe(playerid));
  389.  
  390.     TextDrawSetString(rutbe[playerid], str);
  391.  
  392.     TextDrawSetString(yildiz[playerid], "~y~] ]");
  393.  
  394.     } else if(OyuncuVeri[playerid][Rutbe] == 3){
  395.  
  396.     format(str, sizeof(str), "Gecerli Rutbeniz: ~g~%s", GetPlayerRutbe(playerid));
  397.  
  398.     TextDrawSetString(rutbe[playerid], str);
  399.  
  400.     TextDrawSetString(yildiz[playerid], "~y~] ] ]");
  401.  
  402.     } else if(OyuncuVeri[playerid][Rutbe] == 4){
  403.  
  404.     format(str, sizeof(str), "Gecerli Rutbeniz: ~g~%s", GetPlayerRutbe(playerid));
  405.  
  406.     TextDrawSetString(rutbe[playerid], str);
  407.  
  408.     TextDrawSetString(yildiz[playerid], "~y~] ] ] ]");
  409.  
  410.     } else if(OyuncuVeri[playerid][Rutbe] == 5){
  411.  
  412.     format(str, sizeof(str), "Gecerli Rutbeniz: ~g~%s", GetPlayerRutbe(playerid));
  413.  
  414.     TextDrawSetString(rutbe[playerid], str);
  415.  
  416.     TextDrawSetString(yildiz[playerid], "] ] ] ] ]");
  417.  
  418.     TextDrawColor(yildiz[playerid], 0x0098F6AA);
  419.  
  420.     }
  421.  
  422.     TextDrawShowForPlayer(playerid, ArkaP);
  423.  
  424.     TextDrawShowForPlayer(playerid, Bslk);
  425.  
  426.     TextDrawShowForPlayer(playerid, rutbe[playerid]);
  427.  
  428.     TextDrawShowForPlayer(playerid, yildiz[playerid]);
  429.  
  430.     return 1;
  431.  
  432. }
  433.  
  434.  
  435.  
  436. /* -> © XpDeviL 2011 <- */
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement