Question

if(pickupid == Pickup[46])// штрафстоянка
{
	if(CarInfo[p][i][cModel], SalonRandSpawn[r][0], SalonRandSpawn[r][1], SalonRandSpawn[r][2], SalonRandSpawn[r][3], CarInfo[p][i][cColor1], CarInfo[p][i][cColor2], 90000) return SendClientMessage(playerid, COLOR_GREY, "{BEBEBE}[INFO] Вашего авто нет на страфстоянке!");
	{
		ShowPlayerDialog(playerid, D_PODEZD+8,DIALOG_STYLE_MSGBOX,"{FFCC00}Штрафстоянка","{ffffff}Вы не припоркавали свое авто и Вам был выписан штраф в размере {FFCC00}5000 рублей?", "Забрать", "Нет");
	}
}

 

Edited by odosenok

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

Неужели сложно было по-человечески код выложить?

Share this post


Link to post

8 answers to this question

  • 0

Получайте координаты машины через https://wiki.sa-mp.com/wiki/GetVehiclePos и проверяете коорд-ы на равенство. 

Share this post


Link to post
  • 0

с кодом извените при копировании косяк получился

 

Прописал по Вашему приведенному примеру вот так

	if(pickupid == Pickup[46])// штрафстоянка
	{
		new currentveh;
		currentveh = GetPlayerVehicleID(playerid);
		new Float:vehx, Float:vehy, Float:vehz;
		GetVehiclePos(currentveh, 2065.4912,-2579.1953,10.4813);

		new vehpostext[96];
		format(vehpostext, sizeof(vehpostext), "Вашего авто на штрафстоянке нет! %f, %f, %f", vehx, vehy, vehz);
		SendClientMessage(playerid, 0xFFFFFFFF, vehpostext);
		else
	    {
	        ShowPlayerDialog(playerid, D_PODEZD+8,DIALOG_STYLE_MSGBOX,"{FFCC00}Штрафстоянка","{ffffff}Вы не припоркавали свое авто и Вам был выписан штраф в размере {FFCC00}5000 рублей?", "Забрать", "Нет");
	    }
	}
Спойлер

и получил в ответ вот такие две ошибки


D:\МОЙ СЕРВЕР\локальный сервер\gamemodes\mrpv1.pwn(21741) : error 035: argument type mismatch (argument 2)
D:\МОЙ СЕРВЕР\локальный сервер\gamemodes\mrpv1.pwn(21746) : error 029: invalid expression, assumed zero
Pawn compiler 3.10.8	 	 	Copyright (c) 1997-2006, ITB CompuPhase


2 Errors.

 

 

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

Объединил сообщения.

Share this post


Link to post
  • 0
36 минут назад, Андрей Лазарев сказал:

 


GetVehiclePos(currentveh, 2065.4912,-2579.1953,10.4813);

 

 

Здесь координаты не нужны. Если вы хотите проверить, находится ли транспорт возле этих координат, используйте следующий фрагмент кода:

new Float:dist = GetVehicleDistanceFromPoint(vehicleid, 2065.4912,-2579.1953,10.4813); // получим расстояние от штрафстоянки до транспорта
if(dist > 30.0) { // если это расстояние больше 30.0
	// транспортное средство находится за пределами штрафстоянки
}

 

Share this post


Link to post
  • 0
1 час назад, odosenok сказал:

 

Здесь координаты не нужны. Если вы хотите проверить, находится ли транспорт возле этих координат, используйте следующий фрагмент кода:


new Float:dist = GetVehicleDistanceFromPoint(vehicleid, 2065.4912,-2579.1953,10.4813); // получим расстояние от штрафстоянки до транспорта
if(dist > 30.0) { // если это расстояние больше 30.0
	// транспортное средство находится за пределами штрафстоянки
}

 

Акуда это все вставить?

Share this post


Link to post
  • 0
if(dist > 30.0)
{
new vehpostext[96];
		format(vehpostext, sizeof(vehpostext), "Вашего авто на штрафстоянке нет! %f, %f, %f", vehx, vehy, vehz);
		SendClientMessage(playerid, 0xFFFFFFFF, vehpostext);
}

 

Share this post


Link to post
  • 0

вылетело сразу куча ошибок

 

Вот все координаты куда отправляются авто может через этот new можно как то реализовать?

new Float:SalonRandSpawn[][4] =
{
	{2065.4912,-2579.1953,10.4813,91.0366}, // íå ïðèïîðêîâàë
	{2065.5889,-2582.6274,10.4814,90.4351}, // íå ïðèïîðêîâàë
	{2065.6494,-2586.1033,10.4893,89.6405}, // íå ïðèïîðêîâàë
	{2065.6750,-2589.3721,10.4891,90.1443}, // íå ïðèïîðêîâàë
	{2065.7200,-2592.7258,10.4890,90.4671}, // íå ïðèïîðêîâàë
	{2065.6912,-2596.0198,10.4892,89.8759}, // íå ïðèïîðêîâàë
	{2065.9014,-2599.2756,10.4890,89.0267}, // íå ïðèïîðêîâàë
	{2066.0120,-2605.9817,10.4893,90.5266}, // íå ïðèïîðêîâàë
	{2065.7261,-2609.3379,10.4890,90.5358}, // íå ïðèïîðêîâàë
	{2065.8752,-2602.6418,10.4890,90.8253} // íå ïðèïîðêîâàë
};

 

Share this post


Link to post
  • 0

@Андрей Лазарев, можешь изложить логику этой минисистемы, чтобы я уловил ее суть? Меня некоторые строки смущают, поэтому не могу даже прикинуть какой-то вариант тебе.

Share this post


Link to post
  • 0
9 часов назад, Talex сказал:

@Андрей Лазарев, можешь изложить логику этой минисистемы, чтобы я уловил ее суть? Меня некоторые строки смущают, поэтому не могу даже прикинуть какой-то вариант тебе.

Суть заключается в том что при покупке авто его нужно припорковать. Но если при выходе из игры авто не было припарковано то при следующем заходе в игру оно спавнится на штрафстоянке вот мне и нужно чтобы при заходе на пикап страфстоянки была проверка на авто находится ли оно по данным координатам или нет. Так как сейчас пикап работает постоянно не зависимо от того есть там авто или нет все ровно требует заплатить штраф

Share this post


Link to post
Guest
This topic is now closed to further replies.
Sign in to follow this  
Followers 0
  • Recently Browsing   0 members

    No registered users viewing this page.

  • Similar Content

    • Grand_97
      By Grand_97



      Добро пожаловать на Русский Дрифт + ДМ сервер №1 в России!

      HostName: [0.3.7] РУССКИЙ ДРИФТ + ДМ СЕРВЕР! ЗАХОДИ!
      Address:  176.32.37.39:7777
      Players:  33 / 50
      Ping:     16
      Mode:     Drift/DM/Gang/Fun/Race/Rp/Cops
      Language: Russia | Россия

      Лучший уголок в мире GTA-SAMP! У нас самый крупный FUN сервер в России, который занимает первые места среди своего жанра, у нас высокий и стабильный онлайн, множество веселых и забавных игроков! На сервере множество развлекательных Stun зон, зон для дрифта и проведения драг заездов! Собирайтесь на нашем DRIFT+DM сервере вместе со своими друзьями, играйте, веселитесь и получайте море удовольствия, участвуйте в ДМ перестрелках между бандами. У нас каждый может найти что-то интересное и не забываемое для себя. Вступив в группу VK в которой уже набралось более 4.000 тысяч игроков с сервера, вы можете с легкостью пообщаться с другими игроками, узнать более подробнее о сервере либо спросить совета где вам обязательно ответят!



      А также у нас дружный коллектив администраторов, администраторы сервера всегда отзывчивые, помогают нашим игрокам в трудную минуту, так же они часто проводят различные мероприятия для того что бы игроки не скучали на сервере.


      А также сейчас действует акция при регистрации VIP 2LVL + 25.000.000$


      С уважением Администрация Drift+DM!
      Наша группа [В]Контакте: vk.com/rus.drift.samp
      IP Нашего сервера: 176.32.37.39:7777

    • R0m4ik
      By R0m4ik
      Привет всем пользователям pawno-rus.ru задаюсь вопросом как заменить обычный /alogin на запрос авторизации при вводе любой команды даже не существующей? Допустим мы ввели команду "/ksdjaksdsajk" и нас попросило авторизоваться в админку тем самым чтобы можно было заменить /alogin как так сделать?