Advertisement
Guest User

Untitled

a guest
Dec 28th, 2015
114
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 9.01 KB | None | 0 0
  1. #include <a_samp>
  2. #include <zcmd>
  3. #include <sscanf2>
  4. #include <YSI\y_ini>
  5.  
  6. /*---------------------------------------------------------------------------*/
  7.  
  8. #define SCM SendClientMessage
  9. #define SCMALL SendClientMessageToAll
  10.  
  11. /*----------------------------------------------------------------------*/
  12.  
  13. #define verde_deschis 0x66FF00FF
  14. #define albastru_deschis 0x00FFFFFF
  15. #define DIALOG_CREDITS 1
  16. #define DIALOG_KILL 2
  17. #define SPD ShowPlayerDialog
  18. #define DIALOG_REGISTER 10
  19. #define DIALOG_LOGIN 11
  20. #define Sfolder "System/Users/%s.ini"
  21. /*--------------------------------------------------------------------------*/
  22. new playeri_conectati = 0;
  23. main ( ) { }
  24. /*---------------------------------------------------------------------*/
  25. enum pINF
  26. {
  27. pPass,pCash,
  28. pKills,pDeaths
  29. };
  30. new PlayerInfo[MAX_PLAYERS][pINF];
  31. forward SetPlayerHalfHealth(playerid);
  32. forward LoadUser_data(playerid, name[], value[]);
  33. public LoadUser_data(playerid, name[], value[])
  34. {
  35. INI_Int("Parola",PlayerInfo[playerid][pPass]);
  36. INI_Int("Bani",PlayerInfo[playerid][pCash]);
  37. INI_Int("Kills",PlayerInfo[playerid][pKills]);
  38. INI_Int("Deaths",PlayerInfo[playerid][pDeaths]);
  39. return 1;
  40. }
  41. public SetPlayerHalfHealth(playerid)
  42.  
  43. {
  44. SetPlayerHalfHealth(playerid,50);
  45. SCM(playerid,-1,"Viata ti-a fost setata");
  46. }
  47. stock UserPath(playerid)
  48. {
  49. new string[128],playername[MAX_PLAYER_NAME];
  50. GetPlayerName(playerid,playername,sizeof(playername));
  51. format(string,sizeof(string), Sfolder ,playername);
  52. return string;
  53. }
  54. stock udb_hash(buf[])
  55. {
  56. new length=strlen(buf);
  57. new s1 = 1;
  58. new s2 = 0;
  59. new n;
  60. for (n=0; n<length; n++)
  61. {
  62. s1 = (s1 + buf[n]) % 65521;
  63. s2 = (s2 + s1) % 65521;
  64. }
  65. return (s2 << 16) + s1;
  66. }
  67. public OnGameModeInit()
  68. {
  69. SetGameModeText("RPG Server");
  70. AddPlayerClass(0, 1958.3783, 1343.1572, 15.3746, 269.1425, 0, 0, 0, 0, 0, 0);
  71. AddPlayerClass(21,1958.3783, 1343.1572, 15.3746, 269.1425,21,30,0,0,0,0);
  72. return 1;
  73. }
  74.  
  75. public OnGameModeExit()
  76. {
  77. return 1;
  78. }
  79.  
  80. public OnPlayerRequestClass(playerid, classid)
  81. {
  82. SetPlayerPos(playerid, 2097.3735,1160.7543,11.6484);
  83. SetPlayerCameraPos(playerid, 2097.3735,1160.7543,11.6484);
  84. SetPlayerCameraLookAt(playerid, 2097.3735,1160.7543,11.6484);
  85. return 1;
  86. }
  87.  
  88. public OnPlayerConnect(playerid)
  89. {
  90. if(fexist(UserPath(playerid)))
  91. {
  92. INI_ParseFile(UserPath(playerid),"LoadUser_%s",.bExtra = true, .extra = playerid);
  93. SPD(playerid, DIALOG_LOGIN, DIALOG_STYLE_PASSWORD,"{00E6FF}Login", "{FFFFFF}Bine ai revenit! \n Logheaza-te.", "Login", "Quit");
  94. }
  95. else
  96. {
  97. SPD(playerid, DIALOG_REGISTER, DIALOG_STYLE_INPUT,"{00E6FF}Register", "{FFFFFF}Bine ai venit! \n Intregistreaza-te.", "Register", "Quit");
  98. }
  99.  
  100. {
  101. new player_activ[128];
  102. SendClientMessage(playerid, albastru_deschis, "Bine ai venit pe serverul nostru!");
  103. SCM(playerid, albastru_deschis, "Distractie placuta!");
  104. playeri_conectati++;
  105. format(player_activ, sizeof(player_activ), "{99FFFF}Info: {99FFFF}Acum pe server sunt {66FF00}%i / 40 {99FFFF} playeri conectati",playeri_conectati);
  106. SendClientMessageToAll(-1,player_activ);
  107. return 1;
  108. }
  109.  
  110. public OnPlayerDisconnect(playerid, reason)
  111. {
  112. new INI:file = INI=Open(UserPath(playerid));
  113. INI_SetTag(file,"data");
  114. INI_WriteInt(file,"Parola",Playerinfo,[playerid][pPass]);
  115. INI_WriteInt(file,"Bani",Playerinfo,[playerid][pCash]);
  116. INI_WriteInt(file,"Kills",Playerinfo,[playerid][pKills]);
  117. INI_WriteInt(file,"Deaths",Playerinfo,[playerid][pDeaths]);
  118. INI_Close(file);
  119. new player_activ[128];
  120. playeri_conectati--;
  121. format(player_activ, sizeof(player_activ), "{99FFFF}Info: {99FFFF}Acum pe server sunt {66FF00}%i / 40 {99FFFF} playeri conectati",playeri_conectati);
  122. SendClientMessageToAll(-1,player_activ);
  123. SendClientMessageToAll(playerid,"Un jucator s-a deconectat");
  124. return 1;
  125. }
  126.  
  127. public OnPlayerSpawn(playerid)
  128. {
  129. SetPlayerSkin(playerid,24);
  130. return 1;
  131. }
  132.  
  133. public OnPlayerDeath(playerid, killerid, reason)
  134. {
  135. PlayerInfo[killerid][pKills]++;
  136. PlayerInfo[playerid][pDeaths]++;
  137. return 1;
  138. }
  139.  
  140. public OnVehicleSpawn(vehicleid)
  141. {
  142. return 1;
  143. }
  144.  
  145. public OnVehicleDeath(vehicleid, killerid)
  146. {
  147. return 1;
  148. }
  149.  
  150. public OnPlayerText(playerid)
  151. {
  152. return 1;
  153. }
  154.  
  155. public OnPlayerCommandPerformed(playerid, cmdtext[], success)
  156. {
  157. if(!success)
  158. {
  159. new szString[128];
  160. format(szString, sizeof(szString), "{FF0004}Eroare!: {FFFFFF}Comanda %s nu exista!", cmdtext);
  161. SendClientMessage(playerid,-1,szString);
  162. }
  163. }
  164.  
  165. public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
  166. {
  167. return 1;
  168. }
  169.  
  170. public OnPlayerExitVehicle(playerid, vehicleid)
  171. {
  172. return 1;
  173. }
  174.  
  175. public OnPlayerStateChange(playerid, newstate, oldstate)
  176. {
  177. return 1;
  178. }
  179.  
  180. public OnPlayerEnterCheckpoint(playerid)
  181. {
  182. return 1;
  183. }
  184.  
  185. public OnPlayerLeaveCheckpoint(playerid)
  186. {
  187. return 1;
  188. }
  189.  
  190. public OnPlayerEnterRaceCheckpoint(playerid)
  191. {
  192. return 1;
  193. }
  194.  
  195. public OnPlayerLeaveRaceCheckpoint(playerid)
  196. {
  197. return 1;
  198. }
  199.  
  200. public OnRconCommand(cmd[])
  201. {
  202. return 1;
  203. }
  204.  
  205. public OnPlayerRequestSpawn(playerid)
  206. {
  207. return 1;
  208. }
  209.  
  210. public OnObjectMoved(objectid)
  211. {
  212. return 1;
  213. }
  214.  
  215. public OnPlayerObjectMoved(playerid, objectid)
  216. {
  217. return 1;
  218. }
  219.  
  220. public OnPlayerPickUpPickup(playerid, pickupid)
  221. {
  222. return 1;
  223. }
  224.  
  225. public OnVehicleMod(playerid, vehicleid, componentid)
  226. {
  227. return 1;
  228. }
  229.  
  230. public OnVehiclePaintjob(playerid, vehicleid, paintjobid)
  231. {
  232. return 1;
  233. }
  234.  
  235. public OnVehicleRespray(playerid, vehicleid, color1, color2)
  236. {
  237. return 1;
  238. }
  239.  
  240. public OnPlayerSelectedMenuRow(playerid, row)
  241. {
  242. return 1;
  243. }
  244.  
  245. public OnPlayerExitedMenu(playerid)
  246. {
  247. return 1;
  248. }
  249.  
  250. public OnPlayerInteriorChange(playerid, newinteriorid, oldinteriorid)
  251. {
  252. return 1;
  253. }
  254.  
  255. public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
  256. {
  257. return 1;
  258. }
  259.  
  260. public OnRconLoginAttempt(ip[], password[], success)
  261. {
  262. return 1;
  263. }
  264.  
  265. public OnPlayerUpdate(playerid)
  266. {
  267. return 1;
  268. }
  269.  
  270. public OnPlayerStreamIn(playerid, forplayerid)
  271. {
  272. return 1;
  273. }
  274.  
  275. public OnPlayerStreamOut(playerid, forplayerid)
  276. {
  277. return 1;
  278. }
  279.  
  280. public OnVehicleStreamIn(vehicleid, forplayerid)
  281. {
  282. return 1;
  283. }
  284.  
  285. public OnVehicleStreamOut(vehicleid, forplayerid)
  286. {
  287. return 1;
  288. }
  289.  
  290. public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
  291. {
  292. if(dialogid == DIALOG_REGISTER)
  293.  
  294. if(!response) return Kick(playerid);
  295. if(response)
  296. {
  297. if(!strlen(inputtext))return SPD(playerid, DIALOG_REGISTER,DIALOG_STYLE_INPUT,"{C0FF00}Register","{FFFFFF}Nu ai introdus nici-o parola.", "Register", "Kick");
  298. new INI:file = INI_Open(UserPath(playerid));
  299. INI_SetTag(file,"data");
  300. INI_WriteInt(file,"Parola",udb_hash(inputtext));
  301. INI_WriteInt(file,"Bani",0);
  302. INI_WriteInt(file,"Kills",0);
  303. INI_WriteInt(file,"Deaths",0);
  304. INI_Close(file);
  305. SpawnPlayer(playerid);
  306. }
  307. }
  308. if(dialogid == DIALOG_LOGIN);
  309. {
  310. if(!response)return Kick(playerid);
  311. if(response)
  312. {
  313. if(udb_hash(inputtext) == PlayerInfo[playerid][pPass])
  314. {
  315. INI_ParseFile(UserPath(playerid), "LoadUser_%s", .bExtra = true, .extra=playerid);
  316. GivePlayerMoney(playerid, Playerinfo[playerid][pCash]);
  317. SpawnPlayer(playerid);
  318. }
  319. else
  320. {
  321. SPD(playerid, DIALOG_LOGIN,DIALOG_STYLE_INPUT,"{FFFFFF}Login". "{FF0000}Ai scris parola gresit \n", "{FFFFFF}Incearca iar.", "Login","Kick");
  322. }
  323. }
  324. }
  325. return 1;
  326.  
  327. {
  328. if(dialogid == DIALOG_KILL)
  329. {
  330. if(!response)
  331. {
  332. SetPlayerHealth(playerid, 0);
  333. }
  334. if(response)
  335. {
  336. return 0;
  337. }
  338. }
  339. return 1;
  340. }
  341.  
  342. public OnPlayerClickPlayer(playerid, clickedplayerid, source)
  343. {
  344. return 1;
  345. }
  346.  
  347. //Comenzi //
  348.  
  349. CMD:numecomanda(playerid)
  350. {
  351. SCM(playerid, -1, "Salut!");
  352. return 1;
  353. }
  354.  
  355. CMD:credits(playerid)
  356. {
  357. new text[128];
  358. format(text, sizeof(text), "{C0FF00}Creator : {FFFFFF)Nume creator /n {C0FF00}Mapper: {FFFFFF}Nume mapper");
  359. ShowPlayerDialog(playerid, DIALOG_CREDITS,DIALOG_STYLE_MSGBOX, "{C0FF00}Credite!",text,"Ok","");
  360. return 1;
  361. }
  362.  
  363. CMD:kill(playerid)
  364. {
  365. ShowPlayerDialog(playerid, DIALOG_KILL, DIALOG_STYLE_MSGBOX, "{F71313}Vrei sa mori?", "{F71313}Vrei sa te sinucizi", "NU", "DA");
  366. return 1;
  367. }
  368.  
  369. CMD:viata(playerid)
  370. {
  371. SetPlayerHealth(playerid, 100);
  372. SetPlayerArmour(playerid, 100);
  373. return 1;
  374. }
  375. CMD:anunt(playerid,params[])
  376. {
  377. new text2[128], mesaj[128];
  378. if(sscanf(params, "s[128]", text2))return SCM(playerid, -1, "Foloseste /anunt [ mesaj ] ");
  379. format(mesaj, sizeof(mesaj), "{FF0000}Anunt: {FFFF00}%s",text2);
  380. SCM(playerid, -1, mesaj);
  381. return 1;
  382. }
  383. CMD:pm(playerid, params[])
  384. {
  385. new UserID, mesaj[128], info[128], pName[MAX_PLAYER_NAME], Destinatar[MAX_PLAYER_NAME], info2[128];
  386. if(sscanf(params, "s[128]u", mesaj, UserID))return SCM(playerid, -1,"Foloseste /pm [ UserID ] [ mesaj ]");
  387. GetPlayerName(playerid, pName, sizeof(pName));
  388. GetPlayerName(UserID, Destinatar, sizeof(Destinatar));
  389. format(info, sizeof(info), "{C0FF00}PM-System: {FFFFFF}%s : %s ",pName, mesaj);
  390. format(info2, sizeof(info2), "{C0FF00}PM-System: {FFFFFF}Ai trimis mesajul lui %s .", Destinatar);
  391. SCM(playerid, -1, info2);
  392. SCM(UserID, -1, info);
  393. return 1;
  394. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement