Доступ к архиву

Переход в группу "Пользователь"

300.00
Одноразовый платёж
Быстрый переход в группу "Пользователи", без надобности написания постов и ожидания.

Покупка дает возможность:
Быть полноправным участником форума
Нормальное копирование кода
Создавать темы
Скачивать файлы
Доступ к архиву Pawno-Info

Урок по созданию неона для Механиков

Статус
В этой теме нельзя размещать новые ответы.

Andrey_Kiryuhin

Изучающий
Пользователь
Регистрация
11 Ноя 2010
Сообщения
514
Лучшие ответы
0
Репутация
123
И так в этом уроке я вам раскажу как сделать для механиков ставка неона на машины!
И так преступим!
Для начала сделаем саму команду к public OnPlayerCommandText(playerid, cmdtext[])
PHP:
		if(strcmp(cmd, "/moding", true) == 0)
	{   //для автомехаников
	    if(IsPlayerConnected(playerid))
	    {
		    if(PlayerInfo[playerid][pJob] != 7)
		    {
		        SendClientMessage(playerid, COLOR_GREY, "   Вы - не АвтоМеханик!");
		        return 1;
		    }
		    if(!gJobDuty[playerid])
		    {
		        SendClientMessage(playerid, COLOR_GREY, "   Вы Не на Дежурстве вашей АвтоРемонтной Службы !");
		        return 1;
		    }
           	if(!IsPlayerInAnyVehicle(playerid))
			{
				SendClientMessage(playerid, COLOR_GREY, "  Вы должны находиться в транспортном средстве!");
				return 1;
			}
			if(GetPlayerState(playerid) != PLAYER_STATE_DRIVER)
			{
				SendClientMessage(playerid, COLOR_GREY, "  Вы должны находиться за рулём транспортного средства!");
				return 1;
			}
			tmp = strtok(cmdtext, idx);
			if(!strlen(tmp))
			{
				SendClientMessage(playerid, COLOR_GRAYWHITE, "USAGE: /moding [playerid/PartOfName]");
				return 1;
			}
			giveplayerid = ReturnUser(tmp);
			new Float:VehicleHealth;
			if(giveplayerid == playerid)
			{
				SendClientMessage(playerid, COLOR_LIGHTBLUE, "ВЫ не можете ставить неон на своё авто!!!!!");
				return 1;
			}
			tmp = strtok(cmdtext, idx);
			if(!strlen(tmp))
			{
				SendClientMessage(playerid, COLOR_GRAYWHITE, "USAGE: /moding [playerid/PartOfName] [price]");
				return 1;
			}
			new money = strval(tmp);
			if(money < 1 || money > 10000) { SendClientMessage(playerid, COLOR_GREY, "   Цена не ниже 1, или не выше 10000!"); return 1; }
			if(IsPlayerConnected(giveplayerid))
			{
			    if(giveplayerid != INVALID_PLAYER_ID)
			    {
			        if(IsPlayerInRangeOfPlayer(8.0, playerid, giveplayerid)&&
						IsPlayerInAnyVehicle(giveplayerid) && GetPlayerState(giveplayerid)==PLAYER_STATE_DRIVER)
     {
						GetVehicleHealth(GetPlayerVehicleID(giveplayerid), VehicleHealth);
						if(VehicleHealth > 1000)
						{
							SendClientMessage(playerid, COLOR_GREY, "   ........ !");
							return 1;
						}
					    format(string, sizeof(string), "* Вы предложили %s поставить неон на его автомобиль за $%d.",PlayerName(giveplayerid),money);
						SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
						new msgitem[256];
						format(msgitem, sizeof(msgitem), "* АвтоМеханик %s \nхочет поставить неон на  ваш автомобиль за $%d\n\n Нажмите Accept, чтобы принять.",PlayerName(playerid),money);
						//SendClientMessage(giveplayerid, COLOR_LIGHTBLUE, string);
						RepairOffer[giveplayerid] = playerid;
						RepairPrice[giveplayerid] = money;
						ShowPlayerDialog(giveplayerid,666,0,"Диспетчер",msgitem,"Accept","Cancel");
					}
					else SendClientMessage(playerid, COLOR_GREY, "   Этот игрок не рядом с Вами или не за рулём автомобиля.");
				}
			}
			else SendClientMessage(playerid, COLOR_GREY, "   Этот игрок - не в игре.");
		}
		return 1;
	}
Далее это деалок должен что то делать так что в
Добавляем самый низ public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[]) перед return 1;
PHP:
			if(dialogid == 666)
 {
			if(!response) SendClientMessage(playerid, 0xFFFFFF, "Была нажата Отмена");
			else
        {
                      ShowPlayerDialog(playerid, 999, 2, "Color", "RedNeon\nBlueNeon\nGreenNeon\nYellowNeon\nPinkNeon\nWhiteNeon", "Ок", "Отмена");
        }
		return 1;
}
	//--------------------------------------------------------------------------

	        if(dialogid == 999)
 {
			if(!response) SendClientMessage(playerid, 0xFFFFFF, "Была нажата Отмена");
			else
        {
			GivePlayerMoneyB(modingOffer[playerid], modingPrice[playerid]);
			GivePlayerMoneyH(playerid, -RepairPrice[playerid]);
			format(string, sizeof(string), "* На ваш автомобиль поставлен неон на сумму $%d АвтоМехаником %s.",RepairPrice[playerid],PlayerName(RepairOffer[playerid]));
			SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
			format(string, sizeof(string), "* Вы поставили неон  %s'у на автомобиль, $%d добавлено к вашей Зарплате.",PlayerName(playerid),RepairPrice[playerid]);
			SendClientMessage(RepairOffer[playerid], COLOR_LIGHTBLUE, string);
			RepairOffer[playerid] = MAX_PLAYERS-1;
			RepairPrice[playerid] = 0;
            if(listitem == 0)
{
                      new neon = CreateObject(18647,0,0,0,0,0,0,100.0);
                      new neon1 = CreateObject(18647,0,0,0,0,0,0,100.0);
                      AttachObjectToVehicle(neon, GetPlayerVehicleID(playerid), -0.8, 0.0, -0.70, 0.0, 0.0, 0.0);
                      AttachObjectToVehicle(neon1, GetPlayerVehicleID(playerid), 0.8, 0.0, -0.70, 0.0, 0.0, 0.0);
        return 1;
}
            if(listitem == 1)
{
                      new neon2 = CreateObject(18648,0,0,0,0,0,0,100.0);
                      new neon3 = CreateObject(18648,0,0,0,0,0,0,100.0);
                      AttachObjectToVehicle(neon2, GetPlayerVehicleID(playerid), -0.8, 0.0, -0.70, 0.0, 0.0, 0.0);
                      AttachObjectToVehicle(neon3, GetPlayerVehicleID(playerid), 0.8, 0.0, -0.70, 0.0, 0.0, 0.0);
        return 1;
}
            if(listitem == 2)
{
                     new neon4 = CreateObject(18649,0,0,0,0,0,0,100.0);
                     new neon5 = CreateObject(18649,0,0,0,0,0,0,100.0);
                     AttachObjectToVehicle(neon4, GetPlayerVehicleID(playerid), -0.8, 0.0, -0.70, 0.0, 0.0, 0.0);
                     AttachObjectToVehicle(neon5, GetPlayerVehicleID(playerid), 0.8, 0.0, -0.70, 0.0, 0.0, 0.0);
        return 1;
}
            if(listitem == 3)
{
                     new neon6 = CreateObject(18650,0,0,0,0,0,0,100.0);
                     new neon7 = CreateObject(18650,0,0,0,0,0,100.0);
                     AttachObjectToVehicle(neon6, GetPlayerVehicleID(playerid), -0.8, 0.0, -0.70, 0.0, 0.0, 0.0);
                     AttachObjectToVehicle(neon7, GetPlayerVehicleID(playerid), 0.8, 0.0, -0.70, 0.0, 0.0, 0.0);
        return 1;
}
            if(listitem == 4)
{
                     new neon8 = CreateObject(18651,0,0,0,0,0,0,100.0);
                     new neon9 = CreateObject(18651,0,0,0,0,0,100.0);
                     AttachObjectToVehicle(neon8, GetPlayerVehicleID(playerid), -0.8, 0.0, -0.70, 0.0, 0.0, 0.0);
                     AttachObjectToVehicle(neon9, GetPlayerVehicleID(playerid), 0.8, 0.0, -0.70, 0.0, 0.0, 0.0);
        return 1;
}
            if(listitem == 5)
{
                     new neon8 = CreateObject(18651,0,0,0,0,0,0,100.0);
                     new neon9 = CreateObject(18651,0,0,0,0,0,100.0);
                     AttachObjectToVehicle(neon8, GetPlayerVehicleID(playerid), -0.8, 0.0, -0.70, 0.0, 0.0, 0.0);
                     AttachObjectToVehicle(neon9, GetPlayerVehicleID(playerid), 0.8, 0.0, -0.70, 0.0, 0.0, 0.0);
        return 1;
}
        }
Вот и всё делал я на основе другой команды но смысл то же если есть вопросы задавайте!!!
Автор:Jack_Kalashnikov
 
Статус
В этой теме нельзя размещать новые ответы.
Сверху Снизу