Tripmine

TheRunningMan

Участник
Сообщения
147
Реакции
10
У меня вопрос такой, вот в плагине Tripmine в качестве координат куда крепить как бы мину, использовался вгляд, т.е. куда смотришь там и поставится, если рядом поверхность, так вот я хочу вместо вычисления коодинат положению положения взгляда, сделать привязкой к грене, т.е. например куда грена упала там и мина, координаты детонации грены я выяснил, а как это прменить к модели мины и лазеру не пойму...

Добавлено через 16 часов 39 минут
так в общем че то получилось, но все равно есть баг с положением модели не как не могу понять что делает эта функция TR_GetEndPosition
ее убераю ставит там куда кинул, но бывает что ставить не по плоскости, а если не убирать, то ставит чаще где то не там)) кидаешь грену в одном месте, а минка ставится где то рядом
И еще что делает TR_TraceRayFilter, уберая его мина ставится, оставляю, вообще ничег оне просходит
 
Последнее редактирование:

TheRunningMan

Участник
Сообщения
147
Реакции
10
Блин вроде нелохо получилось, но проблема с лазером, я хочу чтобы когда он включался, его конечная точка была по координатам куда смотрит игрок, если я один то все нормально, но когда 2 и больше он проводит луч от взгляда других игроков....
вот когда активируется луч
PHP:
public Action:OnActivateLaser(Handle:timer, any:hDataPack)
{
	ResetPack(hDataPack);
	decl String:start[30], String:tmp[200], color[3];
	new client = ReadPackCell(hDataPack);
	new beament = ReadPackCell(hDataPack);
	new ent = ReadPackCell(hDataPack);
	color[0] = ReadPackCell(hDataPack);
	color[1] = ReadPackCell(hDataPack);
	color[2] = ReadPackCell(hDataPack);
	ReadPackString(hDataPack, start, sizeof(start));
	
	if (!IsValidEdict(beament) || !IsValidEdict(ent))
	{
		return Plugin_Stop;
	}
	
	new Handle:trace = TraceRay(client);
	
	
	decl Float:beamend[3];
	TR_GetEndPosition(beamend, INVALID_HANDLE);
		
		
		
	TeleportEntity(beament, beamend, NULL_VECTOR, NULL_VECTOR); // Teleport the beam
		
	AcceptEntityInput(beament, "TurnOn");
		
	SetEntityRenderColor(beament, color[0], color[1], color[2]);

	Format(tmp, sizeof(tmp), "%s,TurnOff,,0.001,-1", start);
	DispatchKeyValue(beament, "OnTouchedByEntity", tmp);
	Format(tmp, sizeof(tmp), "%s,TurnOn,,0.002,-1", start);
	DispatchKeyValue(beament, "OnTouchedByEntity", tmp);

	EmitSoundToAll(SND_MINEACT, ent);
	
	CloseHandle(hDataPack);
	
	return Plugin_Stop;
}

Добавлено через 2 минуты
создание луча было вместе с создание мины, и по истечению таймера луч включался, но его траектория уже была задана, и я создание луча сделал по истечению таймера, если убрать эту функция TR_GetEndPosition, то луч игнорирует напрвление моего взгляда, но с этой функцией, не работает при множестве клиентов...

Добавлено через 8 часов 30 минут
блин ну скажите хотя бы как сделат ьчтобы мины отталкивали при взрыве, т.е. когда они ломаются

Добавлено через 11 часов 1 минуту
ничего не надо уже сам разобрался спасибо за помощь....эпик
 
Последнее редактирование:
Сверху Снизу