Advertisement
EnzoMetlc

Reputation System [It is not finished].

Feb 20th, 2014
148
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pawn 3.69 KB | None | 0 0
  1. #include <a_samp>
  2. #include <Dini>
  3.  
  4. #define MAX_REP 50
  5.  
  6. #define TYPE_POSITIVE_REP "Positive"
  7. #define TYPE_NEGATIVE_REP "Negative"
  8.  
  9.  
  10. #define Rep:operator = (r) return Rep:r;
  11. #define Timer:operator = (t) return Timer:t;
  12.  
  13.  
  14. #if !defined Type
  15.     new Type[MAX_REP][MAX_PLAYERS];
  16. #else
  17.     #error The symbol "Rep" already defined. Use other variable.
  18. #endif
  19. // ==========
  20. #if !defined Comment2
  21.     new Comment2[MAX_REP][MAX_PLAYERS];
  22. #else
  23.     #error The symbol "Comment2" already defined. Use other variable.
  24. #endif
  25.  
  26.  
  27.  
  28.  
  29. /*
  30.     // Set...
  31.     native SetPlayerRep(playerid, &Rep:rep, value);
  32.     native SetTypeRep(playerid, Rep:rep, bool:type);
  33.     native SetCommentToRep(playerid, Rep:rep, comment[]);
  34.  
  35.     // Get...
  36.     native GetPlayerRep(playerid, Rep:rep);
  37.     native GetTypeRep(playerid, Rep:rep);
  38.     native GetCommentToRep(playerid, Rep:rep);
  39.  
  40.     // Save...
  41.     native SaveRepToPlayer(playerid, Rep:rep, file[], line[]);
  42.     native SaveTypeRepToPlayer(playerid, Rep:rep, file[], line[]);
  43.     native SaveCommentRepToPlayer(playerid, Rep:rep, file[], line[]);
  44.  
  45.     // Load...
  46.     native LoadRepToPlayer(playerid, Rep:rep, file[], line[]);
  47.     native LoadCommentToRepPlayer(playerid, Rep:rep, file[], line[]);
  48.     native LoadTypeRepToPlayer(playerid, Rep:rep, file[], line[]);
  49.    
  50.     // Timer's...
  51.     native StartTimer(&Timer:timerid, const timer);
  52.     native ObtainTimer(Timer:timerid);
  53.     native bool:TimerHasHappened(Timer:timerid);
  54.  
  55. */
  56.  
  57. // ======== Set
  58. stock SetPlayerRep(playerid, &Rep:rep, value)
  59. {
  60.     #pragma unused playerid
  61.     (_:rep = value);
  62. }
  63.  
  64.  
  65.  
  66. stock SetTypeRep(playerid, Rep:rep, bool:type)
  67. {
  68.     switch(type)
  69.     {
  70.         case false:
  71.         {
  72.             Type[_:rep][playerid] = 1;
  73.         }
  74.         case true:
  75.         {
  76.             Type[_:rep][playerid] = 0;
  77.         }
  78.     }
  79. }
  80.  
  81.  
  82.  
  83. stock SetCommentToRep(playerid, Rep:rep, comment[]) // Thanks Emmet_!
  84. {
  85.     Comment2[_:rep][playerid] = '\0';
  86.     return strins(Comment2[_:rep][playerid], comment, 0);
  87. }
  88.  
  89.  
  90.  
  91. // ======== Get
  92. stock GetPlayerRep(playerid, Rep:rep)
  93. {
  94.     #pragma unused playerid
  95.     return (_:rep);
  96. }
  97.  
  98.  
  99. stock GetTypeRep(playerid, Rep:rep)
  100. {
  101.     new type[15];
  102.     switch(Type[_:rep][playerid])
  103.     {
  104.         case false: type = TYPE_POSITIVE_REP;
  105.         case true: type = TYPE_NEGATIVE_REP;
  106.     }
  107.     return type;
  108. }
  109.  
  110.  
  111.  
  112. stock GetCommentToRep(playerid, Rep:rep) // It extracts the comment of a Reputation.
  113. {
  114.     return (Comment2[_:rep][playerid]);
  115. }
  116.  
  117.  
  118.  
  119. // ======== Saving
  120. stock SaveRepToPlayer(playerid, Rep:rep, file[], line[])
  121. {
  122.     #pragma unused playerid
  123.     dini_IntSet(file, line, _:rep);
  124. }
  125.  
  126. stock SaveTypeRepToPlayer(playerid, Rep:rep, file[], line[])
  127. {
  128.     dini_Set(file, line, GetTypeRep(playerid, _:rep));
  129. }
  130.  
  131. stock SaveCommentRepToPlayer(playerid, Rep:rep, file[], line[]) // He guards the comment of a reputation.
  132. {
  133.     dini_Set(file, line, Comment2[_:rep][playerid]);
  134. }
  135.  
  136.  
  137. // ======== Load
  138. stock LoadRepToPlayer(playerid, &Rep:rep, file[], line[])
  139. {
  140.     #pragma unused playerid
  141.     return (_:rep = dini_Int(file, line));
  142. }
  143.  
  144. stock LoadCommentToRepPlayer(playerid, Rep:rep, file[], line[])
  145. {
  146.     #pragma unused playerid
  147.     new string[144];
  148.     format(string, sizeof(string), "%s", dini_Get(file, line));
  149.     SetCommentToRep(playerid, Comment2[_:rep][playerid], string);
  150.     //strins(Comment2[_:rep][playerid], string, 0, sizeof(string));
  151.     return string;
  152. }
  153.  
  154. stock LoadTypeRepToPlayer(playerid, Rep:rep, file[], line[])
  155. {
  156.     strcat(Type[_:rep][playerid], dini_Get(file, line));
  157. }
  158.  
  159.  
  160.  
  161. // Timer's...
  162. stock StartTimer(&Timer:timerid, const timer)
  163. {
  164.     timerid = ((gettime())+(timer));
  165.     return 1;
  166. }
  167. stock ObtainTimer(Timer:timerid)
  168. {
  169.     new timer = gettime();
  170.     return (_:timerid-timer <= 0) ? (0) : (_:timerid-timer);
  171. }
  172.  
  173. stock bool:TimerHasHappened(Timer:timerid)
  174. {
  175.     return (ObtainTimer(_:timerid) <= 0) ? (true) : (false);
  176. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement