Форум Pawn-Wiki.Ru - Воплоти мечту в реальность!: MoveDynamicObject - Форум Pawn-Wiki.Ru - Воплоти мечту в реальность!

Перейти к содержимому

  • (2 Страниц) +
  • 1
  • 2
  • Вы не можете создать новую тему
  • Вы не можете ответить в тему

[ Pawn ]
MoveDynamicObject

#11
Пользователь офлайн   Shvider 

  • Знаток
  • Вставить ник
  • Раскрыть информацию
Дай весь код со своим шлагбаумом, ты явно что-то не то делаешь
0

#12
Пользователь офлайн   20th century 

  • aw
  • Вставить ник
  • Раскрыть информацию

Просмотр сообщенияPapik (23 февраля 2021 - 13:31) писал:

Там временное перемещение шлагбаума. Есть ли другая функция, где отсутствует таймер?

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

#13
Пользователь офлайн   Shvider 

  • Знаток
  • Вставить ник
  • Раскрыть информацию
Скрытый текст [Показать]

Предлагаешь человеку загуглить его проблему > получаешь -1 к реп... :facepalm:
0

#14
Пользователь офлайн   Papik 

  • Новичок
  • Вставить ник
  • Раскрыть информацию

Просмотр сообщенияShvider (23 февраля 2021 - 15:29) писал:

Нажмите сюда, чтобы прочитать это сообщение. [Показать]


Я просил конкретно помочь, а загуглить я как бы и сам могу. Я же указал, что весь день убил на эту проблему.

И скорость открытия менял: ниже 0.013 - рывками/не работает вообще, выше - резко/либо просто меняет положение из горизонтального в вертикальное

Вариант с таймером, который автоматически опустит шлагбаум через N секунд не подходит
Что касаемо кода:
	 	if(IsPlayerInRangeOfPoint(playerid, 2.0, 6658.0854, -8195.6025, 6.0727)) {
			if(player[playerid][fraction] == 1) {
		    	if(vice_police_door_lock[5] == false) {
        			MoveDynamicObject(vice_police_door[5], 6659.281838+0.001, -8194.315329+0.001, 5.880596+0.001, 0.035, 0.000000, 0.000000, 80.600028);
			   		vice_police_door_lock[5] = true;
				}
				else if(vice_police_door_lock[5] == true) {
			   		MoveDynamicObject(vice_police_door[5], 6659.281838-0.001, -8194.315329-0.001, 5.880596-0.001, 0.025, 0.000000, 90.000000, 80.600028);
			   		vice_police_door_lock[5] = false;
				}
			}
	 	}


Сообщение отредактировал Papik: 23 февраля 2021 - 20:43

0

#15
Пользователь офлайн   Pa4enka 

  • Эксперт
  • Вставить ник
  • Раскрыть информацию
Чтобы было плавно - нужно немного сдвигать объект по какой то из осей и только тогда запускать мув.

upd: где то были у меня наброски, но система, принципе, работала как надо. Если тебе прям надо, то могу поискать и поделится.

Сообщение отредактировал Pa4enka: 23 февраля 2021 - 21:15

1

#16
Пользователь офлайн   Papik 

  • Новичок
  • Вставить ник
  • Раскрыть информацию

Просмотр сообщенияPa4enka (23 февраля 2021 - 21:09) писал:

Чтобы было плавно - нужно немного сдвигать объект по какой то из осей и только тогда запускать мув.

upd: где то были у меня наброски, но система, принципе, работала как надо. Если тебе прям надо, то могу поискать и поделится.


Сдвигаю, но что-то не получается ничего. Если тебе не сложно, то мог бы поискать?
0

#17
Пользователь офлайн   Pa4enka 

  • Эксперт
  • Вставить ник
  • Раскрыть информацию

Просмотр сообщенияPapik (23 февраля 2021 - 21:24) писал:

Сдвигаю, но что-то не получается ничего. Если тебе не сложно, то мог бы поискать?

Пиши в вк, попробую.
1

#18
Пользователь офлайн   DeimoS 

  • Evil Scripter
  • Вставить ник
  • Раскрыть информацию

Просмотр сообщенияPapik (23 февраля 2021 - 20:40) писал:

Нажмите сюда, чтобы прочитать это сообщение. [Показать]


Ты не этот огрызок дай, а полный код: от создания и до взаимодействия - вместе со всеми переменными и т.п. Можешь из него удалить всякие не важные переменные, по типу проверки на фракцию - главное, чтоб сама проблема, при вставке такого кода в чистый мод, воспроизводилась.
1

#19
Пользователь офлайн   Papik 

  • Новичок
  • Вставить ник
  • Раскрыть информацию

Просмотр сообщенияDeimoS (24 февраля 2021 - 05:29) писал:

Нажмите сюда, чтобы прочитать это сообщение. [Показать]


new bool:vice_police_door_lock, vice_police_door;

OnGameModeInit:
vice_police_door = CreateDynamicObject(968, 6659.281838, -8194.315329, 5.880596, 0.000000, 90.000000, 80.600028, 0, 0, -1, 700.00, 700.00);

OnPlayerKeyStateChange:
if(newkeys == KEY_WALK) {
	if(IsPlayerInRangeOfPoint(playerid, 2.0, 6658.0854, -8195.6025, 6.0727)) {
	    	if(vice_police_door_lock == false) {
       			MoveDynamicObject(vice_police_door, 6659.281838+0.001, -8194.315329+0.001, 5.880596+0.001, 0.035, 0.000000, 0.000000, 80.600028);
		   	vice_police_door_lock = true;
		}
		else if(vice_police_door_lock == true) {
		   	MoveDynamicObject(vice_police_door, 6659.281838-0.001, -8194.315329-0.001, 5.880596-0.001, 0.025, 0.000000, 90.000000, 80.600028);
		   	vice_police_door_lock = false;
		}
 	}
}


Скорость менял - либо резко/либо рывками/либо на месте, но никак не плавно

Сообщение отредактировал Papik: 25 февраля 2021 - 16:09

0

#20
Пользователь офлайн   DeimoS 

  • Evil Scripter
  • Вставить ник
  • Раскрыть информацию
new bool:vice_police_door_lock, vice_police_door;

OnGameModeInit:
vice_police_door = CreateDynamicObject(968, 6659.281838, -8194.315329, 5.880596, 0.000000, 90.000000, 80.600028, 0, 0, -1, 700.00, 700.00);

OnPlayerKeyStateChange:
if(newkeys == KEY_WALK) 
{
    if(IsPlayerInRangeOfPoint(playerid, 2.0, 6658.0854, -8195.6025, 6.0727)) 
    {
        if(vice_police_door_lock == false)
        {
            MoveDynamicObject(vice_police_door, 6659.281838, -8194.315329, 5.880596+0.001, 0.001, 0.000000, 0.000000, 80.600028);
            vice_police_door_lock = true;

            SendClientMessage(playerid, -1, params);
        }
        else
        {
            MoveDynamicObject(vice_police_door, 6659.281838, -8194.315329, 5.880596-0.001, 0.001, 0.000000, 90.000000, 80.600028);
            vice_police_door_lock = false;
        }
    }
}

Если нужно ещё медленнее - уменьшай число, указанное как скорость открытия.
1

Поделиться темой:


  • (2 Страниц) +
  • 1
  • 2
  • Вы не можете создать новую тему
  • Вы не можете ответить в тему

1 человек читают эту тему
0 пользователей, 1 гостей, 0 скрытых пользователей


Яндекс.Метрика