Posts: 1,779
Threads: 126
Joined: Oct 2010
Querнa saber si habrнa alguna forma de hacer mover un objeto que salga del punto X, Y, Z lento y que vaya ganando velocidad, y luego cuando vaya por la mitad que vaya parando poco a poco (tipo InterpolateCamera), a mi se me ocurre de una forma (con un loop) pero no se a ver si se os ocurre algo.
Gracias.
Posts: 143
Threads: 22
Joined: Jul 2011
Reputation:
0
14.05.2014, 15:53
(
Последний раз редактировалось Miguel_Leopold; 14.05.2014 в 16:49.
)
Ahm
Velocidad = Aceleraciуn * Tiempo
Si tuvieras una aceleraciуn de 3.0 m/(s^2) entonces te recomiendo que hagas un MoveObject cada segundo y al siguiente MoveObject le agregues al parбmetro Speed 3.0 unidades.
Omite lo anterior que dije, ese mйtodo serнa poco preciso pero serнa una aproximaciуn.
Posts: 70
Threads: 2
Joined: May 2014
Reputation:
0
Con un timer que asigne ++ a la variable tiempo?
Posts: 2,041
Threads: 97
Joined: Jun 2013
pawn Код:
// Podrнas hacer todo esto con 'enum' si deseas.
new Float:Position[MAX_OBJECTS][3];
new Float:Distance[MAX_OBJECTS];
new Float:SpeedObject[MAX_OBJECTS];
new TimerSpeed[MAX_OBJECTS];
stock MoveObjectEx(objectid, Float:fX, Float:fY, Float:fZ, Float:Speed)
{
Position[objectid][0] = fX;
Position[objectid][1] = fY;
Position[objectid][2] = fZ;
Distance[objectid] = GetObjectDistanceToPos(objectid, fX, fY, fZ); // Busca una funciуn, lo encontrarбs por ahн en ******.
TimerSpeed[objectid] = SetTimerEx("SetObjectAcceleration", interval, true, "d", objectid);
MoveObject(objectid, fX, fY, fZ, Speed);
}
forward SetObjectAcceleration(objectid);
public SetObjectAcceleration(objectid)
{
new Float:Dist = GetObjectDistanceToPos(objectid, Position[objectid][0], Position[objectid][1], Position[objectid][0];
SpeedObject[objectid] += (Distance[objectid]-Dist) < Distance[objectid]/2) ? (2.0) : (SpeedObject[objectid] -= 1.0);
MoveObject(objectid, Position[objectid][0], Position[objectid][1], Position[objectid][0], SpeedObject[objectid]);
return 1;
}
Eso serнa una forma, no lo probй, pero creo que te deberнa funcionar bien.