Skripta koju koristim: Moj mod od 0
Detaljan opis problema: Zanima me kako uraditi kad nekoga pogodim sa nekim oružijem da dobijem npr. 2 wanted levela, znaÄi ne da dobijem wl kad ga ubijem nego kad ga samo jednom pogodim. Hvala unaprijed ;)
Dio skripte: //
Neke slike/video za lakse dobivanje pomoci(neobavezno): //
http://wiki.sa-mp.com/wiki/OnPlayerTakeDamage
A to ce mi dati wl svaki put kad ga pogodim, meni treba samo da mi da wl kad ga prvi put pogodim.
pri davanju wanteda proveris da li igrac ima wanted, ako ima onda mu ne das, ako nema onda mu das
Citat: Blaeks poslato Decembar 19, 2013, 16:52:05 POSLE PODNE
pri davanju wanteda proveris da li igrac ima wanted, ako ima onda mu ne das, ako nema onda mu das
Ali nece to biti dobro ja recimo imam 2 wla i sada ako ga napadnem nedobijem nista.
Još me samo zanima kako da uradim da mu da wl samo kada je policajac u blizini.
Citat: DoMiNiK1310 poslato Decembar 20, 2013, 16:24:48 POSLE PODNE
Citat: Blaeks poslato Decembar 19, 2013, 16:52:05 POSLE PODNE
pri davanju wanteda proveris da li igrac ima wanted, ako ima onda mu ne das, ako nema onda mu das
Ali nece to biti dobro ja recimo imam 2 wla i sada ako ga napadnem nedobijem nista.
Još me samo zanima kako da uradim da mu da wl samo kada je policajac u blizini.
PostaviÅ¡ da, pri prvom udarcu tom igraÄu stavi neku promenljivu na "true", i pri svakom sledećem proverava da li je
new bool: firstTimeKill[MAX_PLAYERS];
OnPlayerConnect(playerid)
{
firstTimeKill[playerid] = true;
}
OnPlayerTakeDamage(playerid, issuerid, Float: amount, weaponid)
{
if(issuerid != INVALID_PLAYER_ID)
{
if(firstTimeKill[issureid] == true)
{
firstTimerKill[issureid] = false;
new Float:pos[3];
GetPlayerPos(issureid, pos[0], pos[1], pos[2]);
foreach(Player, i)
{
if(PolicajacVarijabla[i])
{
if(IsPlayerInRangeOfPoint(i, 20.0, pos[0], pos[1], pos[2])
{
SetPlayerWantedLevel(issureid, GetPlayerWantedLevel(issureid)+1);
break;
}
}
}
}
}
return 1;
}
Citat: Ermin poslato Decembar 20, 2013, 16:52:07 POSLE PODNE
new bool: firstTimeKill[MAX_PLAYERS];
OnPlayerConnect(playerid)
{
firstTimeKill[playerid] = true;
}
OnPlayerTakeDamage(playerid, issuerid, Float: amount, weaponid)
{
if(issuerid != INVALID_PLAYER_ID)
{
if(firstTimeKill[issureid] == true)
{
firstTimerKill[issureid] = false;
new Float:pos[3];
GetPlayerPos(issureid, pos[0], pos[1], pos[2]);
foreach(Player, i)
{
if(PolicajacVarijabla[i])
{
if(IsPlayerInRangeOfPoint(i, 20.0, pos[0], pos[1], pos[2])
{
SetPlayerWantedLevel(issureid, GetPlayerWantedLevel(issureid)+1);
break;
}
}
}
}
}
return 1;
}
To bi ti znaÄilo ako si ti policajac da ces samo onda dobiti wl.
ma zamijeni issureid i player id, zezno sam se :)
Citat: Ermin poslato Decembar 21, 2013, 15:06:28 POSLE PODNE
ma zamijeni issureid i player id, zezno sam se :)
ne, ovo je problem
if(PolicajacVarijabla[i])
Citat: Blaeks poslato Decembar 22, 2013, 12:50:41 POSLE PODNE
Citat: Ermin poslato Decembar 21, 2013, 15:06:28 POSLE PODNE
ma zamijeni issureid i player id, zezno sam se :)
ne, ovo je problem if(PolicajacVarijabla[i])
Ja sam umjesto toga stavio PlayerInfo
[Member] == 1 ali on vjerovatno tu ima nesto drugo
if(PlayerInfo[i][Member] == 1 || PlayerInfo[i][Leader] == 1)
Ovo?
Citat: Vlado_Plavsic aka Plavsa poslato Decembar 23, 2013, 13:29:23 POSLE PODNE
if(PlayerInfo[i][Member] == 1 || PlayerInfo[i][Leader] == 1)
Ovo?
Pa to će znacit samo ako si lider organizacije 1 da ces dobit wanted level.