Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /*
- Lawn Mower ca pe Bugged - start date: 10.08.2021
- (C) irinel77
- La define-uri sau enumeratia de dialoguri:
- 1. #define DIALOG_JOBS 7462
- 2. DIALOG_JOBS,
- */
- #include <YSI\y_hooks>
- #include <YSI\y_timers>
- #include <YSI\y_inline>
- #define LAWN_MOWER_JOB 9 // ID-ul folosit pentru job (numarul de joburi exitente pe server + 1)
- #define LAWN_MOWER_MONEY 100 // Banii primiti la fiecare 10 secunde.
- #define LAWN_MOWER_AREA_X 1355.6140
- #define LAWN_MOWER_AREA_Y 2150.3335
- #define LAWN_MOWER_AREA_Z 11.0156
- #define LAWN_MOWER_VEHICLE_MODEL 572 // Modelul vehiculului folosit pentru job.
- #define LAWN_MOWER_RANGE 169.0 // Raza de actiune a jobului.
- new lawn_mower_job_enabled;
- new PlayerText:ptd_lawn_mower;
- new lawn_mower_vehicle[MAX_PLAYERS],
- lawn_mower_earnings[MAX_PLAYERS];
- hook OnGameModeInit() {
- lawn_mower_job_enabled = 0; // Puteti face voi un inline/tquery sa-l incarcati din baza de date.
- }
- hook OnPlayerConnect(playerid) {
- lawn_mower_vehicle[playerid] = INVALID_VEHICLE_ID;
- lawn_mower_earnings[playerid] = 0;
- ptd_lawn_mower = CreatePlayerTextDraw(playerid, 85.000007, 319.007354, "earned: ~g~$0");
- PlayerTextDrawLetterSize(playerid, ptd_lawn_mower, 0.259000, 1.496296);
- PlayerTextDrawAlignment(playerid, ptd_lawn_mower, 2);
- PlayerTextDrawColor(playerid, ptd_lawn_mower, -1);
- PlayerTextDrawSetShadow(playerid, ptd_lawn_mower, 0);
- PlayerTextDrawSetOutline(playerid, ptd_lawn_mower, 1);
- PlayerTextDrawBackgroundColor(playerid, ptd_lawn_mower, 255);
- PlayerTextDrawFont(playerid, ptd_lawn_mower, 3);
- PlayerTextDrawSetProportional(playerid, ptd_lawn_mower, 1);
- PlayerTextDrawSetShadow(playerid, ptd_lawn_mower, 0);
- }
- hook OnPlayerDisconnect(playerid, reason) {
- if(lawn_mower_vehicle[playerid] != INVALID_VEHICLE_ID) {
- DestroyVehicle(lawn_mower_vehicle[playerid]);
- lawn_mower_vehicle[playerid] = INVALID_VEHICLE_ID;
- lawn_mower_earnings[playerid] = 0;
- }
- }
- hook OnPlayerStateChange(playerid, newstate, oldstate) {
- if(newstate == PLAYER_STATE_ONFOOT) {
- if(lawn_mower_vehicle[playerid] != INVALID_VEHICLE_ID) {
- AddBigInt(playerVariables[playerid][pCashStore], playerVariables[playerid][pCash], lawn_mower_earnings[playerid]);
- //GivePlayerMoney(playerid, lawn_mower_earnings[playerid]);
- PlayerTextDrawHide(playerid, ptd_lawn_mower);
- DestroyVehicle(lawn_mower_vehicle[playerid]);
- SCM(playerid, COLOR_GREEN, "(+) Ai primit $%s pentru munca depusa.", FormatNumber(lawn_mower_earnings[playerid]));
- playerVariables[playerid][pJob] = 0;
- lawn_mower_earnings[playerid] = 0;
- lawn_mower_vehicle[playerid] = INVALID_VEHICLE_ID;
- }
- }
- }
- // Exemplu de comanda /jobs ca pe Bugged
- hook OnDialogResponse(playerid, dialogid, response, listitem, inputtext[]) {
- if(dialogid == DIALOG_JOBS) {
- if(!response) return 1;
- if(lawn_mower_job_enabled == 1 && listitem == LAWN_MOWER_JOB-1) {
- SCM(playerid, COLOR_YELLOW, "Mergi la checkpoint-ul de pe harta pentru a ajunge la jobul Lawn Mower.");
- SetPlayerCheckpointEx(playerid, LAWN_MOWER_AREA_X, LAWN_MOWER_AREA_Y, LAWN_MOWER_AREA_Z, 5.0);
- }
- else {
- new jobid = listitem + 1;
- SCM(playerid, COLOR_YELLOW, "Ti-a fost setat un checkpoint pentru a ajunge la jobul %s. Distanta: %0.1fm.", jobVariables[jobid][jName], GetPlayerDistanceFromPoint(playerid, jobVariables[jobid][jPositionX], jobVariables[jobid][jPositionY], jobVariables[jobid][jPositionZ]));
- SetPlayerCheckpointEx(playerid, jobVariables[jobid][jPositionX], jobVariables[jobid][jPositionY], jobVariables[jobid][jPositionZ], 5.0);
- }
- playerVariables[playerid][pCheckpoint] = 3;
- }
- return 0;
- }
- YCMD:jobs(playerid, params[], help) {
- new jobDialog[1024];
- strcat(jobDialog, "Job name\tWorkers\n");
- foreach(new j : server_jobs) format(jobDialog, sizeof(jobDialog), "%s%s\t%d\n", jobDialog, jobVariables[j][jName], getJobWorkers(j));
- if(lawn_mower_job_enabled == 1) strcat(jobDialog, "Lawn Mower\t{FFFF00}[SPECIAL QUEST]");
- ShowPlayerDialog(playerid, DIALOG_JOBS, DIALOG_STYLE_TABLIST_HEADERS, "SERVER: Jobs", jobDialog, "Select", "Exit");
- return 1;
- }
- stock getJobWorkers(jobid) {
- new players;
- foreach(new playerid : Player) if(playerVariables[playerid][pJob] == jobid) players++;
- return players;
- }
- //
- YCMD:lawnmower(playerid, params[], help) {
- if(playerVariables[playerid][pAdminLevel] < 6) return SendClientMessage(playerid, COLOR_LIGHTGREEN, "You are not allowed to use this command.");
- if(lawn_mower_job_enabled == 0) {
- lawn_mower_job_enabled = 1;
- SCM(playerid, COLOR_YELLOW, "Lawn Mower job enabled (job ID: %d).", LAWN_MOWER_JOB);
- }
- else {
- lawn_mower_job_enabled = 0;
- SendClientMessage(playerid, COLOR_YELLOW, "Lawn Mower job disabled.");
- }
- return 1;
- }
- YCMD:gotolm(playerid, params[], help) {
- if(playerVariables[playerid][pAdminLevel] < 6) return SendClientMessage(playerid, COLOR_LIGHTGREEN, "You are not allowed to use this command.");
- SetPlayerPos(playerid, LAWN_MOWER_AREA_X, LAWN_MOWER_AREA_Y, LAWN_MOWER_AREA_Z);
- SendClientMessage(playerid, 0xCECECECE, "You have been teleported.");
- return 1;
- }
- ptask lawn_mower[10000](playerid) {
- if(IsPlayerInRangeOfPoint(playerid, 10.0, LAWN_MOWER_AREA_X, LAWN_MOWER_AREA_Y, LAWN_MOWER_AREA_Z) && playerVariables[playerid][pJob] != LAWN_MOWER_JOB) {
- lawn_mower_vehicle[playerid] = AddStaticVehicle(LAWN_MOWER_VEHICLE_MODEL, LAWN_MOWER_AREA_X, LAWN_MOWER_AREA_Y, LAWN_MOWER_AREA_Z, 0.0, random(128), random(128));
- SetVehicleVirtualWorld(lawn_mower_vehicle[playerid], GetPlayerVirtualWorld(playerid));
- PutPlayerInVehicle(playerid, lawn_mower_vehicle[playerid], 0);
- SendClientMessage(playerid, COLOR_YELLOW, "Acum esti Taietor de iarba!");
- playerVariables[playerid][pJob] = LAWN_MOWER_JOB;
- lawn_mower_earnings[playerid] = 0;
- vehicle_fuel[lawn_mower_vehicle[playerid]] = 1337;
- PlayerTextDrawShow(playerid, ptd_lawn_mower);
- return 1;
- }
- if(playerVariables[playerid][pJob] == LAWN_MOWER_JOB && lawn_mower_vehicle[playerid] != INVALID_VEHICLE_ID) {
- if(IsPlayerInRangeOfPoint(playerid, LAWN_MOWER_RANGE, LAWN_MOWER_AREA_X, LAWN_MOWER_AREA_Y, LAWN_MOWER_AREA_Z)) {
- if(GetVehicleSpeed(playerid) >= 27) {
- lawn_mower_earnings[playerid] += LAWN_MOWER_MONEY + random(14) + 1;
- new earned[64];
- format(earned, 64, "earned: ~g~$%s", FormatNumber(lawn_mower_earnings[playerid]));
- PlayerTextDrawSetString(playerid, ptd_lawn_mower, earned);
- }
- else SendClientMessage(playerid, COLOR_LIGHTGREEN, "Trebuie sa mergi cu minim 27km/h pentru a fi platit.");
- }
- else {
- DestroyVehicle(lawn_mower_vehicle[playerid]);
- SCM(playerid, COLOR_LIGHTGREEN, "Ai parasit zona jobului.");
- }
- }
- return 0;
- }
- /*
- stock GetVehicleSpeed(playerid) {
- new Float:Speed[3];
- GetVehicleVelocity(GetPlayerVehicleID(playerid),Speed[0],Speed[1],Speed[2]);
- return floatround(1.61*floatsqroot(floatpower(floatabs(Speed[0]), 2.0) + floatpower(floatabs(Speed[1]), 2.0) + floatpower(floatabs(Speed[2]), 2.0)) * 99.38);
- }
- */
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement