Перейти к содержанию
Авторизация  
reduz

Номера

Рекомендуемые сообщения

reduz

Делаю мод один,и столкнулся с проблемой,что номера на plate,а мне надо на 3DTextLabel,как сделать?

    case D_VEHNUMBER:
        {
            if(!response) return 1;
			if(PI[playerid][PlayerCarID] == INVALID_VEHICLE_ID) return SendClientMessage(playerid, COLOR_GREY, "[Ошибка] У вас нету машины!");
			if(PI[playerid][pRegVehicle] == 1) return SendClientMessage(playerid, COLOR_GREY, "[Ошибка] У вас уже имеется номерной знак на этом авто!");
	     	new number[20], string[200];
		  	for(new i; i != 6; i++)
		    {
		        if(!i) number[i] = random('Z' - 'A') + 'A';
				if(i >= 1 && i <= 3) number[i] = random('9' - '0') + '0';
				if(i > 3) number[i] = random('Z' - 'A') + 'A';
		   	}
		   	strmid(PI[playerid][pNumberVehicle], number, 0, strlen(number), 20);
		   	PI[playerid][pRegVehicle] = 1;
			SetVehicleNumberPlate(PI[playerid][PlayerCarID], PI[playerid][pNumberVehicle]);
			format(string, sizeof(string), "{FFFFFF}Место регистрации: {63BD4E}Пункт выдачи номеров{FFFFFF}\nНомер вашего авто: {63BD4E}%s", number);
			ShowPlayerDialog(playerid, D_NULL, DIALOG_STYLE_MSGBOX, "{FFCC00}Получение номера", string, "Закрыть", "");
			format(string, sizeof(string), "[Пункт выдачи номеров] %s[%i] зарегистрировал номер на авто [%s]", GetName(playerid), number);
			foreach(new i: Player)
			{
			    if(PlayerLogged[i] == false) continue;
		    	if(IsACop(i)) SendClientMessage(i, 0x3399FFFF, string);
			}
            MysqlUpdatePlayerInt(playerid, "veh_reg", PI[playerid][pRegVehicle]);
            MysqlUpdatePlayerStr(playerid, "veh_number", PI[playerid][pNumberVehicle]);
        }
Изменено пользователем reduz

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


Ссылка на сообщение
Поделиться на другие сайты
Na'Vi

Эммм, А можно было код на русской раскладке скопировать и вставить, а то одни эроглифы :(

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


Ссылка на сообщение
Поделиться на другие сайты
reduz

@Na'Vi,та там просто пишет тип получили номера и т.д 

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


Ссылка на сообщение
Поделиться на другие сайты
Na'Vi

@reduz, В Готовых решениях есть то что тебе нужно поищи я сейчас логотип искал и одним глазом видел Номера на TextDraw 

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


Ссылка на сообщение
Поделиться на другие сайты
Franky

new Text3d:dt[MAX_VEHICLES];

case D_VEHNUMBER:
{
if(!response) return 1;
if(PI[playerid][PlayerCarID] == INVALID_VEHICLE_ID) return SendClientMessage(playerid, COLOR_GREY, "[Ошибка] У вас нету машины!");
if(PI[playerid][pRegVehicle] == 1) return SendClientMessage(playerid, COLOR_GREY, "[Ошибка] У вас уже имеется номерной знак на этом авто!");
new number[20], string[200];
for(new i; i != 6; i++)
{
if(!i) number[i] = random('Z' - 'A') + 'A';
if(i >= 1 && i <= 3) number[i] = random('9' - '0') + '0';
if(i > 3) number[i] = random('Z' - 'A') + 'A';
}
strmid(PI[playerid][pNumberVehicle], number, 0, strlen(number), 20);
PI[playerid][pRegVehicle] = 1;
dt[PI[playerid][PlayerCarID]] = Create3DTextLabel(PI[playerid][pNumberVehicle], 0xFFFFFFFF, 0.0, 0.0, 0.0, 50.0, 0, 1 );
Attach3DTextLabelToVehicle(dt[PI[playerid][PlayerCarID]], i, 0.0, 0.0, 1.0);
format(string, sizeof(string), "{FFFFFF}Место регистрации: {63BD4E}Пункт выдачи номеров{FFFFFF}\nНомер вашего авто: {63BD4E}%s", number);
ShowPlayerDialog(playerid, D_NULL, DIALOG_STYLE_MSGBOX, "{FFCC00}Получение номера", string, "Закрыть", "");
format(string, sizeof(string), "[Пункт выдачи номеров] %s[%i] зарегистрировал номер на авто [%s]", GetName(playerid), number);
foreach(new i: Player)
{
if(PlayerLogged[i] == false) continue;
if(IsACop(i)) SendClientMessage(i, 0x3399FFFF, string);
}
MysqlUpdatePlayerInt(playerid, "veh_reg", PI[playerid][pRegVehicle]);
MysqlUpdatePlayerStr(playerid, "veh_number", PI[playerid][pNumberVehicle]);
}

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


Ссылка на сообщение
Поделиться на другие сайты
reduz
gm.pwn(17905) : warning 213: tag mismatch
gm.pwn(17906) : warning 213: tag mismatch
gm.pwn(17906) : error 017: undefined symbol "i"
   dt[PI[playerid][PlayerCarID]] = Create3DTextLabel(PI[playerid][pNumberVehicle], 0xFFFFFFFF, 0.0, 0.0, 0.0, 50.0, 0, 1 );      -17905
   Attach3DTextLabelToVehicle(dt[PI[playerid][PlayerCarID]], i, 0.0, 0.0, 1.0);         -17906

 

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


Ссылка на сообщение
Поделиться на другие сайты
Web

Пробуй:

case D_VEHNUMBER:
        {
            if(!response) return 1;
            if(PI[playerid][PlayerCarID] == INVALID_VEHICLE_ID) return SendClientMessage(playerid, COLOR_GREY, "[Ошибка] У вас нету машины!");
            if(PI[playerid][pRegVehicle] == 1) return SendClientMessage(playerid, COLOR_GREY, "[Ошибка] У вас уже имеется номерной знак на этом авто!");
             new c = GetPlayerVehicleID(playerid);
             new number[20], string[200];
              for(new i; i != 6; i++)
            {
                if(!i) number[i] = random('Z' - 'A') + 'A';
                if(i >= 1 && i <= 3) number[i] = random('9' - '0') + '0';
                if(i > 3) number[i] = random('Z' - 'A') + 'A';
               }
               strmid(PI[playerid][pNumberVehicle], number, 0, strlen(number), 20);
               PI[playerid][pRegVehicle] = 1;
               SetVehicleNumberPlate(PI[playerid][PlayerCarID], PI[playerid][pNumberVehicle]);
            
            Create3DTextLabel(string,0x008080FF,0,0,0,40.0,0);
            Attach3DTextLabelToVehicle(PI[playerid][pNumberVehicle], c, 0.0, 0.0, 2.0);
            
            format(string, sizeof(string), "{FFFFFF}Место регистрации: {63BD4E}Пункт выдачи номеров{FFFFFF}\nНомер вашего авто: {63BD4E}%s", number);
            ShowPlayerDialog(playerid, D_NULL, DIALOG_STYLE_MSGBOX, "{FFCC00}Получение номера", string, "Закрыть", "");
            format(string, sizeof(string), "[Пункт выдачи номеров] %s[%i] зарегистрировал номер на авто [%s]", GetName(playerid), number);
            foreach(new i: Player)
            {
                if(PlayerLogged[i] == false) continue;
                if(IsACop(i)) SendClientMessage(i, 0x3399FFFF, string);
            }
            MysqlUpdatePlayerInt(playerid, "veh_reg", PI[playerid][pRegVehicle]);
            MysqlUpdatePlayerStr(playerid, "veh_number", PI[playerid][pNumberVehicle]);
        }
Изменено пользователем Веб

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


Ссылка на сообщение
Поделиться на другие сайты
reduz

,warning 213: tag mismatch - Attach3DTextLabelToVehicle(PI[playerid][pNumberVehicle], PI[playerid][PlayerCarID], 0.0, 0.0, 2.0); 


,и номера не появляются) 

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


Ссылка на сообщение
Поделиться на другие сайты
Web

Подправил.

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


Ссылка на сообщение
Поделиться на другие сайты
reduz

,номера не появляются все-равно) 

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


Ссылка на сообщение
Поделиться на другие сайты
Web

У тебя какой мод в основе?

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


Ссылка на сообщение
Поделиться на другие сайты
reduz

,Motion 

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


Ссылка на сообщение
Поделиться на другие сайты
Web

Ссылочку можно?

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


Ссылка на сообщение
Поделиться на другие сайты
reduz

, кину в ЛС.

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


Ссылка на сообщение
Поделиться на другие сайты
Franky



 

            Create3DTextLabel(string,0x008080FF,0,0,0,40.0,0);
            Attach3DTextLabelToVehicle(PI[playerid][pNumberVehicle], c, 0.0, 0.0, 2.0);

И что ты прописываем в 3д текст и на какой ид транспорта ты крепишь??

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


Ссылка на сообщение
Поделиться на другие сайты
reduz

@Franky,Крепится на транспорт игрока 

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


Ссылка на сообщение
Поделиться на другие сайты
Franky

Держите пожалуйста

 

new Text3d:dt[MAX_VEHICLES];

 case D_VEHNUMBER:
        {
            if(!response) return 1;
			if(PI[playerid][PlayerCarID] == INVALID_VEHICLE_ID) return SendClientMessage(playerid, COLOR_GREY, "[Ошибка] У вас нету машины!");
			if(PI[playerid][pRegVehicle] == 1) return SendClientMessage(playerid, COLOR_GREY, "[Ошибка] У вас уже имеется номерной знак на этом авто!");
	     	new number[20], string[200];
		  	for(new i; i != 6; i++)
		    {
		        if(!i) number[i] = random('Z' - 'A') + 'A';
				if(i >= 1 && i <= 3) number[i] = random('9' - '0') + '0';
				if(i > 3) number[i] = random('Z' - 'A') + 'A';
		   	}
		   	strmid(PI[playerid][pNumberVehicle], number, 0, strlen(number), 20);
		   	PI[playerid][pRegVehicle] = 1;
		   	dt[PI[playerid][PlayerCarID]] = Create3DTextLabel(PI[playerid][pNumberVehicle], 0xFFFFFFFF, 0.0, 0.0, 0.0, 50.0, 0, 1 );
		   	Attach3DTextLabelToVehicle(dt[PI[playerid][PlayerCarID]], PI[playerid][PlayerCarID], 0.0, 0.0, 1.0);
			format(string, sizeof(string), "{FFFFFF}Место регистрации: {63BD4E}Пункт выдачи номеров{FFFFFF}\nНомер вашего авто: {63BD4E}%s", number);
			ShowPlayerDialog(playerid, D_NULL, DIALOG_STYLE_MSGBOX, "{FFCC00}Получение номера", string, "Закрыть", "");
			format(string, sizeof(string), "[Пункт выдачи номеров] %s[%i] зарегистрировал номер на авто [%s]", GetName(playerid), number);
			foreach(new i: Player)
			{
			    if(PlayerLogged[i] == false) continue;
		    	if(IsACop(i)) SendClientMessage(i, 0x3399FFFF, string);
			}
            MysqlUpdatePlayerInt(playerid, "veh_reg", PI[playerid][pRegVehicle]);
            MysqlUpdatePlayerStr(playerid, "veh_number", PI[playerid][pNumberVehicle]);
        }

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


Ссылка на сообщение
Поделиться на другие сайты
Web
dt[PI[playerid][PlayerCarID]] = Create3DTextLabel(PI[playerid][pNumberVehicle], 0xFFFFFFFF, 0.0, 0.0, 0.0, 50.0, 0, 1 );

Явная ошибка

Изменено пользователем Веб

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


Ссылка на сообщение
Поделиться на другие сайты
Franky

 

 


текст

он неправильно во первых формат текста установил значению 3д текста. А во вторых ид транспорта 

 

 


dt[PI[playerid][PlayerCarID]] = Create3DTextLabel(PI[playerid][pNumberVehicle], 0xFFFFFFFF, 0.0, 0.0, 0.0, 50.0, 0, 1 );

Покажи мне ошибку?

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


Ссылка на сообщение
Поделиться на другие сайты
Web

Пропущенный аргумент как минимум.

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


Ссылка на сообщение
Поделиться на другие сайты
Franky

, хорошо покажи где он? 

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


Ссылка на сообщение
Поделиться на другие сайты
Web

Перепутал с Attach3DTextLabelToVehicle

Однако, ошибки в коде: dt[PI[playerid][PlayerCarID]] = Create3DTextLabel(PI[playerid][pNumberVehicle], 0xFFFFFFFF, 0.0, 0.0, 0.0, 50.0, 0, 1 );
Attach3DTextLabelToVehicle(
dt[PI[playerid][PlayerCarID]], PI[playerid][PlayerCarID], 0.0, 0.0, 1.0);

Изменено пользователем Веб
  • Like 1

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


Ссылка на сообщение
Поделиться на другие сайты
Franky

 

 




Молодец, я быстро писал не компилируя)

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


Ссылка на сообщение
Поделиться на другие сайты
Web

Ну во первых, надо думать что пишешь.

Во вторых, как бы ты скомпилировал? Тут как минимум надо обладать такой же системой транспорта для успешной компиляции.

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


Ссылка на сообщение
Поделиться на другие сайты
Franky

 

 




Умник.. Думать тебе надо научится прежде чем что то писать а так можно просто взять функции создания транспорта при этом текста и прикрепления к этому транспорту. 

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


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

  • Последние посетители   0 пользователей онлайн

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

×

Важная информация

Мы разместили cookie-файлы на ваше устройство, чтобы помочь сделать этот сайт лучше. Вы можете изменить свои настройки cookie-файлов, или продолжить без изменения настроек.