Jump to content

vEnd

Hlavní moderátor
  • Příspěvků

    772
  • Registrován

  • Aktivní

  • Vítězných dnů

    60

Everything posted by vEnd

    1. Show previous comments  12 more
    2. Fakerko_

      Fakerko_

      Tohle bylo easy, ale v jednom user panelu u jiné hry mi to nejde :(

    3. vEnd

      vEnd

      Měl bys za to mít shadow achievement.

    4. Fakerko_
  1. 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.
  2. Můžeš to mít nastavené, ale teď záleží na tom, jak to máš nastavené. Pokud máš TextSize jen tam, kde je text, potom budeš moci klikat jen na tuhle zónu. Jestli to chceš na celý TD, musíš to tak nastavit.
  3. Tak si to zrekapitulujeme: - TD vytvořený máš a zobrazuje se ti správně; - máš správně nastavenou TextSize; - před zobrazením TD a před použitím funkce SelectTextDraw máš nastavené, že lze TD označit. Jestli je tohle všechno pravda (to mi řekni ty), pak by ti to mělo normálně fungovat. Nemáš náhodou na serveru verzi 0.3d nebo starší? Pokud ne, pak musí být chyba někde v těch třech bodech výše, osobně sázím na špatně nastavenou TextSize.
  4. Když to máš, tak se nám pochlub, jak jsi ten TextSize nastavil. Hlavně to dej do spoileru.
  5. vEnd

    pomoc Format

    Podle těch chyb to vypadá, že jsi někde zapomněl { nebo }. Překontroluj si složené závorky, když někde začne {, tak jinde musí končit }.
  6. vEnd

    pomoc Promenne

    Spoilery na dlouhé kódy Od dalšího příspěvku už začněte používat na dlouhé kódy spoilery, aby to bylo přehledné.
  7. Cituji z wikipedie: U každého toho TD, na který chceš klikat, musíš nastavit zónu, na kterou jde kliknout, a to pomocí fce TextDrawTextSize. To už ti říkám podruhé, teď je to snad srozumitelnější.
  8. Mrkni se na to, jak ty TD vytváříš. Klikací zónu ti tvoří funkce TextDrawTextSize.
  9. vEnd

    pomoc Promenne

    Má to být MAX_PLAYERS. if [CP[playerid] ==1//id CP What the hell? if(CP[playerid] == 1). else if (CP[playerid] ==11)//id CP { SendClientMessage(playerid,0xFFFFFFAA,"Zastávka: Konečná"); DisablePlayerCheckpoint(playerid); GivePlayerMoney(playerid, 10); SendClientMessage(playerid,0xFFFFFFAA,"Ziskavaš 10 Eur za dokončenie trasy"); Tady ti chybí závorka }. Každopádně nevím, jestli tohle jsou přičíny toho, proč ti to hlásí tu chybu. Ale jestli takovéhle překlepy děláš běžně, divím se, že tě kompilátor do teď pustil.
  10. vEnd

    pomoc Promenne

    Tím jsem myslel víc kódu, hlavně deklaraci toho pole, když ji tam tedy máš.
  11. vEnd

    pomoc Promenne

    Třeba proto, že na konci máš ) a ne ]. Zkus nám příště dát kód, díky.
  12. vEnd

    návod I-ZCMD [*]

    Co kdyby se to přesunulo do hlavní sekce? Byla by škoda, kdyby to zapadlo do historie v téhle sekci.
  13. Daniels ti to naznačil, ale já ti to řeknu narovinu. Umíš číst? You had one job. Chtěl jsem po tobě, aby ses podíval, jestli tam nemáš ještě něco dalšího, ne abys to tam dal. Tohle všechno smaž: #if defined FILTERSCRIPT; #if endif; #else #else #endif
  14. Tak se podívej, jestli náhodou někde nemáš ještě něco z tohohle: #define FILTERSCRIPT #else #endif
  15. Máš. #define TestovniTimer(funcname[], interval, bool:repeating, const format[], {Float,_}:...) Zbytečné makro. #if defined FILTERSCRIPT; Tohle smaž, zbytečná preprocesorová podmínka, navíc špatně napsaná. stock Jmeno(playerid) { new name[255]; GetPlayerName(playerid,name, 255); return name; } 255 změň na 25. Nauč se šetřit pamětí.
  16. Obtížnost: Osnova: 1. Úvod, co je to podmínka 2. Vytvoření podmínky 3. Další možnosti větvení 4. Vnořené podmínky 5. Závěr 1. Úvod Dostáváme se k šestému návodu o základech jazyka Pawn. V něm si vysvětlíme, co to jsou podmínky a jak probíhá větvení. Než budeme pokračovat, měli byste mít znalosti alespoň z předchozích dvou návodů (z tohoto a tohoto). Abychom se posunuli dál, musíme si nejdříve říct, co to podmínka a větvení je. Podmínku si můžeme představit jako výraz (tvořený relačními a logickými operátory – viz návod na operátory), který je buď pravdivý, nebo nepravdivý. Je-li pravdivý, vykoná se kód, který jsme podmínili. Můžeme také určit, co se stane, když je výraz nepravdivý. Tomuto rozdělování kódu dle výsledku podmínek se říká větvení. Bloky ani klíčová slova if, else a switch neukončujeme středníkem! 2. Vytvoření podmínky Teď si zkusme vytvořit takovou podmínku a větev. Syntaxe je následující: . if(logický výraz) { //kód } . Klíčové slovo if nám značí, že se bude jednat o podmínku (z angličtiny if – jestliže). Do kulatých závorek píšeme logický výraz, který se má vyhodnotit. Mezi složené závorky (které nám tvoří větev – blok) píšeme kód, který se má vykonat, když je podmínka pravdivá. Zkusme si to na příkladu: . new cislo = 10; if(cislo == 10) { print("Hodnota proměnné cislo je rovna deseti."); } . Podmínka je pravdivá, kód se vykoná. Co by se stalo, kdyby podmínka pravdivá nebyla? Nestalo by se nic. Kód uvnitř bloku if by se nevykonal. 3. Další možnosti větvení Na začátku jsem psal, že může nastat i situace, kdy chceme, aby se něco stalo v případě, že podmínka neplatí. I to nám jazyk umožňuje provést, a to hned několika způsoby. a) else If nám tvořilo "pravdivou větev", else nám pak bude tvořit "nepravdivou větev", tedy blok, který se vykoná, když bude podmínka nepravdivá. Nutno dodat, že k else se podmínka nedává a že ho nemůžeme použít samostatně (je vázán na if). . new cislo = 5; if(cislo == 10) { print("Hodnota proměnné cislo je rovna deseti."); } else { print("Hodnota proměnné cislo není rovna deseti."); } . Podmínka se vyhodnotí jako nepravdivá, takže blok if se přeskočí a místo toho se vykoná blok else. b ) else if Složitější větvení nám pak umožňuje else if. Zjednodušeně řečeno je to else s dodatečnou podmínkou. Else if bloků může být více, ale stejně jako else nemohou stát samostatně. . new cislo = 5; if(cislo == 10) { print("Hodnota proměnné cislo je rovna deseti."); } else if(cislo == 5) { print("Hodnota proměnné cislo je rovna pěti."); } else if(cislo == 0) //tato podmínka se už vyhodnocovat nebude { print("Hodnota proměnné cislo je rovna nule."); } . A v čem je vlastně kouzlo else if? Script vyhodnotí podmínku v if, zjistí, že je nepravdivá, tak přeskočí k následujícímu else if. Opět vyhodnotí podmínku, zjistí, že je pravdivá, tak vykoná tento blok. K dalšímu else if už ale nepokračuje, protože jedna z podmínek nad ním byla pravdivá. A tím se liší od soustavy if – if – if; u takové soustavy by totiž script vyhodnocoval všechny podmínky nehledě na to, že některá z nich byla pravdivá. c) if – else if – else Samozřejmě to jde také vše zkombinovat, záleží jen na tom, co potřebujeme. . new cislo = 5; if(cislo == 10) { print("Hodnota proměnné cislo je rovna deseti."); } else if(cislo == 5) { print("Hodnota proměnné cislo je rovna pěti."); } else { print("Hodnota proměnné cislo není ani 10, ani 5."); } . d) switch Pro určité případy zde máme ještě jednu strukturu, a tou je switch. O switchi si něco povíme až v příštím návodu. 4. Vnořené podmínky Do teď jsme si ukazovali jednoduché podmínky a jednoduché větvení. Ale abyste si nemysleli, že je možné jen tohle, máme možnost podmínky vnořovat, tedy vkládat podmínku do podmínky. Viz tento příklad: . new cislo = 5; if(cislo > 0) { if(cislo == 5) { print("Hodnota proměnné cislo je rovna pěti."); } else { print("Hodnota proměnné cislo není rovna pěti."); } } . Zde je vidět, že uvnitř bloků lze tvořit další bloky. Platí to u podmínek, platí to u cyklů, platí to u všech struktur, které tvoří bloky. 5. Závěr A to je z podmínek všechno. Dozvěděli jste se, jak podmínky a větvení fungují, jak můžete uplatnit svou znalost relačních a logických operátorů v praxi, jak tvořit větev pro pravdu i nepravdu, jak vytvářet složitější podmínky a jak podmínky vnořovat. V dalším návodu si probereme onen zmíněný switch. Tento návod, stejně jako ten předchozí, je určen pro nováčky, pokročilejší věci byly buďto úplně vynechány, nebo jsou uvedeny ve spoilerech. Přesto, zdá-li se Vám, že jsem něco opomněl, někde jsem se spletl nebo se jen chcete vyjádřit, pište do tohoto tématu. Ověřený návod Tento návod prošel validací, a lze ho proto považovat za ověřený.
  17. vEnd

    pomoc Checkpoint

    To mě nepřekvapuje. Očividně vůbec nevíš, jak fungují podmínky a větvení. Každá podmínka (if) tvoří blok, do kterého ten kód musíš dát, takhle se vykoná akorát ta první funkce. public OnPlayerEnterCheckpoint(playerid) { if (CP[playerid] ==1)//id CP { DisablePlayerCheckpoint(playerid); CP[playerid] =2; SetPlayerCheckpoint(playerid, 968.1298,-1407.5601,12.9541, 4.0); } else if (CP[playerid] ==2)//id CP { DisablePlayerCheckpoint(playerid); CP[playerid] =3; SetPlayerCheckpoint(playerid, 1217.5535,-1408.3521,12.9824, 4.0); } return 1; }
  18. vEnd

    pomoc Registracia

    Fajn, od nás od všech jsi dostal hodně rad (až na Twixa, ten se akorát chtěl sjet na vlně a idiotsky ti dal odkaz na Google, i přes to, že dva lidi před ním už ti radili), snad nebude vadit, že ti to shrnu, ať v tom nemáš zmatek: - informace budeš ukládat do souboru; - já a Scydo doporučujeme DOF2, se kterým se lehce pracuje a který funguje na způsob INI souborů, viz tento návod; - ještě lépe to lze udělat běžnými file funkcemi, pokud si troufneš, pak se podívej na tenhle script (CMatus) a tento návod (Sanios); - přes dini to nedělej, je to zastaralý systém.
  19. vEnd

    pomoc Registracia

    Jop, poradím. Vybereš si file systém, který chceš pro ukládání do souborů (doporučuji DOF2, učit tě s file funkcemi tuším nemá cenu), při prvním připojení k serveru hráče vyzveš, aby zadal heslo, vytvoříš na daný nick soubor a do něj uložíš heslo. Při dalším připojení hráče vyzveš k přihlášení, když se bude heslo, co zadá, shodovat s heslem v souboru, login proběhne úspěšně. Nezapomeň hesla hashovat. DOF2 Hashování
  20. vEnd

    pomoc zmana textu

    Číslo budeš pro hráče ukládat do souboru. Odkaz, co jsem ti poslal, je o tom, jak se ukládá do souboru.
  21. vEnd

    pomoc zmana textu

    http://wiki.sa-mp.com/wiki/File_Functions
  22. Toto by ti správně nevysvětlilo 90 % fóra. Asi jako toliko oblíbený "stock". Co oceňuji na tvém návodu je, že se z něj nedá nic zkopírovat, takže si to dotyčný musí přečíst. Na druhou stranu, nováček by to zavřel po prvních pár větách, protože to máš strašně nepřehledné. To dost odrazuje od čtení. A už podruhé tě upozorňuji, že návody se mají držet dané šablony. Měl bys s tím něco udělat, než si toho začnou všímat moderátoři.
  23. Nazval bych to spíše "Konfigurace SA:MP serveru", to je výstižnější než tvůj momentální název. Jinak, tvůj návod by měl být podle šablony. Na to se podívej.
  24. vEnd

    pomoc Facebook Likes

    A co kdybys to vykoušel? Člověk za tebe nebude dělat úplně všechno.
×
×
  • Create New...