Guest User

Littlejohny

a guest
Jun 2nd, 2009
435
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.65 KB | None | 0 0
  1. /*
  2. MultiLanguage by Littlejohny (c) 2009
  3. Don't remove the Credits, thanks !
  4. */
  5.  
  6. #if defined _MultiLanguage_included
  7. #endinput
  8. #endif
  9.  
  10. #include <a_samp>
  11. #include <dini>
  12.  
  13. #define _MultiLanguage_included
  14. #pragma library MultiLanguage
  15.  
  16. /*
  17. native SetPlayerLanguage(playerid, language);
  18. native GetPlayerLanguage(playerid);
  19. native IsPlayerLanguage(playerid, language);
  20. native
  21. native
  22. native SendLanguageText(playerid, color, string1[], string2[], string3[]);
  23. native SendLanguageTextToAll(color, string1[], string2[], string3[]);
  24. native GameLanguageText(playerid, color, string1[], string2[], string3[], time, style);
  25. native GameLanguageTextForAll(color, string1[], string2[], string3[], time, style);
  26. native
  27. native SavePlayerLanguage(playerid);
  28. native LoadPlayerLanguage(playerid);
  29. native
  30. native GetName(playerid);
  31. */
  32.  
  33. new TheLanguage[MAX_PLAYERS] = 1; // sets the Player at the first connection to Language 1
  34.  
  35. stock SetPlayerLanguage(playerid, language) // Sets the Player to a Language
  36. {
  37. if(language == 1)
  38. {
  39. if(TheLanguage[playerid] == 1) return 0;
  40. TheLanguage[playerid] = 1;
  41. }
  42. else if(language == 2)
  43. {
  44. if(TheLanguage[playerid] == 2) return 0;
  45. TheLanguage[playerid] = 2;
  46. }
  47. else if(language == 3)
  48. {
  49. if(TheLanguage[playerid] == 3) return 0;
  50. TheLanguage[playerid] = 3;
  51. }
  52. return 1;
  53. }
  54.  
  55. stock SavePlayerLanguage(playerid) // Saves the Language
  56. {
  57. new file[256];
  58. if(LanguageFileExist(playerid))
  59. {
  60. file = GetPlayerLanguageFile(playerid);
  61. dini_IntSet(file, "Language", TheLanguage[playerid]);
  62. }
  63. return 1;
  64. }
  65.  
  66. stock LoadPlayerLanguage(playerid) // Loads the Language
  67. {
  68. new file[256];
  69. if(!LanguageFileExist(playerid))
  70. {
  71. file = GetPlayerLanguageFile(playerid);
  72. dini_Create(file);
  73. dini_IntSet(file, "Language", TheLanguage[playerid]);
  74. }
  75. else if(LanguageFileExist(playerid))
  76. {
  77. file = GetPlayerLanguageFile(playerid);
  78. dini_IntSet(file, "Language", TheLanguage[playerid]);
  79. }
  80. return 1;
  81. }
  82.  
  83. stock LanguageFileExist(playerid) // Exist the Language File ?
  84. {
  85. if(dini_Exists(GetPlayerLanguageFile(playerid)))
  86. {
  87. return true;
  88. } else {
  89. return false;
  90. }
  91. }
  92.  
  93. stock GetPlayerLanguageFile(playerid) // Gets the Language File of a Player
  94. {
  95. new string[256];
  96. format(string,sizeof(string),"/Language/%s.ini", GetName(playerid));
  97. return string;
  98. }
  99.  
  100. stock GetName(playerid) // Gets the Name of a Player
  101. {
  102. new name[MAX_PLAYER_NAME];
  103. GetPlayerName(playerid,name,sizeof(name));
  104. return name;
  105. }
  106.  
  107. stock SendLanguageText(playerid, color, const string1[], const string2[], const string3[])
  108. {
  109. if(TheLanguage[playerid] == 1) // Language 1
  110. {
  111. SendClientMessage(playerid, color, string1);
  112. }
  113. else if(TheLanguage[playerid] == 2) // Lanugage 2
  114. {
  115. SendClientMessage(playerid, color, string2);
  116. }
  117. else if(TheLanguage[playerid] == 3) // Language 3
  118. {
  119. SendClientMessage(playerid, color, string3);
  120. }
  121. return 1;
  122. }
  123.  
  124. stock SendLanguageTextToAll(color, const string1[], const string2[], const string3[])
  125. {
  126. for(new i = 0; i < MAX_PLAYERS; i++)
  127. {
  128. if(TheLanguage[i] == 1) // Language 1
  129. {
  130. SendClientMessage(i, color, string1);
  131. }
  132. else if(TheLanguage[i] == 2) // Language 2
  133. {
  134. SendClientMessage(i, color, string2);
  135. }
  136. else if(TheLanguage[i] == 3) // Language 3
  137. {
  138. SendClientMessage(i, color, string3);
  139. }
  140. }
  141. return 1;
  142. }
  143.  
  144. stock GameLanguageText(playerid, const string1[], const string2[], const string3[], time, style)
  145. {
  146. if(TheLanguage[playerid] == 1) // Language 1
  147. {
  148. GameTextForPlayer(playerid, string1, time, style);
  149. }
  150. else if(TheLanguage[playerid] == 2) // Language 2
  151. {
  152. GameTextForPlayer(playerid, string2, time, style);
  153. }
  154. else if(TheLanguage[playerid] == 3) // Language 3
  155. {
  156. GameTextForPlayer(playerid, string3, time, style);
  157. }
  158. return 1;
  159. }
  160.  
  161. stock GameLanguageTextForAll(const string1[], const string2[], const string3[], time, style)
  162. {
  163. for(new i = 0; i < MAX_PLAYERS; i++)
  164. {
  165. if(TheLanguage[i] == 1) // Language 1
  166. {
  167. GameTextForPlayer(i,string1, time, style);
  168. }
  169. else if(TheLanguage[i] == 2) // Language 2
  170. {
  171. GameTextForPlayer(i,string2, time, style);
  172. }
  173. else if(TheLanguage[i] == 3) // Language 3
  174. {
  175. GameTextForPlayer(i,string3, time, style);
  176. }
  177. }
  178. return 1;
  179. }
  180.  
  181. stock GetPlayerLanguage(playerid) // Gets the Language of a Player
  182. {
  183. return TheLanguage[playerid];
  184. }
  185.  
  186. stock IsPlayerLanguage(playerid) // Sets the Player to a Language
  187. {
  188. new language = TheLanguage[playerid];
  189. if(language == 1)
  190. {
  191. return true;
  192. }
  193. else if(language == 2)
  194. {
  195. return true;
  196. }
  197. else if(language == 3)
  198. {
  199. return true;
  200. }
  201. return false;
  202. }
Advertisement
Add Comment
Please, Sign In to add comment