Skripta koju koristim: Moja neka kalja :D
Detaljan opis problema: Pa problem je u tome Å¡to ja pojma nemam a i nisam neki skriptercina. Htio bih ove dvije komande spojit u jednu ali kada god spawnam to vozilo, vozilo se ne vidi u tom interijeru. Znaci pojma nemam kako da to odradim u jednoj komandi da me odma spawna u to vozilo kada uÄ'em u taj interijer na toj poziciji.
Dio skripte: Dolje
Neke slike/video za lakse dobivanje pomoci(neobavezno): //
CMD:dmarena(playerid)
{
SetPlayerPos(playerid, -975.975708,1060.983032,1345.671875);
SetPlayerInterior(playerid, 10);
return 1;
}
CMD:vozilo( playerid )
{
new Float: x , Float: y , Float: z, Float:ANG, tank;
GetPlayerPos ( playerid , x , y , z ) ;
tank = CreateVehicle ( 564 , x , y , z , ANG , -1 , -1 , -1 ) ;
PutPlayerInVehicle ( playerid , tank , 0 ) ;
return 1;
}
http://wiki.sa-mp.com/wiki/LinkVehicleToInterior
Izvoli
Uradio sam ovako, nekako ali me nece spawnati odmah u vozilu kada uÄ'em u dm
CMD:dmarena(playerid)
{
new Float: x , Float: y , Float: z, Float:ANG, tank;
tank = CreateVehicle ( 564 , x , y , z , ANG , -1 , -1 , -1 ) ;
PutPlayerInVehicle ( playerid , tank , 0 ) ;
SetPlayerPos(playerid, -975.975708,1060.983032,1345.671875);
SetPlayerInterior(playerid, 10);
SetVehicleInterior( GetPlayerVehicleID(playerid) , GetPlayerInterior(playerid) );
return 1;
}
stock SetVehicleInterior(vehicleid,interior)
{
return LinkVehicleToInterior(vehicleid,interior);
}
SetVehicleInterior( GetPlayerVehicleID(playerid) , GetPlayerInterior(playerid) );
Stavi ovako LinkVehicleToInterior(tank, 10);
Ma na isto ti to doÄ'e, ali me opet neće spawnat u vozilo direkt kada uÄ'em u dm ??? ???
Ne treba ti setplayerpos ako si vec iskoristio putplayerinvehicle. Dalje nisi uzeo getplayerpos a kreirao si vozilo vrv su mu koordinate 0,0,0
Naravno da nece kad mu setas poziciju nakon puta, obrisi to.
Sada sam napravio ovako, ali kada sam usao u DM interior se ne vidi, sve je bijelo :D
CMD:dmarena(playerid)
{
new Float: x , Float: y , Float: z, Float:ANG, tank;
GetPlayerPos ( playerid , x , y , z ) ;
tank = CreateVehicle ( 564 , x , y , z , ANG , -1 , -1 , -1 ) ;
PutPlayerInVehicle ( playerid , tank , 0 ) ;
SetPlayerInterior(playerid, 10);
LinkVehicleToInterior(564, 10);
return 1;
}
Kako mislis belo? Onda ja msm da ti se ne poklapaju int i kordinate. Kad ukucas cmd ne treba ti getpos nego sam postavljas pos jer ce da ti stvori tenk tu gde si ukucao cmd
Citat: \nLucius poslato Novembar 06, 2017, 11:09:40 PRE PODNE
Ne treba ti setplayerpos ako si vec iskoristio putplayerinvehicle. Dalje nisi uzeo getplayerpos a kreirao si vozilo vrv su mu koordinate 0,0,0
Citat: \nLucius poslato Novembar 06, 2017, 11:54:20 PRE PODNE
Kako mislis belo? Onda ja msm da ti se ne poklapaju int i kordinate. Kad ukucas cmd ne treba ti getpos nego sam postavljas pos jer ce da ti stvori tenk tu gde si ukucao cmd
Pa bog te, aj se odluci jer ide SetPlayerPos ili ne ide, ja pojma nemam zato i pitam. Kada uÄ'em u DM ne stvaram se u toj interijeru i ako je postavljena pozicija i lokacija.
Koje sam upravo odgovore vidio ne vjerujem ,evo ti
[pawn]CMD:dmarena(playerid)
{
new tank;
tank = CreateVehicle ( 564 , -975.975708,1060.983032,1345.671875, 0.000 , -1 , -1 , -1 ) ;
LinkVehicleToInterior(tank, 10);
SetPlayerInterior(playerid, 10);
PutPlayerInVehicle ( playerid , tank , 0 ) ;
return 1;
}[/pawn]
Citat: Slade poslato Novembar 06, 2017, 12:09:14 POSLE PODNE
Koje sam upravo odgovore vidio ne vjerujem ,evo ti
[pawn]CMD:dmarena(playerid)
{
new tank;
tank = CreateVehicle ( 564 , -975.975708,1060.983032,1345.671875, 0.000 , -1 , -1 , -1 ) ;
LinkVehicleToInterior(tank, 10);
SetPlayerInterior(playerid, 10);
PutPlayerInVehicle ( playerid , tank , 0 ) ;
return 1;
}[/pawn]
E to je to. Imam joÅ¡ jedno pitanje, U slucaju ako koristim random pozicije spawna igraca sa tim tenkovima dali koristim createvehicle za svaki spawn ili kako vec , jer vidio sam da tenk ostaje u areni kada opet uÄ'em u dm. Hvala
Dodaj u vrh skripte:
[pawn]new dm_tank[ MAX_PLAYERS ];[/pawn]
Komanda:
[pawn]CMD:dmarena(playerid)
{
if(dmtank[ playerid ] != -1) { DestroyVehicle( dmtank[ playerid ] ); }
dmtank[ playerid ] = CreateVehicle ( 564 , -975.975708,1060.983032,1345.671875, 0.000 , -1 , -1 , -1 ) ;
LinkVehicleToInterior(dmtank[ playerid ], 10);
SetPlayerInterior(playerid, 10);
PutPlayerInVehicle ( playerid , dmtank[ playerid ], 0 ) ;
return 1;
}[/pawn]
Zatim pod OnPlayerDisconnect i ostale stvari koje ga uglavnom Äine iskljuÄenim iz DM-a:
[pawn]if(dmtank[ playerid ] != -1) { DestroyVehicle( dmtank[ playerid ] ); dmtank[ playerid ] = -1; }[/pawn]
Te obavezno pod OnPlayerConnect stavi pošto je default 0 za sve varijable, da lakše ispratiš -1:
[pawn]dmtank[ playerid ] = -1;[/pawn]
A što ako uradim random spawn, zar i onda treba da koristim CreateVehicle za svaku poziciju, jer zvuci mi glupo. ::) ::)
Ovako.
[pawn]new Float:RandomDMSpawn[ 2 ][ 3 ] = {
{1596.1108, -2331.2197, 13.5867 },
{3123.3123, -312.3213, 23.2221 }
};[/pawn]
Koordinate sam ja bubno.
Random uzimanje:
[pawn]new rand = random( sizeof( RandomDMSpawn ) );[/pawn]
Komanda:
[pawn]CMD:dmarena(playerid)
{
new rand = random( sizeof( RandomDMSpawn ) );
if(dmtank[ playerid ] != -1) { DestroyVehicle( dmtank[ playerid ] ); }
dmtank[ playerid ] = CreateVehicle ( 564 , RandomDMSpawn[ rand ][ 0 ], RandomDMSpawn[ rand ][ 1 ], RandomDMSpawn[ rand ][ 2 ], 0.000 , -1 , -1 , -1 ) ;
LinkVehicleToInterior(dmtank[ playerid ], 10);
SetPlayerInterior(playerid, 10);
PutPlayerInVehicle ( playerid , dmtank[ playerid ], 0 ) ;
return 1;
}[/pawn]