Question

Всем привет. В моде присутствует система установки радара. По сути после выбора радара, у тебя он должен появиться и ты устанавливаешь его, как тебе хочется ( Думаю вы поняли о чем я ). Но у меня при выборе типа радара он просто устанавливается около меня и все ( Недоработка или баг ).

 

Спойлер

case D_RADAR:
	{
	    if(!response) return false;
	    if(GetPVarInt(playerid, "CreateRadar")) return SendClientMessage(playerid,COLOR_GREEN,"Вы уже устанавливаете радар!");
	    SetPVarInt(playerid, "TypeRadar", listitem);
	    new Float: posX, Float: posY, Float: posZ;
	    GetPlayerPos(playerid, posX, posY, posZ);
	    SendClientMessage(playerid, COLOR_GREEN, "Вы начали установку радара. Поставьте радар в любую удобную для Вас позицию..");
		new radar = CreateDynamicObject(18880, posX+1, posY, posZ-0.35, 0.0, 0.0, 0.0);
		SetPVarInt(playerid, "CreateRadar", 1);
		SetPVarInt(playerid, "RadarObject", radar);
		EditObject(playerid, radar);
	}

 

 

Share this post


Link to post

3 answers to this question

  • 0

Это баг. Причём странно, по коду узнал основу своего мода, но такого бага у меня нет.

Проверь в паблике OnPlayerEditObject наличие этого кода:

	if(GetPVarInt(playerid, "CreateRadar") != 0)
	{
	    if(!playerobject)
		{
			if(!IsValidObject(objectid)) return true;
			MoveObject(objectid, fX, fY, fZ, 10.0, fRotX, fRotY, fRotZ);
		}
		if(response == EDIT_RESPONSE_FINAL)
		{
			TOTALRADAR++;
			switch(GetPVarInt(playerid, "TypeRadar"))
		    {
		        case 0: RI[TOTALRADAR][r_type] = 1, RI[TOTALRADAR][r_speed] = 20;
		        case 1: RI[TOTALRADAR][r_type] = 2, RI[TOTALRADAR][r_speed] = 60;
		        case 2: RI[TOTALRADAR][r_type] = 3, RI[TOTALRADAR][r_speed] = 110;
		        case 3: RI[TOTALRADAR][r_type] = 4, RI[TOTALRADAR][r_speed] = 90;
		    }

		    new stringss [256];
			RI[TOTALRADAR][r_x] = fX; RI[TOTALRADAR][r_y] = fY; RI[TOTALRADAR][r_z] = fZ; RI[TOTALRADAR][r_a] = fRotZ;
			DestroyObject(GetPVarInt(playerid, "RadarObject"));
			RI[TOTALRADAR][r_object] = CreateObject(18880, fX, fY, fZ, fRotX, fRotY, fRotZ);
			format(stringss, sizeof stringss, "РАДАР {FFFFFF}№%d\n\nДопустимая скорость: {FF0000}%d КМ/Ч", TOTALRADAR, RI[TOTALRADAR][r_speed]);
			RI[TOTALRADAR][r_label] = CreateDynamic3DTextLabel(stringss, 0xFF0000FF, RI[TOTALRADAR][r_x], RI[TOTALRADAR][r_y], RI[TOTALRADAR][r_z]+4.0,10.0);
			RI[TOTALRADAR][r_area] = CreateDynamicSphere(RI[TOTALRADAR][r_x], RI[TOTALRADAR][r_y], RI[TOTALRADAR][r_z], 15.0);
			DeletePVar(playerid, "CreateRadar");
			DeletePVar(playerid, "TypeRadar");
			DeletePVar(playerid, "RadarObject");
			CancelEdit(playerid);

			STRING_GLOBAL[0] = EOS;
			format(STRING_GLOBAL,sizeof(STRING_GLOBAL),"INSERT INTO "T_RADAR" (r_id, r_name, r_type, r_speed, r_x, r_y, r_z, r_a) VALUES (%i, '%s', %i, %i, '%f', '%f', '%f', '%f')",
			TOTALRADAR, GetName(playerid), RI[TOTALRADAR][r_type], RI[TOTALRADAR][r_speed], RI[TOTALRADAR][r_x], RI[TOTALRADAR][r_y], RI[TOTALRADAR][r_z], RI[TOTALRADAR][r_a]);
			mysql_tquery(dbHandle, STRING_GLOBAL, "", ""); 
			SendClientMessage(playerid, C_OSNOV, "Радар успешно создан.");
		}

 

Правда в коде есть мои переработки, имей ввиду

Share this post


Link to post
  • 0

Попробуй после строк в диалоге в консоль выводит, покажи, что в коде и что в консоли 

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

    • Kutuzov
      By Kutuzov
      Всем привет, хотелось бы спросить у тех, кто разбирается в PluginSDK.
      Какие есть источники, руководства, документации о PluginSDK?
      Я пока что ничего нормального не нахожу.
      Заранее спасибо