Advertisement
Guest User

fraktion

a guest
Mar 11th, 2011
238
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 6.64 KB | None | 0 0
  1.  
  2. #define FILTERSCRIPT
  3. #include <a_samp>
  4. #include <dini>
  5. #define DIALOG_LOGIN 3
  6. #define DIALOG_REG 4
  7.  
  8. #define COLOR_WHITE 0xFFFFFFAA
  9. #define blau 0x375FFFFF
  10. #define COLOR_LIGHTRED 0xFF6347AA
  11. #define COLOR_GREY 0xAFAFAFAA
  12.  
  13. #define TEAM_ZIVI 0 //zivilist
  14. #define TEAM_POLIZEI 1 //polizei
  15.  
  16. enum spieler_daten
  17. {
  18. wanted,
  19. skin,
  20. Float:lastx,Float:lasty,Float:lastz,
  21. team,
  22. leader,
  23. eingeloggt
  24. }
  25. new Spieler[MAX_PLAYERS][spieler_daten];
  26.  
  27. public OnFilterScriptInit()
  28. {
  29. print("\n--------------------------------------");
  30. print(" Blank Filterscript by your name here");
  31. print("--------------------------------------\n");
  32. return 1;
  33. }
  34. public OnPlayerRequestClass(playerid, classid)
  35. {
  36. SetPlayerPos(playerid, 1958.3783, 1343.1572, 15.3746);
  37. SetPlayerCameraPos(playerid, 1958.3783, 1343.1572, 15.3746);
  38. SetPlayerCameraLookAt(playerid, 1958.3783, 1343.1572, 15.3746);
  39. return 1;
  40. }
  41.  
  42. public OnPlayerConnect(playerid)
  43. {
  44. new pname[MAX_PLAYERS],accFormat[128];
  45. GetPlayerName(playerid,pname,sizeof pname);
  46. format(accFormat,sizeof accFormat,"%s.datei",pname);
  47. if(fexist(accFormat))
  48. {
  49. ShowPlayerDialog(playerid,DIALOG_LOGIN,1,"Login","Bitte logge dich ein","Abbrechen","Weiter");
  50. }
  51. else
  52. {
  53. ShowPlayerDialog(playerid,DIALOG_REG,1,"Registrieren","Bitte Registriere dich","Abbrechen","Weiter");
  54. }
  55. return 1;
  56. }
  57.  
  58. public OnPlayerDisconnect(playerid, reason)
  59. {
  60. new pname[MAX_PLAYERS],accFormat[128];
  61. GetPlayerName(playerid,pname,sizeof pname);
  62. format(accFormat,sizeof accFormat,"%s.datei",pname);
  63. if(fexist(accFormat) && Spieler[playerid][eingeloggt])
  64. {
  65. dini_IntSet(accFormat,"wanted",Spieler[playerid][wanted]);
  66. dini_IntSet(accFormat,"skin",Spieler[playerid][skin]);
  67. dini_FloatSet(accFormat,"lastx",Spieler[playerid][lastx]);
  68. dini_FloatSet(accFormat,"lasty",Spieler[playerid][lasty]);
  69. dini_FloatSet(accFormat,"lastz",Spieler[playerid][lastz]);
  70. dini_IntSet(accFormat,"Geld",GetPlayerMoney(playerid));
  71. dini_IntSet(accFormat,"Score",GetPlayerScore(playerid));
  72. }
  73. Spieler[playerid][eingeloggt] = 0;
  74. Spieler[playerid][wanted] = 0;
  75. Spieler[playerid][skin] = 0;
  76. Spieler[playerid][lastx] = (0.0);
  77. Spieler[playerid][lasty] = (0.0);
  78. Spieler[playerid][lastz] = (0.0);
  79. return 1;
  80. }
  81.  
  82. public OnPlayerSpawn(playerid)
  83. {
  84. new pname[MAX_PLAYERS],accFormat[128];
  85. GetPlayerName(playerid,pname,sizeof pname);
  86. format(accFormat,sizeof accFormat,"%s.datei",pname);
  87. if(dini_Isset(accFormat,"lastx"))
  88. {
  89.  
  90. }
  91. if(Spieler[playerid][team] == 0) //team zivi
  92. {
  93. SetPlayerPos(playerid, 1219.0143,-1812.4454,16.5938);
  94. SetPlayerColor(playerid, COLOR_WHITE);
  95. }
  96. if(Spieler[playerid][team] == 1) //team polizei
  97. {
  98. SetPlayerPos(playerid, 199.4538,168.0576,1003.0234 );
  99. SetPlayerInterior(playerid, 3);
  100. SetPlayerColor(playerid, blau);
  101. }
  102. {
  103. SetPlayerPos(playerid,Spieler[playerid][lastx],Spieler[playerid][lasty],Spieler[playerid][lastz]);
  104. }
  105. return 1;
  106. }
  107. public OnPlayerCommandText(playerid, cmdtext[])
  108. {
  109.  
  110. new string[128];
  111.  
  112. if(!strcmp(strget(cmdtext,0),"/invite"))
  113. {
  114. if(Spieler[playerid][leader])
  115. {
  116. if(!strlen(strget(cmdtext,1)))
  117. return
  118. SendClientMessage(playerid,COLOR_GREY,"Benutze: /invite [spielerid]");
  119. new gang;
  120. new inviteihn = strval(strget(cmdtext,1));
  121. new inviter[MAX_PLAYER_NAME];
  122. GetPlayerName(playerid,inviter,sizeof(inviter));
  123. format(string, sizeof(string), "*** Du wurdest von %s in eine Fraktion eingeladen.", inviter);
  124. SendClientMessage(inviteihn, COLOR_LIGHTRED, string);
  125. format(string, sizeof(string), "*** Du hast %s in deine Fraktion eingeladen.", inviteihn);
  126. SendClientMessage(playerid, COLOR_LIGHTRED, string);
  127. if(Spieler[playerid][team] == 0 ) { SetPlayerSkin(inviteihn,0);Spieler[playerid][team] = TEAM_ZIVI; }
  128. if(Spieler[playerid][team] == 1 ) { SetPlayerSkin(inviteihn,282);Spieler[playerid][team] = TEAM_POLIZEI; }
  129. Spieler[inviteihn][team] = gang;
  130. }
  131. else
  132. {
  133. SendClientMessage(playerid, COLOR_LIGHTRED,"Du darfst diesen Befehl nicht benutzen !");
  134. }
  135. }
  136. return 1;
  137. }
  138. public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
  139. {
  140. new pname[MAX_PLAYERS],accFormat[128];
  141. GetPlayerName(playerid,pname,sizeof pname);
  142. format(accFormat,sizeof accFormat,"%s.datei",pname);
  143. if(response)
  144. {
  145. switch(dialogid) // dialogid auswählen
  146. {
  147. case DIALOG_LOGIN: // ID Login
  148. {
  149. if(!strlen(inputtext))
  150. {
  151. ShowPlayerDialog(playerid,DIALOG_LOGIN,1,"Login","Bitte logge dich ein","Abbrechen","Weiter");
  152. return SendClientMessage(playerid,0xFFFFFFFF,"Kein Passwort angegeben!");
  153. }
  154. if(strcmp(inputtext,dini_Get(accFormat,"Passwort")) == 0) // Passwort Direkt aus der Datei Laden
  155. {
  156. Spieler[playerid][wanted] = dini_Int(accFormat,"wanted");
  157. Spieler[playerid][skin] = dini_Int(accFormat,"skin");
  158. Spieler[playerid][lastx] = dini_Float(accFormat,"lastx");
  159. Spieler[playerid][lasty] = dini_Float(accFormat,"lasty");
  160. Spieler[playerid][lastz] = dini_Float(accFormat,"lastz");
  161. GivePlayerMoney(playerid,dini_Int(accFormat,"Geld"));
  162. SetPlayerScore(playerid,dini_Int(accFormat,"Score"));
  163. Spieler[playerid][eingeloggt] = 1; // Spieler ist nun erfolgreich eingeloggt
  164. SendClientMessage(playerid,0xFFFFFFFF,"Du wurdest erfolgreich eingeloggt.");
  165. }
  166. else
  167. {
  168. ShowPlayerDialog(playerid,DIALOG_LOGIN,1,"Login","Bitte logge dich ein","Abbrechen","Weiter");
  169. SendClientMessage(playerid,0xFFFFFFFF,"Das Passwort war Falsch!");
  170. }
  171. }
  172. case DIALOG_REG: // ID Registrieren
  173. {
  174. if(!strlen(inputtext)) // Text darf nicht = Null sein Null im Sinne von nichts
  175. {
  176. ShowPlayerDialog(playerid,DIALOG_REG,1,"Registrieren","Bitte Registriere dich","Abbrechen","Weiter");
  177. return SendClientMessage(playerid,0xFFFFFFFF,"Das Passwort ist zu kurz!");
  178. }
  179. dini_Create(accFormat);
  180. dini_Set(accFormat,"Passwort",inputtext);
  181. Spieler[playerid][eingeloggt] = 1;
  182. SendClientMessage(playerid,0xFFFFFFFF,"Account wurde angelegt und du wurdest eingeloggt.");
  183. }
  184. }
  185. }
  186. else
  187. {
  188. switch(dialogid)
  189. {
  190. case DIALOG_LOGIN:ShowPlayerDialog(playerid,DIALOG_LOGIN,1,"Login","Bitte logge dich ein","Abbrechen","Weiter");
  191. case DIALOG_REG:ShowPlayerDialog(playerid,DIALOG_REG,1,"Registrieren","Bitte Registriere dich","Abbrechen","Weiter");
  192. }
  193. }
  194. return 1;
  195. }
  196.  
  197.  
  198. stock strget(strx[], pos, search = ' ') {
  199. new arg, ret[128], idxx;
  200. for (new i = 0; i < strlen(strx); i++) {
  201. if(strx[i] == search || i == strlen(strx) || strx[i + 1] == 10) {
  202. arg++;
  203. if (arg == pos + 1){
  204. ret[i-idxx] = EOS;
  205. return ret;
  206. } else if (arg == pos)
  207. idxx= i+1;
  208. }
  209. else if (arg == pos)
  210. ret[i - idxx] = strx[i];
  211. }
  212. return ret;
  213. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement