[Ayuda]Posicion de camaras
#1

Buenas amigos de forum samp

Tengo una duda, cree 2 camaras para que se interpolen al iniciar, una empieza desde el cielo, y la otra llega a la posicion del skin.

hasta ahi todo bien

pero ahora mi duda es: como puedo hacer que cada que le demos a cambiar skin, no se vuelva ah iniciar el procedimiento de interlop de las camaras, osease que no se repita el movimiento de la camara del cielo a el skin.

aqui el codigo de onplayerrequestclass.
Код:
public OnPlayerRequestClass(playerid, classid)
{
	iSpawnSet[playerid] = 0;
	SetPlayerPos(playerid,4098.5454,-1396.0684,714.0687);
	SetPlayerInterior(playerid, 0);
 	SetPlayerFacingAngle(playerid, 32.4883);
	InterpolateCameraPos(playerid, 4407.319335, -1393.251831, 804.640808, 4107.176757, -1395.939208, 716.058837, 10000);
	InterpolateCameraLookAt(playerid, 4402.560058, -1393.228149, 803.107543, 4102.177246, -1395.886962, 716.075683, 1000);
	PlayerTextDrawShow(playerid, SkinS[playerid]);
	new skintexto[60];
	format(skintexto, 60, "~b~Skin: ~w~ %d", classid);
	PlayerTextDrawSetString(playerid, SkinS[playerid], skintexto);


	
 return 1;
 }
Gracias de antemano.
Reply
#2

Quote:
Originally Posted by ElCeZaR
Посмотреть сообщение
Buenas amigos de forum samp

Tengo una duda, cree 2 camaras para que se interpolen al iniciar, una empieza desde el cielo, y la otra llega a la posicion del skin.

hasta ahi todo bien

pero ahora mi duda es: como puedo hacer que cada que le demos a cambiar skin, no se vuelva ah iniciar el procedimiento de interlop de las camaras, osease que no se repita el movimiento de la camara del cielo a el skin.

aqui el codigo de onplayerrequestclass.
Код:
public OnPlayerRequestClass(playerid, classid)
{
	iSpawnSet[playerid] = 0;
	SetPlayerPos(playerid,4098.5454,-1396.0684,714.0687);
	SetPlayerInterior(playerid, 0);
 	SetPlayerFacingAngle(playerid, 32.4883);
	InterpolateCameraPos(playerid, 4407.319335, -1393.251831, 804.640808, 4107.176757, -1395.939208, 716.058837, 10000);
	InterpolateCameraLookAt(playerid, 4402.560058, -1393.228149, 803.107543, 4102.177246, -1395.886962, 716.075683, 1000);
	PlayerTextDrawShow(playerid, SkinS[playerid]);
	new skintexto[60];
	format(skintexto, 60, "~b~Skin: ~w~ %d", classid);
	PlayerTextDrawSetString(playerid, SkinS[playerid], skintexto);


	
 return 1;
 }
Gracias de antemano.
ese callback es llamado cuando le dan a las flechitas para cambiar el skin, debes hacer el interporlate cuando lo mandes a la selecciуn de skins
Reply
#3

pawn Код:
new bool:ComenzoCamara[MAX_PLAYERS];

public OnPlayerRequestClass(playerid, classid)
{
    iSpawnSet[playerid] = 0;
    SetPlayerPos(playerid,4098.5454,-1396.0684,714.0687);
    SetPlayerInterior(playerid, 0);
    SetPlayerFacingAngle(playerid, 32.4883);
    if(ComenzoCamara[playerid] == false)
    {
        InterpolateCameraPos(playerid, 4407.319335, -1393.251831, 804.640808, 4107.176757, -1395.939208, 716.058837, 10000);
        InterpolateCameraLookAt(playerid, 4402.560058, -1393.228149, 803.107543, 4102.177246, -1395.886962, 716.075683, 1000);
        ComenzoCamara[playerid] = true;
    }
    PlayerTextDrawShow(playerid, SkinS[playerid]);
    new skintexto[60];
    format(skintexto, 60, "~b~Skin: ~w~ %d", classid);
    PlayerTextDrawSetString(playerid, SkinS[playerid], skintexto);
    return 1;
}
Reply
#4

Quote:
Originally Posted by aoEXE
Посмотреть сообщение
ese callback es llamado cuando le dan a las flechitas para cambiar el skin, debes hacer el interporlate cuando lo mandes a la selecciуn de skins
cual se supone que es el callback de seleccion de skin?
Reply
#5

Quote:
Originally Posted by Jose_grana
Посмотреть сообщение
pawn Код:
new bool:ComenzoCamara[MAX_PLAYERS];

public OnPlayerRequestClass(playerid, classid)
{
    iSpawnSet[playerid] = 0;
    SetPlayerPos(playerid,4098.5454,-1396.0684,714.0687);
    SetPlayerInterior(playerid, 0);
    SetPlayerFacingAngle(playerid, 32.4883);
    if(ComenzoCamara[playerid] == false)
    {
        InterpolateCameraPos(playerid, 4407.319335, -1393.251831, 804.640808, 4107.176757, -1395.939208, 716.058837, 10000);
        InterpolateCameraLookAt(playerid, 4402.560058, -1393.228149, 803.107543, 4102.177246, -1395.886962, 716.075683, 1000);
        ComenzoCamara[playerid] = true;
    }
    PlayerTextDrawShow(playerid, SkinS[playerid]);
    new skintexto[60];
    format(skintexto, 60, "~b~Skin: ~w~ %d", classid);
    PlayerTextDrawSetString(playerid, SkinS[playerid], skintexto);
    return 1;
}
pero con eso pasa que al spawnear el siguiente jugador que entra ya no le carga la camara y selecciona el skin en el cielo, como hago que se reinciie el spawnear y que lo puedan seguir usando los que entren o pulsen f4 para regresar a la seleccion de skin?
Reply
#6

Quote:
Originally Posted by ElCeZaR
Посмотреть сообщение
pero con eso pasa que al spawnear el siguiente jugador que entra ya no le carga la camara y selecciona el skin en el cielo, como hago que se reinciie el spawnear y que lo puedan seguir usando los que entren o pulsen f4 para regresar a la seleccion de skin?
seteala a false cuando spawnea y cuando se desconecta
Reply


Forum Jump:


Users browsing this thread: 3 Guest(s)