Skripta koju koristim:
Ne koristim skripe nikakve, ovo je filterscripta od 0
Detaljan opis problema:
Znaci, skriptao sam si komandu /armour, napravio sam pickup. Cilj je da komanda radi samo kad se stane na pickup, range je 2.
Ali imam problem. Kad god i bilo gdje na serveru napisem /armour, dobijem pancirku makar nisam kod pickup-a.
Dio skripte:
if (strcmp("/armour", cmdtext, true, 10) == 0)
{
IsPlayerInRangeOfPoint(playerid,2, -2167.3972,3306.8318,95.5800);
SendClientMessage(playerid, COLOR_ORANGE, "Armour PickUP");
SetPlayerArmour(playerid,100);
}
Probao sam ovako:
if (strcmp("/armour", cmdtext, true, 10) == 0)
{
IsPlayerInRangeOfPoint(playerid,2, -2167.3972,3306.8318,95.5800); return SendClientMessage(playerid, COLOR_ORANGE, "Moras biti kod Armour Pickup-a");
SendClientMessage(playerid, COLOR_ORANGE, "Armour PickUP");
SetPlayerArmour(playerid,100);
return 1;
}
Ali onda ne radi /armour uopce, samo daje SendClientMessage "Moras biti kod Armour Pickup-a".
Dodaj ovako
if(!IsPlayerInRangeOfPoint(playerid,2, -2167.3972,3306.8318,95.5800)) return SendClientMessage(playerid, COLOR_ORANGE, "Moras biti kod Armour Pickup-a");
Nisi dobro procitao. ;)
Napravio sam return ali sada ne radi /armour cmd, to je problem. Ne znam dalje.
Znaci, kad dodem do range of point i napisem /armour samo mi daje return send client message umjesto da mi da pancu.
if (strcmp("/armour", cmdtext, true, 10) == 0)
{
IsPlayerInRangeOfPoint(playerid,2, -2167.3972,3306.8318,95.5800);
{
SendClientMessage(playerid, COLOR_ORANGE, "Armour PickUP");
SetPlayerArmour(playerid,100);
return 1;
}
SendClientMessage(playerid,COLOR_WHITE,"Moras biti kod Armour Pickup-a");
return 1;
}
if (strcmp("/armour", cmdtext, true, 10) == 0)
{
if(IsPlayerInRangeOfPoint(playerid,2, -2167.3972,3306.8318,95.5800))
{
SendClientMessage(playerid, COLOR_ORANGE, "Armour PickUP");
SetPlayerArmour(playerid,100);
return 1;
}
else
{
SendClientMessage(playerid,COLOR_WHITE,"Moras biti kod Armour Pickup-a");
}
return 1;
}
if (strcmp("/armour", cmdtext, true, 10) == 0)
{
if(!IsPlayerInRangeOfPoint(playerid, 2.0, -2167.3972,3306.8318,95.580))
{
SendClientMessage(playerid, COLOR_WHITE, "(greska) Niste na mestu za uzimanje Aurmoura!");
SetPlayerArmour(playerid,100);
}
return 1;
}
------
* Probaj ovako, ako ti ne radi, ili imaju neki Errori, warningsi, obavezno mi se javi na PM!!
------
EDIT: Dodaj i ovo takodjer..
CreateDynamicPickup(1247, 1, -2167.3972,3306.8318,95.580, 1); // Aurmor Pickup!
Citat: Black Boy poslato Oktobar 21, 2012, 17:14:19 POSLE PODNE
if (strcmp("/armour", cmdtext, true, 10) == 0)
{
if(!IsPlayerInRangeOfPoint(playerid, 2.0, -2167.3972,3306.8318,95.580))
{
SendClientMessage(playerid, COLOR_WHITE, "(greska) Niste na mestu za uzimanje Aurmoura!");
SetPlayerArmour(playerid,100);
}
return 1;
}
------
* Probaj ovako, ako ti ne radi, ili imaju neki Errori, warningsi, obavezno mi se javi na PM!!
------
EDIT: Dodaj i ovo takodjer..
CreateDynamicPickup(1247, 1, -2167.3972,3306.8318,95.580, 1); // Aurmor Pickup!
Pa to mu daje pancir ako nije kod tog mjesta , a on zeli da dobija pancir KOD tog mjesta.
Citat: Razor (a.k.a Shady) poslato Oktobar 21, 2012, 17:35:11 POSLE PODNE
Ne valjajte [cenzura]osti!
if (strcmp("/armour", cmdtext, true, 10) == 0)
{
if(IsPlayerInRangeOfPoint(playerid,2, -2167.3972,3306.8318,95.5800))
{
SendClientMessage(playerid, COLOR_ORANGE, "Moras biti kod Armour Pickup-a");
SendClientMessage(playerid, COLOR_ORANGE, "Armour PickUP");
SetPlayerArmour(playerid,100);
}
return 1;
}
Citat: Muhamed. poslato Oktobar 21, 2012, 17:30:52 POSLE PODNE
Pa to mu daje pancir ako nije kod tog mjesta , a on zeli da dobija pancir KOD tog mjesta.
Nije toÄno, stavio je ! ispred
Pa tj
"!" znaÄi suprotno od toga, tj, ako kuca cmd /armour dobit će armour ako NIJE na tom mjestu.
i zašto ponavljaš ono što sam napisao ? Napisao sam cmd gore.
Muhamed je upravu.
Ja bi to ovako upakovao, mada mi se gadi na ovaj procesor komandi.
if(strcmp("/armour", cmdtext, true, 10) == 0)
{
if(!IsPlayerInRangeOfPoint(playerid,2, -2167.3972,3306.8318,95.5800))return SendClientMessage(playerid,COLOR_WHITE,"Moras biti kod Armour Pickup-a"); // Ako igrac nije na tim koordinatama izbacuje mu text
SendClientMessage(playerid, COLOR_ORANGE, "Armour PickUP"); // Ako jeste na tim koordinatama ispisuje mu text
SetPlayerArmour(playerid,100); // Ako jeste na tim koordinatama daje mu pancirku
return 1;
}
Nista od navedenog ne radi, probao sam copy paste vase prijedloge, probo sam ih izmjenit al nis.
Idem na samp forum, mozda oni znaju.
probaj ovako..
if (strcmp("/armour", cmdtext, true, 10) == 0)
if(IsPlayerInRangeOfPoint(playerid, 2, -2167.3972,3306.8318,95.580))
if (GetPlayerMoney(playerid) >= 10) // Ovde menjas sumu novca koliko zelis da ti bude!
{
GivePlayerMoney(playerid, -1000);
SetPlayerArmour(playerid,100);
SendClientMessage(playerid, COLOR_YELLOW, "Uspesno ste kupili aurmour!");
}
else if (GetPlayerMoney(playerid) < 10)
{
SendClientMessage(playerid,COLOR_RED,"Nemate dovoljno novca, potrebno je 10$!!!");
}
Uradio sam ti da ga kupis!!! za novce!! izvoli! probaj..