Problem(error/warning):Ovako,kako da odradim npr imam varijablu new voziloo; i tu su mi kreirana 4 vozila.Kako da napravim neku proveru da kad je igrac blizu tih vozila i onda npr da mogu da ga stavim u vozilo kad stisne C ili da mu omogucim nesto kad je u blizini nekog od tih vozila?
Dio skripte: [ pawn ]vaš odgovor[ /pawn ]
Debug iz server_log(ukoliko je u pitanju crashanje servera - crashdetect log): [ code ]vaš odgovor[ /code ]
Slika/video ingame problema(obavezno ako je ingame problem): link slike
u blizini vozila
815
pregleda
12
postova
2. Jan. 2019.
new voziloo;
public OnGameModeInit() {
vozilo = AddStaticVehicleEx(...);
vozilo = AddStaticVehicleEx(...);
vozilo = AddStaticVehicleEx(...);
vozilo = AddStaticVehicleEx(...);
vozilo = AddStaticVehicleEx(...);
return 1;
}
public OnPlayerKeyStateChange(playerid, newkeys, oldkeys) {
if (newkeys & KEY_CROUCH && !IsPlayerInAnyVehicle(playerid)) {
new Float: x,
Float: y,
Float: z,
vehicleid = INVALID_VEHICLE_ID;
for(new i = 0; i < 5; ++ i) {
GetVehiclePos(voziloo, x, y, z);
if (!IsPlayerInRangeOfPoint(playerid, 5.0, x, y, z)) continue;
vehicleid = voziloo;
break;
}
if (vehicleid != INVALID_VEHICLE_ID) {
PutPlayerInVehicle(playerid, vehicleid, 0);
}
}
return 1;
}Ovako nesto?
2. Jan. 2019.
// xunder wrote on January 2, 2019, 10:03 pm:
new voziloo;
public OnGameModeInit() {
vozilo = AddStaticVehicleEx(...);
vozilo = AddStaticVehicleEx(...);
vozilo = AddStaticVehicleEx(...);
vozilo = AddStaticVehicleEx(...);
vozilo = AddStaticVehicleEx(...);
return 1;
}
public OnPlayerKeyStateChange(playerid, newkeys, oldkeys) {
if (newkeys & KEY_CROUCH && !IsPlayerInAnyVehicle(playerid)) {
new Float: x,
Float: y,
Float: z,
vehicleid = INVALID_VEHICLE_ID;
for(new i = 0; i < 5; ++ i) {
GetVehiclePos(voziloo, x, y, z);
if (!IsPlayerInRangeOfPoint(playerid, 5.0, x, y, z)) continue;
vehicleid = voziloo;
break;
}
if (vehicleid != INVALID_VEHICLE_ID) {
PutPlayerInVehicle(playerid, vehicleid, 0);
}
}
return 1;
}Ovako nesto?
to kraljino bre! Znas li mozda kako da napravim da ima 4 random checkpointa i da kad pokupi jedan od random CP-a seta mu se jedan checkpoint gde ode i kad pokupi taj checkpoint opet mu se pojavi taj random cp? to mi je isto frka pravim nesto sa elegy-em neki drift pa ako mozes jos to da pripomognes 😄
3. Jan. 2019.
Nure wrote on January 2, 2019, 11:52 pm:
to kraljino bre! Znas li mozda kako da napravim da ima 4 random checkpointa i da kad pokupi jedan od random CP-a seta mu se jedan checkpoint gde ode i kad pokupi taj checkpoint opet mu se pojavi taj random cp? to mi je isto frka pravim nesto sa elegy-em neki drift pa ako mozes jos to da pripomognes 😄
Ides ovako napravis prvo new za random cp-ove
new Float:ElegyRand =
{
{X,Y,Z},
{X,Y,Z},
{X,Y,Z},
{X,Y,Z}
};
I sad kod cmd ili gdje vec zelis da mu se zapocne radnja stavis
new elegy = random(sizeof(ElegyRand));
SetPlayerCheckpoint(playerid, ElegyRand, ElegyRand,ElegyRand, 2.0):
3. Jan. 2019.
AdzoXx wrote on January 3, 2019, 1:02 am:
Ides ovako napravis prvo new za random cp-ove
new Float:ElegyRand =
{
{X,Y,Z},
{X,Y,Z},
{X,Y,Z},
{X,Y,Z}
};
I sad kod cmd ili gdje vec zelis da mu se zapocne radnja stavis
new elegy = random(sizeof(ElegyRand));
SetPlayerCheckpoint(playerid, ElegyRand, ElegyRand,ElegyRand, 2.0):
new Float:ElegyRand =
{
{X,Y,Z},
{X,Y,Z},
{X,Y,Z},
{X,Y,Z}
};
I sad kod cmd ili gdje vec zelis da mu se zapocne radnja stavis
new elegy = random(sizeof(ElegyRand));
SetPlayerCheckpoint(playerid, ElegyRand, ElegyRand,ElegyRand, 2.0):
Ma to sam vec uradio pa mi ide od jednog do drugog random cp-a ja sam hteo da mi seta random cp i kad pokupim taj cp koji je stavljen random da mi seta drugi checkpoint gde ja zelim da bude npr na ovoj coordinati 2512.9438,-1935.6381,13.4393 i kad pokupi tu koordinatu da mu se seta opet random cp pa kad pokupi taj random cp da mu opet seta ovu coord sto sam spomenuo i sve tako
3. Jan. 2019.
Pa tamo gdje ti se vrsi radnja za random cp ispod toga postavis SetPlayerCheckPoint(tvoje koordinate) pa opet pod OnPlayererEnterCheckPoint stavis if(IsPlayerRangeInOfPoint(koordinate prvog cpa))
{
SCM(playerid, -1, "Usli ste u cp"):
I ovdje opet da mu seta random cp
}
I tjt.
Ako ti nesto ne bude jasno dodji pm
{
SCM(playerid, -1, "Usli ste u cp"):
I ovdje opet da mu seta random cp
}
I tjt.
Ako ti nesto ne bude jasno dodji pm
3. Jan. 2019.
AdzoXx wrote on January 3, 2019, 1:47 pm:
Pa tamo gdje ti se vrsi radnja za random cp ispod toga postavis SetPlayerCheckPoint(tvoje koordinate) pa opet pod OnPlayererEnterCheckPoint stavis if(IsPlayerRangeInOfPoint(koordinate prvog cpa))
{
SCM(playerid, -1, "Usli ste u cp"):
I ovdje opet da mu seta random cp
}
I tjt.
Ako ti nesto ne bude jasno dodji pm
{
SCM(playerid, -1, "Usli ste u cp"):
I ovdje opet da mu seta random cp
}
I tjt.
Ako ti nesto ne bude jasno dodji pm
E ja sam to uradio kad setam random CP i stanem na njega nista se ne desava.. A stavio sam sve kako treba.. ?
3. Jan. 2019.
CMD:elegyy(playerid, params[])
{
//#pragma unused help
#pragma unused params
if(UlogovanProvera == 0) return Server(playerid,"Moras se ulogovati da bi koristio ovu komandu!");
{
Server(playerid,"cp 1/15");
new elegy = random(sizeof(ElegyRand));
SetPlayerCheckpoint(playerid, ElegyRand, ElegyRand, ElegyRand, 3.0);
UzeocpElegy = 1;
}
return 1;
}
Ovde krece
A ovde onplayerentercp
{
//#pragma unused help
#pragma unused params
if(UlogovanProvera == 0) return Server(playerid,"Moras se ulogovati da bi koristio ovu komandu!");
{
Server(playerid,"cp 1/15");
new elegy = random(sizeof(ElegyRand));
SetPlayerCheckpoint(playerid, ElegyRand, ElegyRand, ElegyRand, 3.0);
UzeocpElegy = 1;
}
return 1;
}
Ovde krece
A ovde onplayerentercp
if(UzeocpElegy == 1 && CID >= velegy && CID <= velegy)
{
Server(playerid, "Uzeli ste 1/15 cp!");
SetPlayerCheckpoint(playerid, 1817.9314,-1772.6292,13.5023, 5.0);
UzeocpElegy = 2;
}
if(UzeocpElegy == 2 && CID >= velegy && CID <= velegy)
{
if(IsPlayerInRangeOfPoint(playerid, 5.0, 1817.9314,-1772.6292,13.5023))
{
Server(playerid, "Dosli ste na cp,novi cp postavljen");
new elegy = random(sizeof(ElegyRand));
SetPlayerCheckpoint(playerid, ElegyRand, ElegyRand, ElegyRand, 3.0);
UzeocpElegy = 3;
}
}
if(UzeocpElegy == 3 && CID >= velegy && CID <= velegy)
{
Server(playerid, "Uzeli ste 2/15 cp!");
SetPlayerCheckpoint(playerid, 1817.9314,-1772.6292,13.5023, 5.0);
UzeocpElegy = 4;
}
if(UzeocpElegy == 4 && CID >= velegy && CID <= velegy)
{
if(IsPlayerInRangeOfPoint(playerid, 5.0, 1817.9314,-1772.6292,13.5023))
{
Server(playerid, "Dosli ste na cp,novi cp postavljen");
UzeocpElegy = 5;
}
}
if(UzeocpElegy == 5 && CID >= velegy && CID <= velegy)
{
Server(playerid, "Uzeli ste 3/15 cp!");
SetPlayerCheckpoint(playerid, 1817.9314,-1772.6292,13.5023, 5.0);
UzeocpElegy = 6;
}
if(UzeocpElegy == 6 && CID >= velegy && CID <= velegy)
{
if(IsPlayerInRangeOfPoint(playerid, 5.0, 1817.9314,-1772.6292,13.5023))
{
Server(playerid, "Dosli ste na cp,novi cp postavljen!");
UzeocpElegy = 7;
}
}Morate biti prijavljeni da biste odgovorili na ovu temu.
Prijava