Jump to content
  • 0

pomoc Policajt Vlozeni do vezeni


TedakCZ

Dotaz

Zdar mám vše v pořádku až na jednu věc a to je že když  chci zatknout hráče tak mi to píše že nemá WantedLevel ale přitom ho má  zde je můj Code:

 

if(povolani[playerid][pJobs] == 5)
		{
		    if(GetPlayerWantedLevel(playerid) >= 0) return SCM(issuerid, red, "[!] Hráč nemá WantedLevel nelze ho zatknout");
			if(PlayerInfo[playerid][pWandlvl] >= 0) return SCM(issuerid, red, "[!] Hráč nemá WantedLevel nelze ho zatknout");
			{
			new string[128];
		    format(string,sizeof(string), "Policajt %s tě zatknul", PlayerName(issuerid));
		    SCM(playerid, -1, string);
		    SetPlayerInterior(playerid, 6);
			SetPlayerPos(playerid, 264.1659,82.0855,1002.0391);
		    ResetPlayerWeapons(playerid);
			SetPlayerWantedLevel(playerid, 0);
        	PlayerInfo[playerid][pWandlvl] = 0;
		    
		    }
		}

Pro jistotu sem tam vložil 2 kontroly na WantedLevel ale nefunguje myto tak jak má 
 

 

Toto je v pořádku:

{
PS: playerid == hráč Kterého zatýkám 
PS: issuerid == Hráč co zatýká hrače(playerid)
}

Link to comment
Share on other sites

17 odpovědí na tuto otázku

Recommended Posts

  • 0

Znaménka? :d >= Větší nebo rovno nule. Takže možná jen == 0? Nejsem programátor a nikdy jsem nic nedělal, takže se tu možná ztrapním :d

Edited by Huzy
Link to comment
Share on other sites

  • 0

Zdarec,Základy matematiky chceš nebo ne ?

if(PlayerInfo[playerid][pWandlvl] >= 0) return SCM(issuerid, red, "[!] Hráč nemá WantedLevel nelze ho zatknout")

Pokud je Wanted Level větší nebo roven 0 tak ti to hodí zprávu že nemá WL ?

To myslíš vážně ? :d

Opravím ti to tady

if(PlayerInfo[playerid][pWandlvl]  == 0) return SCM(issuerid, red, "[!] Hráč nemá WantedLevel nelze ho zatknout")

Pokud je Wanted level roven hodnotě 0 tak ti to napíše tuto zprávu :)

Link to comment
Share on other sites

  • 0
  • Hlavní moderátor

Ještě jednou napiš "furd myto" a sejmu tě. :d

 

Podívej se, tys asi přepsal jen tu jednu podmínku, ale musíš přepsat obě:

if(GetPlayerWantedLevel(playerid) == 0) return SCM(issuerid, red, "[!] Hráč nemá WantedLevel nelze ho zatknout");
if(PlayerInfo[playerid][pWandlvl] <= 0) return SCM(issuerid, red, "[!] Hráč nemá WantedLevel nelze ho zatknout");

U toho druhého jsem ti, pro sichr, dal menší nebo rovno, jen bůh ví, jestli nejsi schopen tomu někde nastavovat záporné hodnoty.

 

Btw, větší/menší je učivo základní školy, asi by sis měl zopakovat základy, jinak ti programování nikdy nepůjde.

Edited by vEnd
Link to comment
Share on other sites

  • 0

to tam mam furd nefunguje furd myto píše že nemá wanted i když ho má :d

 

a to == sem tam měl a nic nepomohlo furd myto píše že mam wanted

 

 

furd = furt :)

Atd.. Gramatika level druhá třída..

 

Každopádně hodnotu

PlayerInfo[playerid][pWandlvl] 

musíš nějak nastavit a pokud nemáš něco co by ji nahazovalo např při získaní WL+1

Tudiž takto:

PlayerInfo[playerid][pWandlvl] += 1;

Tak radši použij jen tohle

if(GetPlayerWantedLevel(playerid) == 0) return SCM(issuerid, red, "[!] Hráč nemá WantedLevel nelze ho zatknout");
Link to comment
Share on other sites

  • 0
  • Hlavní moderátor

Taky je zde možnost modifikovat tu podmínku tak, že jedna bude rovna nule a druhá menší nebo rovna nule, to pro jistotu, kdybys tomu někdy nastavil nekladnou hodnotu.

if(GetPlayerWantedLevel(playerid) == 0) return SCM(issuerid, red, "[!] Hráč nemá WantedLevel nelze ho zatknout");
if(PlayerInfo[playerid][pWandlvl] <= 0) return SCM(issuerid, red, "[!] Hráč nemá WantedLevel nelze ho zatknout");

Jo a zopakuj ten pravopis, za "furd myto" tě kdejaký grammar nazi (jako já) zdrbe.

 

:)

Edited by vEnd
Link to comment
Share on other sites

  • 0

Musíš někde nastavovat tu hodnotu, jinak ti to neprojde druhou podmínkou. A dej tam ==.

zde maš nastavovanou hodnotu:

 

 

{
        PlayerInfo[issuerid][pWandlvl] += 1;
}

Používam to na zmlaceni když budeš mlatit hrače wanted bude věčí a věčí

Taky je zde možnost modifikovat tu podmínku tak, že jedna bude rovna nule a druhá menší nebo rovna nule, to pro jistotu, kdybys tomu někdy nastavil nekladnou hodnotu.

if(GetPlayerWantedLevel(playerid) == 0) return SCM(issuerid, red, "[!] Hráč nemá WantedLevel nelze ho zatknout");
if(PlayerInfo[playerid][pWandlvl] <= 0) return SCM(issuerid, red, "[!] Hráč nemá WantedLevel nelze ho zatknout");

Jo a zopakuj ten pravopis, za "furd myto" tě kdejaký grammar nazi (jako já) zdrbe.

 

:)

Podle PC tam chybu nemam no jo no :d 

 

jinak to co tam maš ty sem tam měl taky 

 

jinak používam:

 

public OnPlayerTakeDamage(playerid, issuerid, Float: amount, weaponid)

Zde je celé zatýkaní:

 

 

public OnPlayerTakeDamage(playerid, issuerid, Float: amount, weaponid)
{
	if(issuerid != INVALID_PLAYER_ID && weaponid == 3)
	{
		if(povolani[playerid][pJobs] == 5)
		{
			if(PlayerInfo[playerid][pWandlvl] == 0) return SCM(issuerid, red, "[!] Hráč nemá WantedLevel nelze ho zatknout");
			new string[128];
		    format(string,sizeof(string), "Policajt %s tě zatknul", PlayerName(issuerid));
		    SCM(playerid, -1, string);
		    SetPlayerInterior(playerid, 6);
			SetPlayerPos(playerid, 264.1659,82.0855,1002.0391);
		    ResetPlayerWeapons(playerid);
			SetPlayerWantedLevel(playerid, 0);
        	PlayerInfo[playerid][pWandlvl] = 0;
		}
	}
	
	if(issuerid != INVALID_PLAYER_ID && weaponid == 0)
	{
        PlayerInfo[issuerid][pWandlvl] += 1;
	}
	return 1;
}
Edited by TedakCZ
Link to comment
Share on other sites

  • 0
  • Hlavní moderátor

 

 

jinak to co tam maš ty sem tam měl taky

 

 

if(PlayerInfo[playerid][pWandlvl] == 1)

 

Končím, na tohle nemám. Až budeš chtít poslouchat lidi, co se ti snaží pomoct, napiš do chatu.

  • Líbí se mi to! (+1) 1
Link to comment
Share on other sites

  • 0

Proč by někdo ještě deklaroval proměnnou na wanted level? Ta fce funguje bezchybně, je to pitomost... prostě normálně kontroluj:

if(!GetPlayerWantedLevel(playerid)) return SCM(issuerid, red, "[!] Hráč nemá WantedLevel nelze ho zatknout");
A normálně dosazuj:

SetPlayerWantedLevel(playerid, GetPlayerWantedLevel(playerid) + 1);
Pro ukládání zase použiješ get(pokud je to důvod, proč tam máš tu proměnnou):

DOF2_SetInt(Soubor, "WL", GetPlayerWantedLevel(playerid));
:o složitá magie, že ano?
Link to comment
Share on other sites

  • 0

já používám YSI

Jestli máš problém i s obyčejnou podmínkou, tak to ho rovnou odinstaluj a ani ho nezkoušej stahovat znova. Vrať se k němu, až si pročteš všechny návody ve základech pawn a pochopíš, o čem je vůbec řeč...

Link to comment
Share on other sites

  • 0
  • Hlavní moderátor

Konec OT

Tedak, Scydo, vaše poslední 4 příspěvky jsem vám skryl, jednak to byl OT a jednak byste byli schopní v tom teď ještě pokračovat. Pokud jste si to ještě nevyříkali, pokračujte v chatu, sem už přispívejte jen věcmi, které se týkají tématu.

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...