Advertisement
Chainksain

tutorial5.pwn

Apr 13th, 2020
1,142
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pawn 6.93 KB | None | 0 0
  1. #include <a_samp>
  2. #include <sscanf2>
  3. #include <zcmd>
  4.  
  5. #define function%0(%1) forward %0(%1); public %0(%1)
  6.  
  7. main()
  8. {
  9.     print("\n----------------------------------");
  10.     print(" Blank Gamemode by your name here");
  11.     print("----------------------------------\n");
  12. }
  13.  
  14. public OnGameModeInit()
  15. {
  16.     SetGameModeText("Blank Script");
  17.     AddPlayerClass(0, 1958.3783, 1343.1572, 15.3746, 269.1425, 0, 0, 0, 0, 0, 0);
  18.     LoadMap("maps/favela_objects.txt");
  19.     return 1;
  20. }
  21.  
  22. public OnGameModeExit()
  23. {
  24.     return 1;
  25. }
  26.  
  27. public OnPlayerRequestClass(playerid, classid)
  28. {
  29.     SetPlayerPos(playerid, 1958.3783, 1343.1572, 15.3746);
  30.     SetPlayerCameraPos(playerid, 1958.3783, 1343.1572, 15.3746);
  31.     SetPlayerCameraLookAt(playerid, 1958.3783, 1343.1572, 15.3746);
  32.     return 1;
  33. }
  34.  
  35. public OnPlayerConnect(playerid)
  36. {
  37.     RemoveBuildingFromFile(playerid, "maps/favela_buildings.txt");
  38.     return 1;
  39. }
  40.  
  41. public OnPlayerDisconnect(playerid, reason)
  42. {
  43.     new rsnstr[3][] =
  44.     {
  45.         "Timeout/Crash",
  46.         "Saiu",
  47.         "Kickado/Banido"
  48.     };
  49.     new string[64];
  50.     format(string, sizeof(string), "%s foi desconectado (%s)", GetPlayerNameEx(playerid), rsnstr[reason]);
  51.     SendClientMessageToAll(-1, string);
  52.     return 1;
  53. }
  54.  
  55. public OnPlayerSpawn(playerid)
  56. {
  57.     return 1;
  58. }
  59.  
  60. public OnPlayerDeath(playerid, killerid, reason)
  61. {
  62.     return 1;
  63. }
  64.  
  65. public OnVehicleSpawn(vehicleid)
  66. {
  67.     return 1;
  68. }
  69.  
  70. public OnVehicleDeath(vehicleid, killerid)
  71. {
  72.     return 1;
  73. }
  74.  
  75. public OnPlayerText(playerid, text[])
  76. {
  77.     return 1;
  78. }
  79.  
  80. public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
  81. {
  82.     return 1;
  83. }
  84.  
  85. public OnPlayerExitVehicle(playerid, vehicleid)
  86. {
  87.     return 1;
  88. }
  89.  
  90. public OnPlayerStateChange(playerid, newstate, oldstate)
  91. {
  92.     return 1;
  93. }
  94.  
  95. public OnPlayerEnterCheckpoint(playerid)
  96. {
  97.     return 1;
  98. }
  99.  
  100. public OnPlayerLeaveCheckpoint(playerid)
  101. {
  102.     return 1;
  103. }
  104.  
  105. public OnPlayerEnterRaceCheckpoint(playerid)
  106. {
  107.     return 1;
  108. }
  109.  
  110. public OnPlayerLeaveRaceCheckpoint(playerid)
  111. {
  112.     return 1;
  113. }
  114.  
  115. public OnRconCommand(cmd[])
  116. {
  117.     return 1;
  118. }
  119.  
  120. public OnPlayerRequestSpawn(playerid)
  121. {
  122.     return 1;
  123. }
  124.  
  125. public OnObjectMoved(objectid)
  126. {
  127.     return 1;
  128. }
  129.  
  130. public OnPlayerObjectMoved(playerid, objectid)
  131. {
  132.     return 1;
  133. }
  134.  
  135. public OnPlayerPickUpPickup(playerid, pickupid)
  136. {
  137.     return 1;
  138. }
  139.  
  140. public OnVehicleMod(playerid, vehicleid, componentid)
  141. {
  142.     return 1;
  143. }
  144.  
  145. public OnVehiclePaintjob(playerid, vehicleid, paintjobid)
  146. {
  147.     return 1;
  148. }
  149.  
  150. public OnVehicleRespray(playerid, vehicleid, color1, color2)
  151. {
  152.     return 1;
  153. }
  154.  
  155. public OnPlayerSelectedMenuRow(playerid, row)
  156. {
  157.     return 1;
  158. }
  159.  
  160. public OnPlayerExitedMenu(playerid)
  161. {
  162.     return 1;
  163. }
  164.  
  165. public OnPlayerInteriorChange(playerid, newinteriorid, oldinteriorid)
  166. {
  167.     return 1;
  168. }
  169.  
  170. public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
  171. {
  172.     return 1;
  173. }
  174.  
  175. public OnRconLoginAttempt(ip[], password[], success)
  176. {
  177.     return 1;
  178. }
  179.  
  180. public OnPlayerUpdate(playerid)
  181. {
  182.     return 1;
  183. }
  184.  
  185. public OnPlayerStreamIn(playerid, forplayerid)
  186. {
  187.     return 1;
  188. }
  189.  
  190. public OnPlayerStreamOut(playerid, forplayerid)
  191. {
  192.     return 1;
  193. }
  194.  
  195. public OnVehicleStreamIn(vehicleid, forplayerid)
  196. {
  197.     return 1;
  198. }
  199.  
  200. public OnVehicleStreamOut(vehicleid, forplayerid)
  201. {
  202.     return 1;
  203. }
  204.  
  205. public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
  206. {
  207.     return 1;
  208. }
  209.  
  210. public OnPlayerClickPlayer(playerid, clickedplayerid, source)
  211. {
  212.     return 1;
  213. }
  214.  
  215. public OnPlayerClickMap(playerid, Float:fX, Float:fY, Float:fZ)
  216. {
  217.     return 1;
  218. }
  219.  
  220. // FUNCOES
  221.  
  222. function RemoveBuildingFromFile(playerid, const file[])
  223. {
  224.     new File:map = fopen(file, io_read);
  225.     if(map)
  226.     {
  227.         new string[256];
  228.         while(fread(map, string))
  229.         {
  230.             new modelid, Float:pos[3], Float:rad;
  231.             if(!sscanf(string, "dffff", modelid, pos[0], pos[1], pos[2], rad))
  232.                 RemoveBuildingForPlayer(playerid, modelid, pos[0], pos[1], pos[2], rad);
  233.             else
  234.                 return printf("Carregamento do mapa '%s' falhou para o jogador %s(%d).", file, GetPlayerNameEx(playerid), playerid);
  235.         }
  236.     }
  237.     return printf("Jogador %s(%d) carregou o mapa '%s' com êxito.", GetPlayerNameEx(playerid), playerid, file);
  238. }
  239.  
  240. function LoadMap(const file[])
  241. {
  242.     printf("Carregando Mapa '%s'...", file);
  243.     new File:map = fopen(file, io_read);
  244.     if(map)
  245.     {
  246.         new string[256];
  247.         while(fread(map, string))
  248.         {
  249.             new modelid, Float:pos[3], Float:rot[3];
  250.             if(sscanf(string, "dffffff", modelid, pos[0], pos[1], pos[2], rot[0], rot[1], rot[2]))
  251.                 return printf("Erro ao carregar o mapa '%s'!",file);
  252.             else
  253.                 CreateObject(modelid, pos[0], pos[1], pos[2], rot[0], rot[1], rot[2]);
  254.                
  255.         }
  256.         return printf("Mapa '%s' carregado com sucesso!",file);
  257.     }
  258.     else return printf("Erro ao carregar o mapa '%s'!",file);
  259. }
  260.  
  261. // COMANDOS
  262.  
  263. CMD:pos(playerid, params[])
  264. {
  265.     new Float:pos[3], giveplayerid;
  266.     if(sscanf(params, "ufff", giveplayerid, pos[0], pos[1], pos[2]))
  267.         return SendClientMessage(playerid, -1, "USO: /pos [id] [x] [y] [z]");
  268.  
  269.     if(!IsPlayerConnected(giveplayerid) || giveplayerid == INVALID_PLAYER_ID)
  270.         return SendClientMessage(playerid, -1, "ERRO: ID Inválido!");
  271.  
  272.     SetPlayerPos(giveplayerid, pos[0], pos[1], pos[2]);
  273.     return 1;
  274. }
  275.  
  276. CMD:info(playerid, params[])
  277. {
  278.     new giveplayerid, string[64];
  279.    
  280.     if(sscanf(params, "u", giveplayerid))
  281.         return SendClientMessage(playerid, -1, "USO: /info [id]");
  282.    
  283.     if(!IsPlayerConnected(giveplayerid) || giveplayerid == INVALID_PLAYER_ID)
  284.         return SendClientMessage(playerid, -1, "ERRO: ID Inválido!");
  285.  
  286.     format(string, sizeof(string), "Jogador: %s", GetPlayerNameEx(giveplayerid));
  287.     SendClientMessage(playerid, -1, string);
  288.  
  289.     format(string, sizeof(string), "ID: %d", giveplayerid);
  290.     SendClientMessage(playerid, -1, string);
  291.  
  292.     format(string, sizeof(string), "Score: %d", GetPlayerScore(giveplayerid));
  293.     SendClientMessage(playerid, -1, string);
  294.  
  295.     format(string, sizeof(string), "Dinheiro: %d", GetPlayerMoney(giveplayerid));
  296.     SendClientMessage(playerid, -1, string);
  297.        
  298.     format(string, sizeof(string), "Life: %f", GetPlayerHealthEx(giveplayerid));
  299.     SendClientMessage(playerid, -1, string);
  300.  
  301.     format(string, sizeof(string), "Armor: %f", GetPlayerArmourEx(giveplayerid));
  302.     SendClientMessage(playerid, -1, string);
  303.  
  304.     new Float:pos[3];
  305.     GetPlayerPos(giveplayerid, pos[0], pos[1], pos[2]);
  306.     format(string, sizeof(string), "PosX: %f PosY: %f PosZ: %f", pos[0], pos[1], pos[2]);
  307.     SendClientMessage(playerid, -1, string);
  308.  
  309.     format(string, sizeof(string),"Int: %d", GetPlayerInterior(giveplayerid));
  310.     SendClientMessage(playerid, -1, string);
  311.  
  312.     format(string, sizeof(string),"Virtual World: %d", GetPlayerVirtualWorld(giveplayerid));
  313.     SendClientMessage(playerid, -1, string);
  314.  
  315.     return 1;
  316. }
  317.  
  318. // PROCEDIMENTOS
  319.  
  320. stock GetPlayerNameEx(playerid)
  321. {
  322.     new PlayerName[MAX_PLAYER_NAME];
  323.     GetPlayerName(playerid, PlayerName, sizeof(PlayerName));
  324.     return PlayerName;
  325. }
  326.  
  327. function Float:GetPlayerHealthEx(playerid)
  328. {
  329.     new Float:health;
  330.     GetPlayerHealth(playerid, health);
  331.     return health;
  332. }
  333.  
  334. function Float:GetPlayerArmourEx(playerid)
  335. {
  336.     new Float:armor;
  337.     GetPlayerArmour(playerid, armor);
  338.     return armor;
  339. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement