Вопросы

Когда я начинаю работать шахтёром подходу на чекпоинт и ничего не происходит.

case CP_ACTION_TYPE_MINER_JOB_PUT:
        {
                if(GetPlayerTempJob(playerid) == TEMP_JOB_MINER)
                {
                        ApplyAnimation(playerid, "BASEBALL", "Bat_4", 4.1, 1, 1, 1, 1, 0);
                        DisablePlayerCheckpoint(playerid);
                        SetTimerEx("GivePlayerOre", 9800, false, "i", playerid);
                }
        }
        case CP_ACTION_TYPE_MINER_JOB_TAKE:
        {
                if(GetPlayerTempJob(playerid) == TEMP_JOB_MINER)
                {
                        RemovePlayerAttachedObject(playerid,2);// забрали тачку
                         RemovePlayerAttachedObject(playerid,3);// забрали камень
                        new pay = 27 + random(33);
                        PayJob[playerid] += pay;
                        SetPlayerAttachedObject(playerid, 1, 18634, 6, 0.075000,0.002999,0.154000, 98.399978,-69.600013,1.100000);
                        static const fmt_msg[] = "Вы доставили в кузницу {FF9900}%d кг {66CC33}руды.";
                        new string[sizeof(fmt_msg)+(-2+3)];
                        format(string, sizeof(string), fmt_msg, pay);
                        Send(playerid, COLOR_OSNOV, string);
                        static const fmt_msg1[] = "Всего принесено: {FF9900}%d кг {0099FF}руды";
                        new string1[sizeof(fmt_msg1)+(-2+3)];
                        format(string1, sizeof(string1), fmt_msg1, PayJob[playerid]);
                        Send(playerid, COLOR_BLUE, string1);
                        ClearAnimations(playerid);
                        TogglePlayerControllable(playerid,1);
                        DeletePVar(playerid, "Telega");
                        new mcheckShahta = random(3);//Кол-во чекпоинтов
                        {
                                if(mcheckShahta == 0) SetPlayerCheckpoint(playerid, 2316.0361,1649.5638,-37.7585-1,3.0, CP_ACTION_TYPE_MINER_JOB_PUT);
                                if(mcheckShahta == 1) SetPlayerCheckpoint(playerid, 2324.9434,1660.3811,-37.7068-1,3.0, CP_ACTION_TYPE_MINER_JOB_PUT);
                                if(mcheckShahta == 2) SetPlayerCheckpoint(playerid, 2331.0259,1654.2983,-37.6525-1,3.0, CP_ACTION_TYPE_MINER_JOB_PUT);
                        }
                }
        }
case DIALOG_TEMP_JOB_MINER_START:
{
        if(response)
        {
                new job = GetPlayerTempJob(playerid);
                if(job == TEMP_JOB_NONE)
                {
                        Send(playerid, COLOR_BLUE, "Вы начали работу шахтёра!");
                        Send(playerid, COLOR_YELLOW, "Местонахождение руды отмечено на карте красным чекпоинтом.");
                        Send(playerid, COLOR_YELLOW, "Добытое сырьё относите в кузницу.");
                        Send(playerid, COLOR_YELLOW, "Если Вы уйдёте далеко от места работы, то Ваша зарплата анулируется.");
                        player_info[playerid][JOB] = TEMP_JOB_MINER;
                        PayJob[playerid] = 0;
                        SetPlayerSkin(playerid, 16);
                        SetPlayerAttachedObject(playerid, 1, 18634, 6, 0.075000,0.002999,0.154000, 98.399978,-69.600013,1.100000);
                         RemovePlayerAttachedObject(playerid,2);// забрали тачку
                RemovePlayerAttachedObject(playerid,3);// забрали камень
                ClearAnimations(playerid);
                TogglePlayerControllable(playerid,1);
                        new mcheckShahta = random(3);//Кол-во чекпоинтов
                        {
                                if(mcheckShahta == 0) SetPlayerCheckpoint(playerid, 2316.0361,1649.5638,-37.7585-1,3.0, CP_ACTION_TYPE_MINER_JOB_PUT);
                                if(mcheckShahta == 1) SetPlayerCheckpoint(playerid, 2324.9434,1660.3811,-37.7068-1,3.0, CP_ACTION_TYPE_MINER_JOB_PUT);
                                if(mcheckShahta == 2) SetPlayerCheckpoint(playerid, 2331.0259,1654.2983,-37.6525-1,3.0, CP_ACTION_TYPE_MINER_JOB_PUT);
                        }
                }

 

Поделиться сообщением


Ссылка на сообщение

9 ответов на этот вопрос

  • 0

@Gaiduk как начинается OnPlayerEnterCheckpoint и как перехвачена SetPlayerCheckpoint выкладывайте

Поделиться сообщением


Ссылка на сообщение
  • 0

 

Спойлер

public OnPlayerEnterCheckpoint(playerid)
{
	new action_type = GetPlayerCPInfo(playerid, CP_ACTION_TYPE);
	if(IsPlayerInCheckpoint(playerid))
	{
		switch(action_type)
		{
			case CP_ACTION_TYPE_LOADER_JOB_PUT:
			{
				if(GetPlayerTempJob(playerid) == TEAM_JOB_LOADER)
				{
					PayJob[playerid]++;
					
					ClearAnimations(playerid);
					RemovePlayerAttachedObject(playerid,1);
					DisablePlayerCheckpoint(playerid);
					
					static const fmt_msg[] = "Вы принесли ящик. Всего перенесено: {FF9900}%d {136711}ящиков.";
					new string[sizeof(fmt_msg)+(-2+3)];
					format(string, sizeof(string), fmt_msg, PayJob[playerid]);
					Send(playerid, 0x136711FF, string);
					
					SetPlayerCheckpoint(playerid, 2350.9131,-258.1269,2.7890, 2.0, CP_ACTION_TYPE_LOADER_JOB_TAKE);
					
					DeletePVar(playerid, "gruz_load");
				}
			}
			case CP_ACTION_TYPE_LOADER_JOB_TAKE:
			{
				if(GetPlayerTempJob(playerid) == TEAM_JOB_LOADER)
				{
					SetPlayerCheckpoint(playerid, 2322.2651,-264.2405,1.5128, 1.5, CP_ACTION_TYPE_LOADER_JOB_PUT);
					ApplyAnimation(playerid,"CARRY","crry_prtial",4.1,0,1,1,1,1);
					SetPlayerAttachedObject(playerid, 1 ,3052, 1,0.11,0.36,0.0,0.0,90.0);
					SetPVarInt(playerid, "gruz_load", 1);
				}
			}
			case CP_ACTION_TYPE_MINER_JOB_PUT:
			{
				if(GetPlayerTempJob(playerid) == TEMP_JOB_MINER)
				{
					ApplyAnimation(playerid, "BASEBALL", "Bat_4", 4.1, 1, 1, 1, 1, 0);
					DisablePlayerCheckpoint(playerid);
					SetTimerEx("GivePlayerOre", 9800, false, "i", playerid);
				}
			}
			case CP_ACTION_TYPE_MINER_JOB_TAKE:
			{
				if(GetPlayerTempJob(playerid) == TEMP_JOB_MINER)
				{
					RemovePlayerAttachedObject(playerid,2);// забрали тачку
 					RemovePlayerAttachedObject(playerid,3);// забрали камень
					new pay = 27 + random(33);
					PayJob[playerid] += pay;
					SetPlayerAttachedObject(playerid, 1, 18634, 6, 0.075000,0.002999,0.154000, 98.399978,-69.600013,1.100000);
					static const fmt_msg[] = "Вы доставили в кузницу {FF9900}%d кг {66CC33}руды.";
					new string[sizeof(fmt_msg)+(-2+3)];
					format(string, sizeof(string), fmt_msg, pay);
					Send(playerid, COLOR_OSNOV, string);
					static const fmt_msg1[] = "Всего принесено: {FF9900}%d кг {0099FF}руды";
					new string1[sizeof(fmt_msg1)+(-2+3)];
					format(string1, sizeof(string1), fmt_msg1, PayJob[playerid]);
					Send(playerid, COLOR_BLUE, string1);
					ClearAnimations(playerid);
					TogglePlayerControllable(playerid,1);
					DeletePVar(playerid, "Telega");
					new mcheckShahta = random(3);//Кол-во чекпоинтов
					{
						if(mcheckShahta == 0) SetPlayerCheckpoint(playerid, 2316.0361,1649.5638,-37.7585-1,3.0, CP_ACTION_TYPE_MINER_JOB_PUT);
						if(mcheckShahta == 1) SetPlayerCheckpoint(playerid, 2324.9434,1660.3811,-37.7068-1,3.0, CP_ACTION_TYPE_MINER_JOB_PUT);
						if(mcheckShahta == 2) SetPlayerCheckpoint(playerid, 2331.0259,1654.2983,-37.6525-1,3.0, CP_ACTION_TYPE_MINER_JOB_PUT);
					}
				}
			}
			case CP_ACTION_TYPE_DIVER_JOB:
			{	
				DisablePlayerCheckpoint(playerid);
				RemovePlayerAttachedObject(playerid,1);
				RemovePlayerAttachedObject(playerid,2);
				RemovePlayerAttachedObject(playerid,8);
				
				if(GetPVarInt(playerid, "VodolazMeshok1") == 1) PayJob[playerid]++;
				if(GetPVarInt(playerid, "VodolazMeshok2") == 2) PayJob[playerid]++;
				
				DeletePVar(playerid, "VodolazMeshok1");
				DeletePVar(playerid, "VodolazMeshok2");
				DeletePVar(playerid, "VodolazGoToSklad");
				
				SendClientMessage(playerid, COLOR_GREEN, "Вы принесли груз из утанувшего здания.");
				SendClientMessage(playerid, COLOR_GREEN, "Теперь вы можете поднять ещё груз, либо завершить работу.");
				
				static const fmt_msg1[] = "Вы подняли %d ящиков.";
				new string1[sizeof(fmt_msg1)+(-2+3)];
				format(string1, sizeof(string1), fmt_msg1, PayJob[playerid]);
				Send(playerid, COLOR_BLUE, string1);
			}
			case CP_ACTION_TYPE_TRUCKER_TAKE:
			{
				DisablePlayerCheckpoint(playerid);
				SetPlayerCheckpoint(playerid, 2971.2620,2214.7400,6.8247, 3.0, CP_ACTION_TYPE_TRUCKER_PUT);
				Send(playerid, COLOR_GREEN, "Вы загрузились, отправляйтесь на разгрузку.");
			}
			case CP_ACTION_TYPE_TRUCKER_PUT:
			{
				DisablePlayerCheckpoint(playerid);
				player_info[playerid][TSKILL]++;
				
				if(player_info[playerid][TSKILL] == 30)
				{
					player_info[playerid][TLEVEL]++;
					player_info[playerid][TPAY] += 200;
					player_info[playerid][TSKILL] = 0;
				}
				
				new string[45];
				format(string, sizeof string, "Вы доставили груз и получили %d рублей", player_info[playerid][TPAY]);
				Send(playerid, COLOR_BLUE, string);
				
				GiveMoney(playerid, player_info[playerid][TPAY], "Зарпалата дальнобойщика");
				
				static const fmt_query1[] = "UPDATE `accounts` SET `trucker` = '%d, %d, %d' WHERE `id` = '%d' LIMIT 1";
				new query1[sizeof(fmt_query1)+(-2+9)+(-2+9)+(-2+9)+(-2+9)];
				format(query1, sizeof(query1), fmt_query1, player_info[playerid][TLEVEL], player_info[playerid][TSKILL], player_info[playerid][TPAY], player_info[playerid][ID]);
				mysql_query(dbHandle, query1);
				
				SetPlayerCheckpoint(playerid, 2738.3975,-2271.2632,17.9269, 3.0, CP_ACTION_TYPE_TRUCKER_TAKE);
				
			}
		}
	}
	return 1;
}

 

 

Отредактировано пользователем MuhammadPawn
Причина: Убрал код под спойлер

Поделиться сообщением


Ссылка на сообщение
  • 0

@Gaiduk в паблик, после 

2 часа назад, Gaiduk сказал:

case CP_ACTION_TYPE_MINER_JOB_PUT: {

и 

2 часа назад, Gaiduk сказал:

case CP_ACTION_TYPE_MINER_JOB_TAKE: {

добавьте: 

printf("%d", action_type);

Затем, опять проделайте те же действия, которые описали в первом посте и скиньте логи. 

Поделиться сообщением


Ссылка на сообщение
  • 0

@DEST, а как скинуть логи ?

Поделиться сообщением


Ссылка на сообщение
  • 0

@Gaiduk зайти в server_log.txt зайти и оттуда скопировать содержимое

Поделиться сообщением


Ссылка на сообщение
  • 0

@DEST, 

*** Streamer Plugin v2.8.2 by Incognito loaded ***

[18:51:21]   Loaded.
[18:51:21]  Loading plugin: CRP
[18:51:21] 

[18:51:21] ______________________________________

[18:51:21]  Convert Rus To Pwn v0.1.1 loaded
[18:51:21] ______________________________________

[18:51:21]  By: Fro (c) Copyright <TBG> 2009-2011
[18:51:21] ______________________________________

[18:51:21]   Loaded.
[18:51:21]  Loaded 7 plugins.

[18:51:21] 
[18:51:21] Filterscripts
[18:51:21] ---------------
[18:51:21]   Loaded 0 filterscripts.

[18:51:22] Подключение к базе данных MYSQL успешно
[18:51:22] Фракционные автомобили загружены. Номер посленего авто: 13
[18:51:22] Number of vehicle models: 12
[18:51:22] LOAD HOUSES: 0
[18:51:22] LOAD BUSINESS: 5
[18:51:22] [debug] Run time error 4: "Array index out of bounds"
[18:51:22] [debug]  Attempted to read/write array element at index 2 in array of size 2
[18:51:22] [debug] AMX backtrace:
[18:51:22] [debug] #0 00285ac4 in public LoadApartments () at C:\Users\Windows\Desktop\ATTRACT RP\gamemodes\a_rp.pwn:23235
[18:51:22] LOAD ENTERANCES: 1
[18:51:22] Загружено радаров: 0
[18:52:30] Incoming connection: 127.0.0.1:65202
[18:52:30] [join] Name_Name has joined the server (0:127.0.0.1)
[18:53:45] 4
[18:54:05] [part] Name_Name has left the server (0:1)

Поделиться сообщением


Ссылка на сообщение
  • 0

@DEST, я вам скинул, а вы меня игнорите ?

Заметка от DEST , создано

Оффтоп.
Устное предупреждение

Поделиться сообщением


Ссылка на сообщение
  • 0

@Gaiduk я ваш личный консультант? Если у меня будет время - отвечу, нет - ждите помощи от других пользователей. 

Вам здесь никто и не обязан отвечать. 

Поделиться сообщением


Ссылка на сообщение
  • 0

Помогите пожалуйста

Поделиться сообщением


Ссылка на сообщение
Гость
Эта тема закрыта для публикации ответов.
  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

  • Похожий контент

    • KAIF
      От KAIF


      Скачать файл GTA RolePlay-МОД,СБОРКА
      !!!!!ВСЕГО ОДНА КОПИЯ!!!! 
      Единственный мод GTA RP.
       
      Фракции:
      Правительство
      ГИБДД
      Полиция Южного
      ФСБ
      ЦГБ-А
      Автошкола
      Китайская мафия
      Русская Мафия
      Итальянская Мафия
      Американская Мафия
      Чеченская Мафия
      ВВС
      МЧС
      ОПГ Тяп-Ляп
      ОПГ Хади-Такташ
      СМИ Южного
      ФСИН
      В комплекте идёт СБОРКА И МОД.
      Единственный мод GTA RP.
      Добавил KAIF Добавлено 01.01.2024 Категория Моды Автор Aleksandr  
    • KAIF
      От KAIF
      !!!!!ВСЕГО ОДНА КОПИЯ!!!! 
      Единственный мод GTA RP.
       
      Фракции:
      Правительство
      ГИБДД
      Полиция Южного
      ФСБ
      ЦГБ-А
      Автошкола
      Китайская мафия
      Русская Мафия
      Итальянская Мафия
      Американская Мафия
      Чеченская Мафия
      ВВС
      МЧС
      ОПГ Тяп-Ляп
      ОПГ Хади-Такташ
      СМИ Южного
      ФСИН
      В комплекте идёт СБОРКА И МОД.
      Единственный мод GTA RP.
    • Узбек
      От Узбек
      Всем добрый вечер ребят! 
      Я начинающий, сегодня я вам сливаю команду 2(шт) на технические работы
      Ловите