Jump to content

Search the Community

Showing results for tags 'návod'.

  • Search By Tags

    Oddělujte čárkami
  • Search By Author

Content Type


Fórum

  • Obecné
    • Všeobecné
    • Všechno možné
  • Programování
    • Poradna
    • Návody
    • Tvorba
    • Hledám programátora
  • Herní oblast
    • Poradna
    • Jak na to?
    • Herní kontext
    • Herní zážitky
    • Komunita
  • Grafika
    • Poradna
    • Návody
    • Tvorba
  • Ostatní
    • Hardware a software
    • Hledám/nabízím
    • Archiv
    • 3D Tisk

Find results in...

Find results that contain...


Date Created

  • Start

    End


Last Updated

  • Start

    End


Filter by number of...

Joined

  • Start

    End


Group


Web


Facebook


Jabber


Skype


Steam


Twitter


Github


Pastebin

  1. Tanga

    návod Format

    Toto je prvá séria návodov pre úplnych začiatočníkov. Čo je to format: • Je to funkcia, ktorá spojí viac rozličných textov. Kedy použijem funkciu format: • Napríklad ak chcem, aby som z textov "ahoj" a "hráč" dostal "ahoj hráč"! Ako vyzerá funkcia format: Nasledujúci text si prečítaj velmi pozorne, podla toho budeš robiť. format(vysledokspojenia,sizeof(vysledokspojenia),"SKRATKA1 SKRATKA2",zdrojprvejskratky,zdrojdruhejskratky,...); Skratky, ktoré môžeš použiť: Postup použitia format: Tento postup používaj vždy a všade. Príklady použitia format: 1. Spojenie mena a priezviska: 2. Správa "Vitaj na serveri, menohráča." 3. Vynadanie hráčovi pomocou príkazu 4. Vynadanie hráčovi pomocou príkazu aj s menom admina Dúfam, že tento typ jednoduchého návodu s postupom je efektívny. Alebo prepadák jak hovado. Upozornenie pre skúsených: Informační návod - Návod označen jako platný Ten to návod byl označen jako platný.Návod může být kdykoli označen jako nevhodný či neplatný
  2. Zdravím, tak ma napadlo sa podeliť o môj prvý ammo shop pokial ma ešte teší že som ho vytvoril s pomocou wiki. Na začiatok: new ammo; Druhá fáza je vytvoriť pickup v amme ////////////ammonation ammo = CreatePickup(1254, 19, 312.4347,-165.6759,999.6010); NOTE: 1254 je síce vesta ale mne sa to páči, je to netradičné a nevidno to nejak často na serveroch. Tretia fáza je OnPlayerPickUpPickup public OnPlayerPickUpPickup(playerid, pickupid) { if(pickupid == ammo)//ammo - zbrane { ShowPlayerDialog(playerid, 111, DIALOG_STYLE_LIST, "StuntPark Ammonation", "Health $2,000\nArmour $2,000\nDesert Eagle $500\nSawnoff Shotgun $1,000\nMP5 $1,500\nAK-47 $4,000\nM4 $4,000\nSniper Rifle $3,500\nGranade $3,000", "Buy", "Exit"); return 1; } Stvrtá fáza je dialog sám o sebe public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[]) { if(dialogid == 111) // Color Settings { if(!response) return SendClientMessage(playerid, 0xFFFFFFAA, "Odišiel si."); switch(listitem) { case 0: // Zivot { if(GetPlayerMoney(playerid) < 2000) return SendClientMessage(playerid, 0xFFFFFF, "{C0C0C0}Nemáš dostatok penazí."); GivePlayerMoney(playerid, -2000); SetPlayerHealth(playerid, 100); return 1; } case 1: // vesta { if(GetPlayerMoney(playerid) < 2000) return SendClientMessage(playerid, 0xFFFFFF, "{C0C0C0}Nemáš dostatok penazí."); GivePlayerMoney(playerid, -2000); SetPlayerArmour(playerid, 100); return 1; } case 2: // Desert Eagle { if(GetPlayerMoney(playerid) < 500) return SendClientMessage(playerid, 0xFFFFFF, "{C0C0C0}Nemáš dostatok penazí."); GivePlayerMoney(playerid, -500); GivePlayerWeapon(playerid, 24, 50); return 1; } case 3: // Sawnoff Shotgun { if(GetPlayerMoney(playerid) < 1000) return SendClientMessage(playerid, 0xFFFFFF, "{C0C0C0}Nemáš dostatok penazí."); GivePlayerMoney(playerid, -1000); GivePlayerWeapon(playerid, 26, 50); return 1; } case 4: // MP5 { if(GetPlayerMoney(playerid) < 1500) return SendClientMessage(playerid, 0xFFFFFF, "{C0C0C0}Nemáš dostatok penazí."); GivePlayerMoney(playerid, -1500); GivePlayerWeapon(playerid, 29, 100); return 1; } case 5: // Ak-47 { if(GetPlayerMoney(playerid) < 4000) return SendClientMessage(playerid, 0xFFFFFF, "{C0C0C0}Nemáš dostatok penazí."); GivePlayerMoney(playerid, -4000); GivePlayerWeapon(playerid, 30, 150); return 1; } case 6: // M4 { if(GetPlayerMoney(playerid) < 4000) return SendClientMessage(playerid, 0xFFFFFF, "{C0C0C0}Nemáš dostatok penazí."); GivePlayerMoney(playerid, -4000); GivePlayerWeapon(playerid, 31, 150); return 1; } case 7: // Sniper Rifle { if(GetPlayerMoney(playerid) < 3500) return SendClientMessage(playerid, 0xFFFFFF, "{C0C0C0}Nemáš dostatok penazí."); GivePlayerMoney(playerid, -3500); GivePlayerWeapon(playerid, 34, 30); return 1; } case 8: // granade { if(GetPlayerMoney(playerid) < 3000) return SendClientMessage(playerid, 0xFFFFFF, "{C0C0C0}Nemáš dostatok penazí."); GivePlayerMoney(playerid, -3000); GivePlayerWeapon(playerid, 16, 10); return 1; } if(GetPlayerMoney a <3500 (ukážka) - zisti či má hráč danú sumu pri sebe. Ked nemá napíše mu správa že nemá dostatok penazí, GivePlayerMoney a -3500 mu ich odoberie (Pozor musi tam byť -). GivePlayerWeapon nám sám o sebe hovori že vrah je na svete Tento Tut som sice robil s pomocou wiki nie je to nič moc, ked som na niečo zabudol pište hned ale po jednom! PS: Samozrejme si músite vytvoriť aj vlastné ammu ale to nechám na vás.
  3. http://pawno.cz/files/file/162-mta-map-editor-nove-objekty-samp/ Editor+Nové objekty (hlavně stunt, interiér)
  4. Dobry den, sere ma to že ako vložim objekty do MTA tak tu mate .. ) ak tam mam chybu opravim tu je navod ako vložit objekty nove do MTA ! 1. Otvoriem si MTa kde ho mate cele ! 2. Pojdeme po složkach otvarat Server -> Mods -> Deathmatch -> resources -> [editor] a rozbalime tam .. .rar ! nevložime do tych rar LEN ROZBLAIME zložky do [editor] 3. Spustime MTa a mame to Downlad v Rar ! http://uloz.to/xdp1w6Yt/mta-ra
  5. Dobrý večer všem nevím jestli je [TUT]AFK SYSTEMU myslím že ne ale že tu je AFK Takže jsem se rozhodl to udělat. Jako první includy a definice Za druhé public OnFilterScriptInit Za třetí public OnPlayerConnect Za čtvrté public OnPlayerCommandText Doufám že vám to pomohlo je to sice easy ale mě to stačí tak prosím aj hodnoťte 0/10 i ta snaha se cení nato že jsem začátečník AFK SYSTEM + VESTA
  6. Verze 2013 Update 2017 Možná bych udělal takový menší update protože by mě bylo líto kdyby to vážně někdo používal v dnešní době... Píše to konkrétně různé znaky včetně písmen (je to udělané jako includ). V případě že máte nějaké upomínky jak zjednodušit cokoliv konkrétně ve scriptu níže klidně můžete psát. Jinak PlayerName si snad každý dokáže sepsat + RandomEx stock a SCMTAF je zjednodušená zpráva SCMTA přes formát. new Random_text[9] = "none"; // do OnGameModeInit: SetTimer("Show_random_text", 60000*6, true); forward Show_random_text(); public Show_random_text(){ format(Random_text, 9, "%c%c%c%c%c%c%c%c", Get_random_letter(), Get_random_letter(), Get_random_letter(), Get_random_letter(), Get_random_letter(), Get_random_letter(), Get_random_letter(), Get_random_letter()); SCMTAF(-1, "Napiš jako první do chatu [ %s ] a získej náhodnou částku.", Random_text); return true; } stock randomText_OnPlayerText(playerid, text[]){ // do OnPlayerText: randomText_OnPlayerText(playerid, text); if(strcmp(Random_text, "none", true)){ if(!strcmp(text, Random_text, true)){ new amount = RandomEx(3000,5000); SCMTAF(-1, "Hráč %s(%d) napsal jako první do chatu [ %s ] a získal $%d.", PlayerName(playerid), playerid, Random_text, amount); format(Random_text, 9, "none"); GivePlayerMoney(playerid, amount); } } return true; } stock Get_random_letter(){ return 65 + random(52); }
  7. Ok, takze tohle je spise takovy link, kde je vytecne vsechno roztrizene. Myslim si ze vsichni co mapuji tak to uvitaji http://gta-sa-mp.de/object/
  8. BELZI

    návod Ako písať SMS ?

    Samsung vydal zaujímavý článok o tom ako majú užívatelia písať textové správy. Každý má svoj osobitý štýl písania, no nie vždy sa tak úplne trafíme. Samsung nám prináša 6 typov, ktorým by sme sa rozhodne mali vyhnúť. 1. Napíš a čakaj Napíšete správu a čakáte okamžitú odpoveď. Zle. Nie vždy má človek hneď čas na odpoveď. 2. Písať opitý Väčšina dostane úžasný nápad poslať správu kamarátovi, keď je v nálade. Problém nastane, keď v zozname vyberiete miesto kamaráta Vášho šéfa. 3. Alien Language Texting (ALT) Na Slovensku všetkým známy štýl z rozšírenej stránky na kEcAnIe. :^) > |-O ( .)\(*^0^*) (◎o◎)/? 4. Písanie za volantom Keď píšete, píšte. Keď šoférujete, šoférujte. Vy pri písaní kľudne môžete skončiť v poli ale na ceste nie ste sami, tak myslite na iných. 5. Píšete nahnevaný Slová, ktoré napíšete do správy, často vyznejú úplne inak a príjemca nemusí pochopiť, že Vy ste to mysleli inak. 6. Romány Ak telefón za Vás rozdelí správu na viac SMS, nebodaj prepne na MMS, tak to nie je najlepšie znamenie. Použite radšej-email alebo pôvodnú funkciu telefónu. Zavolajte. ČLÁNOK (AJ SO SCREENSHOTMI) Z WWW.ANDROIDACI.NET
  9. Zdravím, dlouho jsem zde nic nepsal, ani nereagoval na žádné téma, tak jsem si řek, že napíšu návod na CoD4 server. Je kolem 2hé ráno, spát se mi nechce, pro mě dneska poslední, školní den, kdy jsi jdu pro vysvědčení a taky poslední možnost napsat vám něco užitečného. Jelikož jsem dostal tu možnost, udělat servery projectu nemesis(neberte jako reklamu), tak jsem začal u CoD 4 které, po mě chtěli z důvodu, že je to mnohem lepší, oproti SA:MP serveru, v čem mají rozhodně pravdu. Kámenem úrazu bylo sehnat všechny soubory, protože se na Call Of Duty 4 nedělají pravidelné updaty, jako třeba u SAMPu, a tak je hodně mrtvých linku, tudíž se o mnohem hůř hledají potřebné soubory. Ale konec kecání a přejdeme na návod. Co k tomu budeme potřebovat ? - Trpělivost, nic nejde hned od ruky, a vždy se může vyskytnout nějaký problém. - Dobrou náladu, protože ta je k tomu potřeba, pusťte si třeba nějakou hudbu. - Instalační CD/DVD CoD4, nebo jakoukoliv obstaranou instalaci hry CoD4. - Linux soubory pro CoD 4 server. - FTP přístup k linux serveru. - PuTTy přístup k serveru. - Configy, ty vytvoříme ku konci návodu. Kopírování souboru z DVD Otevřeme si FTP, u mě WinSCP. Nebudu rozebírat jak se to připojuje, tohle je návod na vytvoření serveru, ne připojení k adresářům linuxu. Když se připojime, jsme v defaultní složce. U mě to je /home/tweak, jelikož mám svoji složku, svůj účet. Ale to neřešte, připojte se, mělo by to vypadat nějak takhle. To co vidíte zamazaně neřešte. Vytvoříme si složku, například cod4. Složku vytvoříte stiskem F7, nebo Kliknutím pravého tlačítka myši, Nový, Adresář. Pojmenujte ho cod4. A teď samotné kopírování souborů, obsah má kolem 6,2 Gb velikost, takže budete kopírovat celkem dlouho. Otevřete si složku cod4, a přesunete z instalačního CD/DVD, nebo jak jsem řekl instalačky, obsah složky Data. Tam naleznete soubory: main miles Mods zone binkw32.dll cod.bmp cod ikonu codlogo.bmp iw3mp.exe iw3sp.exe localization.txt mss32.dll Některé soubory nejsou potřeba, třeba jako iw3mp.exe, iw3sp.exe, bmp soubory, tak je můžete klidně smazat. Jak máte nakopírováno, tak je třeba nakopírovat soubory serveru. Takže si stáhnete soubory z linku níže. Download má zhruba 216 Mb. Je to i zároveň update souboru, které jsme nakopírovali z CD/DVD na patch 1.7, na kterém nám server poběží. http://uloz.to/x6fhLDKs/cod4-linux-server1-7-rar Když máte staženo, uvidíme toto: Začneme kopírovat, to co je ve složce main, nakopírujeme do složky main. To co je ve složce zone, nakopírujeme do složky zone. Soubory cod4_lnxded, cod4_lnxded-bin, libgcc_s.so.1, libstdc++.so.6 nakopírujeme tam kde je soubor localization.txt. Základ bychom měli, jdeme na další krok. Instalace PunkBusteru (AntiCheat) Stáhneme si punkbuster instalaci z evenbalnce.com, konkrétně: http://www.evenbalance.com/?page=pbsetup.php Vybereme si For 32-bit Linux Games (Command-line only version), protože všechny soubory máme 32bit, a budeme používat Commands line v PuTTy, žádnou grafiku. Pokud jsme v adresáři cod4, vytvoříme složku pb Otevřeme složku pb Nakopírujeme tam extrahovaný soubor, který jsme stáhli pbsetup.run Vypadá to takhle: Nastavte mu chmod 777, kliknete na soubor pbsetup.run, stiskněte F9, a odfajfkujte všechna R,W,X, oktálově to bude 0777. Otevřeme si program PuTTy, přihlásíme se, napíšeme příkaz: cd cod4 cd pb V putty, jste ve složce pb, takže můžeme začít instalovat. ./pbsetup.run -e ./pbsetup.run --add-game=cod4 --add-game-path=/home/tweak/cod4/ Hned na to se vás zeptá "Do you agree to the PunkBuster EULA ? (Y/N) " Stisknete Y, a pokud vám napíše "Game added to the list" máte nainstalovaný PunkBuster, a můžete jej nechat updatovat. ./pbsetup.run -u Vysvětlení: --add-game=cod4 - přidání hry, které se nainstaluje PB, můžete použít i jiné zkratky her, které PB podporuje, pokud budete instalovat PB jiné hře. --add-game-path=/home/tweak/cod4/ - cesta k souborům serveru, cesta může být u Vás zcela jiná ! Configy Server bychom měli hotový, a byl by připraven na spuštění, ale chybí mu config, jakou každého serveru. Jdete do složky main vytvořte soubor server s příponou cfg (server.cfg) vložte do něj následující kód Spuštění serveru, vytváření scriptů Server je hotový a můžeme ho zapnout. Jednorázový, a zdlouhavý command v puty je takový. Pokud se přihlásíme, jdeme do složky se serverem: cd cod4 Zadáme spouštěcí command: ./cod4_lnxded +set net_port 28960 +set sv_punkbuster 1 +set sv_pure 1 +exec server.cfg net_port - nastavíme port, tohle je defaultní 28960 sv_punkbuster - zapneme PB, 0 znamená vypnutý sv_pure - pure server, tím se zabrání podvádění změnou obsahu hry +exec server.cfg - načte náš config, který máme ve složce main Do příkazu můžeme přidat také, jaký mód chceme spustit na serveru, jaký je homepath, rotaci map a podobně. Ukázka: ./cod4_lnxded +set net_port 28960 +set sv_punkbuster 1 +set sv_pure 1 fs_homepath /home/tweak/cod4/ +exec server.cfg +map_rotate Určitě vás, nebude pořád bavit psát zdlouhavé kódy, tak si vytvoříme skripty. jednoduché skripty, které nám zjednoduší a urychlí práci se serverem. start.sh Vytvoříme si soubor start.sh ve složce cod4, otevřeme jej a do něj napíšeme. Můžete si k příkazu napsat co chcete, třeba jaký mód spustit a podobně. #!/bin/bash cd /home/tweak/cod4/ # Start server now! screen -A -m -d -S cod4 /home/tweak/cod4/cod4_lnxded +set net_port 28960 +set sv_punkbuster 1 +set sv_pure 1 +exec server.cfg Server potom najdete ve screenu. screen -X cod4 stop.sh Uděláme se souborem to samé, co u souboru start.sh. Jenže soubor se bude jmenovat stop.sh ale příkaz bude: #!/bin/sh screen -S cod4 -X quit restart.sh Příkaz který spustí nejprve stop.sh a potom start.sh, tím se server restartuje. ./stop.sh ./start.sh Cracked server Dosud jsme měli, a máme originál server, protože spouštěcí soubor serveru se spojuje s activision, který kontroluje jestli máte nebo nemáte originální klíč. Hodně, nebo aspoň většina hráčů nemá originální klíč, ale přesto by jsi chtěla zahrát CoD4 po síti, s vice hráči. Proto přikládám soubor, který obchází tuto adresu, protože všechna písmena "i", jsou nahrazeny písmenem "h". Tím je adresa špatná, server se nemůže spojit s activisionem a nemůže ověřovat klíč, a tím hráče pustí do hry. http://uloz.to/xS8hVNcE/cod4-linux-patch-17-rar Tento soubor nahradíme dosavadním, a spustíme ještě jednou upadate PB. Tím by se i hráči bez originálního klíče měli napojit. Instalace módu Není to vůbec složité jak se z počátku zdá. Máme spousty herních módu, například Only Snip, Only Knife, Promod a podobně. V tuto chvíli si ukážeme jak nainstalovat PROMOD, je to zcela jednoduché. Navštívíme stránku www.codporomod.com, vybereme si jakoukoliv verzi promodu, u mě třeba aktuální verze EU 2.16. A postupujte podle těchto kroků. Přihlásíme se do FTP. Pomocí WinSCP. Otevřeme adresář cod4 Otevřeme adresář main Otevřeme soubor server.cfg A do něj vložíme následující: // map rotation set sv_maprotationcurrent " set sv_mapRotation "gametype sd map mp_backlot gametype sd map mp_crash gametype sd map mp_crossfire gametype sd map mp_citystreets gametype sd map mp_strike" // promod settings set promod_mode "custom_public" set promod_enable_scorebot "0" Rotace je nastavena na typické mapy promodu, nebo-li INTEL mapy. custom-public - je mód pro public servery A opět klasické překopírování, to co je ve složce pb, vkopírujeme do složky pb. A složku promodlive216, nakopírujeme do složky Mods, v adresáři cod4. Otevřeme si soubor start.sh Přidáme +set fs_game mods/promodlive216 +map_rotate Uložíme a restartujeme server. Konec !! Pokud se vám, tento návod podařil přečíst až do konce, a podařilo se vám server zprovoznit, z celého srdce vám gratuluji. Omlouvám se za jakékoliv diakritické chyby, překlepy, a podobně. Psát návod přes 2 hodiny, tak aby ho člověk pochopil není jen tak. Užijte si dnešní den, já si jdu dát další kafe za vás, a snad se potkáme u delšího návodu.
  10. Zdařec.. Nahraný čas pomocí timerů je sice jednoduchý ale zbytečný... Jde to krásně bez nich... Deklarujeme proměnou : new TempTime[MAX_PLAYERS char]; public OnPlayerConnect( playerid ) { TempTime{ playerid } = gettime(); //Proměnné nastavíme aktuální hodnotu unix tajmu return 1; } public OnPlayerDisconnect( playerid ,reason) { new TimeToTemp = gettime() - TempTime{ playerid } ;// Proměná TimeToTemp bude nyní obsahovat počet sekund které byl hráč online // proměnou TimeToTemp [b]přičteme [/b]do hráčova souboru (DUdb,Dini,DOF2) return 1; } To je vše krásné ráno :-)
  11. Bohužial meno autora som už zabudol.Tento include som mal už dosť dlho.Je to jednoduché. Náhlad Použitie Include #include <LB_TDBox> Samotný textdraw TD_SendMessage(playerid, "Vitajte na servery", "Spawn"); playerid - Predvolená funkcia.Pošle signál hráčovy. Vitajte na servery - Náš text.Môžete zmeniť na čo chcete, Spawn - Nadpis texdrawu Texdraw zmizne automaticky po 5 sekundách. Format new Money = GetPlayerMoney(playerid); new string[256]; format(string,256,"Peniaze : %d",Money); TD_SendMessage(playerid,string,"Stats"); Nový riadok Nový riadok vložíte pomocou ~n~. Include na stiahnutie v prílohe
  12. Zdravím, delší dobu vidím, jak většina uživatelů pracuje s dialogy a tady se dozvíte jak to s dialogy pracovat nejlépe. Jistě víte, ze existuje systém, který volá dialog v callbacku. Tento systém jsem porovnával s tím co používám já. Testoval jsem to na 250 dialogů a můj systém vyšel xkrát rychlejší. 1) Většina dialogů má jedno aktivační tlačítko a druhé neni použíté (Zavřete s tím dialog). Proto je lepší si nejdřív zjistit, zda má vůbec cenu prohledávat dialogy, kdyz to ani není potřeba. 2) switch je xkrát rychlejší nez používání if a else if. Hlavně switch Vás upozorní, pokud použijete stejné id vícekrát. 3) Pro listitem lze také použít switch. Příklad jak používáte dialogy nyní: public OnDialogResponse(playerid,dialogid,response,listitem,inputtext[]) { if(dialogid == 1) { if(response == 1) { if(listitem == 0) else if(listitem == 1) else if(listitem == 2) else if(listitem == 3) } } else if(dialogid == 2).... else if(dialogid == 3).... .... return 1; }Zde příklad jak je optimalizovat: public OnDialogResponse(playerid,dialogid,response,listitem,inputtext[]) { if(response == 1) { switch(dialogid) { case 1: { switch(listitem) { case 0: case 1: case 2: case 3: } } case 2:.... case 3:.... ..... } } return 1; } Informační návod - Návod označen jako platný Ten to návod byl označen jako platný.Návod může být kdykoli označen jako nevhodný či neplatný
  13. Jak již z názvu jest patrno nejedná se o návod v přímém slova smyslu... Chci se s vámi podělit o řekněme tweak který jsem objevil při štourání v pawn dokumentaci.... Je dost možné že používáte předefinování id dialogů do "slov" příklad #define DIALOG_LOGIN (1) ShowPlayerDialog( playerid, DIALOG_LOGIN, DIALOG_STYLE........ Já narazil na jednodušší způsob který pro zkušenější scriptery nebude žádnou novinkou ale některým nováčků a podobně to podle mého pomoci může. enum { DIALOG_NONE, DIALOG_LOGIN, DIALOG_REGISTER } Pooužití je pak už shodné s předchozí alternativou. V čem je toto lepší než definice ? Enum přiděluje "definicím" čísla od 0 do 32574(MAx_DIALOG_ID) sám tudíž odpadájí problémy stím jestli jste si někde nedali stejné id dialogu enum { DIALOG_NONE,//ID 0 DIALOG_LOGIN,//ID 1 DIALOG_REGISTER// ID 2 } Pokud Vám to ulehčí práci s idčky dialogů jako mě pak budu jen rád
  14. Čaute, dávám sem nováčkům jak na lehké funkce a příkazy. Jak na zprávy: SendClientMessage(playerid,barva_bila,"Ahoj"); //Pošle jen vám zprávu do chatu v bílé barvě s textem Ahoj SendClientMessageToAll(barva_bila,"Ahoj"); //Pošle všem hráčům v chatu zprávu v bílé barvě s textem Ahoj GameTextForPlayer(playerid,"~w~Ahoj",5000,5); //Zobrazí jen vám zprávu na obrazovce v bílé barvě s textem Ahoj, která bude na obrazovce trvat 5 sekund, pak text zmizne GameTextForAll("~w~Ahoj",5000,5); //Zobrazí všem hráčům na serveru zprávu na obrazovce v bílé barvě s textem Ahoj, která bude na obrazovce trvat 5 sekund, pak text zmizne Můžeme změnit i barvy u SendClientMessage: Třeba místo barva_bila,"Ahoj" můžeme změnit barvu na modrou: barva_modra text v chatu pak bdue psát modrou barvou #define barva_zluta 0xB8860BAA #define barva_modra 0x00FFFF #define barva_zelena 0x33AA33AA #define barva_cervena 0xE10000AA SendClientMessage(playerid,barva_bila,"Ahoj"); Nebo můžeme změnit barvu textu v chatu i takto: {Barva} text např.. "{0000FF}Ahoj" atd. Některé barvy zde: {FF0000} červená {00FF00} zelená {0000FF} modrá {FFFF00} žlutá {FF9900} oranžová [FFFFFF] Bílá U GameText: ~r~ červená ~g~ zelená ~b~ modrá ~w~ mílá ~y~ žlutá ~p~ fialová Třeba místo textu ~w~Ahoj což je bílou barvou tak dáme ~b~Ahoj a bude nám text ukazovat na obrazovce modrou barvou nebo si můžete dát i jinou barvu Jak na peníze: GivePlayerMoney(playerid,1000); //Přidá hráči 1000$ GivePlayerMoney(playerid,-500); //Odebere hráči 500$ Jak na barvu: SetPlayerColor(playerid,barva_bila); //Nastaví hráči bílou barvu Jak na skin: SetPlayerSkin(playerid,140); //Dá hráči skin ID 140 Seznam ID skinů najdete zde: http://wiki.sa-mp.com/wiki/Skins:All Jak na zbraň: GivePlayerWeapon(playerid,30,500); //Dá hráči zbraň AK47 s 500 náboji Seznam ID zbraní najdete zde: http://wiki.sa-mp.com/wiki/Weapons Lehké funkce které můžeme dát do lehkých přikazů, třeba do výbavy: if(strcmp(cmdtext, "/vybava", true) == 0) { //Příkaz SendClientMessage(playerid,barva_bila,"Dostal jste výbavu zbraní, peněž a života"); //Napíše do chatu hráčí zprávu GivePlayerWeapon(playerid,30,500); //Dá hráči zbraň AK47 s 500 náboji GivePlayerMoney(playerid,1000); //Dá hráči 1000$ SetPlayerHealth(playerid,100); //Dá hráči 100 hp života return 1; } Pokud někdo napíše příkaz /vybava pošle se mu zpráva do chatu že jste dostal výbavu + dostane AK47 s 500 náboji + dostanete 1000$ a doplní se mu život. Doufám že nováčkům návod pomůže. Předem děkuju za hodnocení.
  15. Pepa

    návod Bomba

    Čaute, dávám jsem začátečníkům návod jak vytvořit lehce bombu: Takže, nahoru dáme: #define barva 0xFF0000AA //Definuje červenou barvu new Float:rX,Float:rY,Float:rZ; //Souřadnice new bomba[MAX_PLAYERS]; //Bomba new Float:bX,Float:bY,Float:bZ; //Souřadnice new Name[21]; //Zjišťuje hráčovo jméno new string[256]; a do public OnPlayerCommandText(playerid, cmdtext[]) { if(strcmp(cmdtext, "/polozitbombu", true) == 0){ //Příkaz if(bomba[playerid] == 0){ //Pokud je bomba nastavená na 0 znamená to že bomba ještě neni položená bomba[playerid]=1; //Nastaví bombu jako položenou GetPlayerPos(playerid,bX,bY,bZ); //Zjišťuje hráčovo pozíci aby se mohl vytvořit výbuch bomby CreateObject(1654,bX,bY,bZ-0.8,rX,rY,rZ); //Vytvoří model bomby GetPlayerName(playerid,Name, sizeof(Name)); //Zjišťuje hráčovo jméno format(string, sizeof(string), "Hráč %s položil bombu",Name); //Napíše text do chatu SendClientMessageToAll(barva, string); //Pošle to všem do chatu barvou }else{ //Pokud už je bomba položená SendClientMessage(playerid,barva, "Bomba už je položená, odpalte příkazem /boom"); //Napíše jen vám do chatu že už je bomba položená } return 1; } if(strcmp(cmdtext, "/boom", true) == 0){ //Příkaz if(bomba[playerid] == 0){ //Pokud je bomba nastavená na 0 znamená to že bomba ještě neni položená SendClientMessage(playerid,barva, "Bomba ještě neni položená"); //Napíše jen vám text do chatu }else{ //Pokud je bomba nastavená na 1 CreateExplosion(bX,bY,bZ,2,3); //Vytvoří výbuch DestroyObject(1654); //Zníčí model bomby bomba[playerid]=0; //Vrátí bombu do původný hodnoty GetPlayerName(playerid,Name, sizeof(Name)); //Zjišťuje hráčovo jméno format(string, sizeof(string), "Hráč %s odpálil bombu",Name); //Napíše text do chatu SendClientMessageToAll(barva,string); //Pošle to všem do chatu barvou } } return 1; } Za každym kódem máte vysvětlivky: //vysvětlivka Doufám že nováčkům návod pomůže a bude se hodit Díky předem za hodnocení.
  16. Dobrý deň.. Môj posledný tutoriál ohľadom banky sa moc nevydaril tak teraz vám sem prinášam nový s viac popísanými funkciami a bez bugov .. Takže. Začneme premenami.. new BankMoney[MAX_PLAYERS]; - Do tejto premeny budeme ukládať hráčove peniaze ktoré má uložené v banke. Teraz si vytvoríme pickup do ktorého keď vstúpime tak sa nám zobrazí dialog z bankovými funkciami. do OnGameModeInit si vložíme : CreatePickup(1274,1,X,Y,Z,VW); - Funkcia CreatePickup ma takéto parametre: - 1274 - ID Pickupu.. Všetky pickupy nájdete na http://wiki.sa-mp.com/wiki/Pickup_IDs - 1 - TYP, 1 znamená že nikdy nezmizne všetky TYPY nájdete na http://wiki.sa-mp.com/wiki/PickupTypes - X,Y,Z - Súradnice kde sa má pickup vytvoriť.. - VW - To je niečo ako hráčov svet.. Keď dáte napr. 3 tak ho bude vidieť iba hráč ktorý je v tom virtual worlde.. Ak chcete aby sa zobrazoval v každom VW zadajte tam -1 takže.. Pickup máme vytvorený. Teraz ideme do funkcie OnPlayerPickupPickup: public OnPlayerPickUpPickup(playerid, pickupid) { if(IsPlayerInRangeOfPoint(playerid,radius,X,Y,Z)) { ShowPlayerDialogEx(playerid,ID,DIALOG_STYLE_LIST,"Banka","Vybrať\nVložiť\nStav","Vybrať","Zrušiť"); } return 1; } - funkcia IsPlayerInRangeOfPoint bola už preddefinovaná v SAMPe takže sa nemusíte strachovať že nebudete mať stock alebo define na to .. Táto funkcia slúži na kontrolu pozície.. Takže si ju prebereme: - playerid - toto je všetkým hadam jasné.. - radius - radius znamená že do akej vzdialenosti od pickupu sa má dialog otvoriť.. - X,Y,Z - Sem vložíme súradnice ktoré sme dávali aj pri funkcií CreatePickup.. - funkcia ShowPlayerDialog slúži na otvorenie dialógu Čo k tomu viac dodať.. Rozoberieme si aj tú: - playerid - toto je všetkým hadam jasné.. - ID - toto je dialogid.. Nikdy nemôžete dať na 2 dialógy to isté ID lebo sa vám bugnú.. - DIALOG_STYLE_LIST - je štýl dialógu.. Všetky štýly nájdete na http://wiki.sa-mp.co...i/Dialog_Styles - "banka" - nadpis v dialógu. - "vybrať\nvložiť\nstav" - toto sú vlastne kolonky ktoré sa dajú stlačiť.. Pozor jak tam nedáte \n dá sa vám to do jedného riadku a bude to nefunkčné.. - "Vybrať" - tlačidlo 1 (response 1) - "Zrušiť" - tlačidlo 0 (response 0) teraz keď už sme si spravili dialóg presunieme sa do public OnDialogResponse.. public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[]) { if(dialogid == ID) { if(response == 1) { if(listitem == 0) { ShowPlayerDialogEx(playerid,DIALOG_VYBRAT,DIALOG_STYLE_INPUT,"Vybrať peniaze","Napíš koľko chceš vybrať","Vybrať","Zrušiť"); } else if(listitem == 1) { ShowPlayerDialogEx(playerid,DIALOG_VLOZIT,DIALOG_STYLE_INPUT,"Vložiť peniaze","Napíš koľko chceš vložiť","Vložiť","Zrušiť"); } else if(listitem == 2) { new string[128]; format(string,128,"Na tvojom účte je %d $",BankMoney[playerid]); ShowPlayerDialogEx(playerid,DIALOG_STAV,DIALOG_STYLE_MSGBOX,"Stav účtu",string,"OK",""); } } } if(dialogid == DIALOG_VYBRAT) { if(response == 1) { if(BankMoney[playerid] < strval(inputtext)) return SendClientMessage(playerid,-1,"Nemáš toľko na účte"); if(!IsNumeric(inputtext)) return SendClientMessage(playerid,-1,"Musíš zadať číselnú hodnotu !"); BankMoney[playerid]-=strval(inputtext); GivePlayerMoney(playerid,strval(inputtext)); } } if(dialogid == DIALOG_VLOZIT) { if(response == 1) { if(strval(inputtext) > GetPlayerMoney(playerid)) return SendClientMessage(playerid,-1,"Zle zadaná čiastka !"); if(!IsNumeric(inputtext)) return SendClientMessage(playerid,-1,"Musíš zadať číselnú hodnotu !"); BankMoney[playerid]+=strval(inputtext); GivePlayerMoney(playerid,-strval(inputtext)); } } return 1; } Funkcie ktoré nemusia byť nováčikom jasné: - strval(string) - Funkcia ktorá premieňa na čísla.. Neviem ako to mám presne popísať.. - format : - string - premena stringu (new string[128]) - 128 - Veľkosť poľa ktorá bola nadefinovaná v stringu - format - Vlastne sa používa na zobrazenie hodnoty ktorá je ukrytá v premene.. - argumenty - Vlastne tak ako my sme mali mali sme %d tj celé čislo a chceli sme vedieť koľko má dolárov tak sme do argumenta dali BankMoney[playerid].. Keby ste tomu stále nerozumeli tak si to pozrite tu http://wiki.sa-mp.com/wiki/Format - GivePlayerMoney - funkcia pomocou ktorej pripočitáme / odpočitáme hráčovi peniaze.. - playerid, čiastka, tj napr GivePlayerMoney(playerid,4000); pripočíta hráčovi 4000 $.. Všetko ostatné ako je dialogid response atď nejdem vysvetlovať.. Jak neviete robiť s dialógmi tu je nato podrobný tutoriál http://pawno.cz/topi...-vsetko-o-nich/ Niekde do módu si vložte tento stock ale nie do publicu !! stock IsNumeric(const string[]) { new length=strlen(string); if (length==0) return false; for (new i = 0; i < length; i++) { if ((string[i] > '9' || string[i] < '0' && string[i]!='-' && string[i]!='+')|| (string[i]=='-' && i!=0)|| (string[i]=='+' && i!=0)) return false; } if (length==1 && (string[0]=='-' || string[0]=='+')) return false; return true; } a ešte tento .. Použil som ShowPlayerDialogEx kvôli tomu aby vám nepreskakovali kolonky.. Hore do módu : new bool:ShowedPlayerDialog[MAX_PLAYERS]; Niekde do módu nie do publicu ! stock ShowPlayerDialogEx(playerid, id, style, lis[], mess[], button1[], button2[]) { if(ShowedPlayerDialog[playerid] == true) return false; ShowPlayerDialog(playerid, id, style, lis, mess, button1, button2); ShowedPlayerDialog[playerid] = true; return true; } Do OnDialogResponse pod prvú "{" ShowedPlayerDialog[playerid]=false; Ukladanie : Do OnPlayerConnect: new cesta[50]; format(cesta,50, "/Banky/%s.sav", PlayerName(playerid)); BankMoney[playerid] = dini_Int(cesta, "banka"); Do OnPlayerDisconnect: new cesta[50]; format(cesta, 50, "/Banky/%s.sav", PlayerName(playerid)); if(!dini_Exists(cesta)) { dini_Create(cesta); } else { dini_IntSet(cesta, "banka", BankMoney[playerid]); } stock PlayerName.. : stock PlayerName(playerid) { new name[128]; GetPlayerName(playerid, name, 128); return name; } Na dini tu dával mattsy tutoriál takže to popisovať nemusím.. // Dúfam že sa to bude všetký páčiť a najmä tým ktorý nechceli aby som tento tutoriál spravil .. P.S Nekopírujte ale naučte sa to Jak sa chcete niečo spýtať alebo vám to bolo málo objasnené napíšte mi na skype tomas.spanik1 !
  17. Dobrý deň.. Prinášam vám sem podrobný tutoriál na tachometer.. Tento krát si dám vážne záležať tak dúfam že sa vám to bude páčiť.. Takže ideme na to.. Ako prvé by sme si mali stiahnuť TextDrawEditor By Zamaroth http://forum.sa-mp.c...d.php?p=2320034 .. Pripojíme sa na server a napíšeme /text .. Spravíme si grafický návrh a dáme 'Export Project', Do scriptfiles nám vytvorí súbor s názov aký ste si zadali keď ste začali robiť projekt.. Otvoríme súbor a všetko odtiaľ prekopírujeme do OnPlayerConnect + zmeníme new Text:Textdraw0; atď na new Text:Premena[Počet Textdrawov][MAX_PLAYERS]//Dalo by sa to aj inak ale toto je najlahšie a zabere to najmenej riadkov Zabudol som vám povedať že keď zmažete premeny new Text:Textdraw0; a tak ďalej stačí 1 premena ktoré je uvedená nižšie .. Ten string sa ukladá do toho čísla 9.. Keby ste nepochopili napíšte do komentu Napríklad: Máme 8 Textdrawov tak dáme si new Text:Premena[9][MAX_PLAYERS];// 9 pretože sa počíta aj 0 takže 0,1,2,3,4,5,6,7,8 = 9 v súbore budeme mať nejaký takýto script Textdraw0 = TextDrawCreate(495.000000, 359.000000, "TEXT"); TextDrawBackgroundColor(Textdraw0, 255); TextDrawFont(Textdraw0, 2); TextDrawLetterSize(Textdraw0, 0.219999, 1.000000); TextDrawColor(Textdraw0, -1); TextDrawSetOutline(Textdraw0, 1); TextDrawSetProportional(Textdraw0, 1); TextDrawUseBox(Textdraw0, 1); TextDrawBoxColor(Textdraw0, -1936945921); TextDrawTextSize(Textdraw0, 605.000000, 23.000000); a my ho zmeníme na toto Premena[0][playerid] = TextDrawCreate(495.000000, 359.000000, "TEXT"); TextDrawBackgroundColor(Premena[0][playerid], 255); TextDrawFont(Premena[0][playerid], 2); TextDrawLetterSize(Premena[0][playerid], 0.219999, 1.000000); TextDrawColor(Premena[0][playerid], -1); TextDrawSetOutline(Premena[0][playerid], 1); TextDrawSetProportional(Premena[0][playerid], 1); TextDrawUseBox(Premena[0][playerid], 1); TextDrawBoxColor(Premena[0][playerid], -1936945921); TextDrawTextSize(Premena[0][playerid], 605.000000, 23.000000); Tak a keď si spravíme kompletný grafický návrh tachometra + prerobíme premeny na hentake a hodíme to do OnPlayerconnect tak začneme robiť script aby nám to šlapalo a aktualizovalo sa to takže: Hore do módu si hodíme: forward SecondTimer();//Naforwardujeme si public SecondTimer() do OnGameModeInit/OnFilterScriptInit si dáme: SetTimer("SecondTimer",1000,1);// vytvoríme TIMER 1 sekundový a teraz.. public SecondTimer() { for(new i; i<MAX_PLAYERS; i++)// Vytvoríme si cyklus.. { if(IsPlayerInAnyVehicle(i) && IsPlayerConnected(i) && GetPlayerVehicleID(i) != 481 && GetPlayerVehicleID(i) != 509 && GetPlayerVehicleID(i) != 510)// toto je podmienka že ak je hráč v aute a jak není na bycikloch { new str[128];// Vytvoríme premenu new str1[128];// Vytvoríme premenu new str2[128];// Vytvoríme premenu new Float:VHP;// Táto premena slúži na zistenie HP vozidla (Samozrejme že funkciou GetVehicleHealth) GetVehicleHealth(GetPlayerVehicleID(i),Float:VHP);// Zistíme HP Vozidla format(str,128,"%s",VehName[GetVehicleModel(GetPlayerVehicleID(i))-400]);//Naformátujeme si názov vozidla[/size] format(str1,128,"%.1f %%",VHP/10);//toto je formát kde pracujeme s tým HP Vozidla.. Naformatujeme si ho pomocou stringu %.1f a tie %% za tým znamenajú aby tam za tým bolo percento.. VHP sme vydelili 10 pretože normálny HP vozidla je 1000.0 pokiaľ nechcete také veľké čislo stačí dať len /10 format(str2,128,"%d KM/H %d MP/H",GetVehicleSpeed(i,true),GetVehicleSpeed(i,false));//Tento formát slúži k rýchlosti vozidla.. vo funkcií GetVehicleSpeed je true KM/H a false MP/H TextDrawSetString(Premena[čislo textdrawu][i],str);//Vložíme string do textdrawu TextDrawSetString(Premena[čislo textdrawu][i],str1);//Vložíme string do textdrawu TextDrawSetString(Premena[čislo textdrawu][i],str2);//Vložíme string do textdrawu } } return 1; } ešte by som zabudol.. Hore do módu si vložte : new VehName[][] = { "Landstalker", "Bravura", "Buffalo", "Linerunner", "Perrenial", "Sentinel", "Dumper", "Firetruck", "Trashmaster", "Stretch", "Manana", "Infernus", "Voodoo", "Pony", "Mule", "Cheetah", "Ambulance", "Leviathan", "Moonbeam", "Esperanto", "Taxi", "Washington", "Bobcat", "Whoopee", "BF Injection", "Hunter", "Premier", "Enforcer", "Securicar", "Banshee", "Predator", "Autobus", "Rhino", "Barracks", "Hotknife", "Trailer", "Previon", "Coach", "Cabbie", "Stallion", "Rumpo", "RC Bandit", "Romero", "Packer", "Monster", "Admiral", "Squalo", "Seasparrow", "Pizzaboy", "Tramvaj", "Trailer", "Turismo", "Speeder", "Reefer", "Tropic", "Flatbed", "Yankee", "Caddy", "Solair", "Berkley's RC Van", "Skimmer", "PCJ-600", "Faggio", "Freeway", "RC Baron", "RC Raider", "Glendale", "Oceanic","Sanchez", "Sparrow", "Patriot", "Quad", "Coastguard", "Dinghy", "Hermes", "Sabre", "Rustler", "ZR-350", "Walton", "Regina", "Comet", "BMX", "Burrito", "Camper", "Marquis", "Baggage", "Dozer", "Maverick", "News Chopper", "Rancher", "FBI Rancher", "Virgo", "Greenwood", "Jetmax", "Hotring", "Sandking", "Blista Compact", "Policejni Vrtulnik", "Boxvillde", "Benson", "Mesa", "RC Goblin", "Hotring Racer A", "Hotring Racer B", "Bloodring Banger", "Rancher", "Super GT", "Elegant", "Journey", "Kolo", "Mountain Bike", "Beagle", "Cropduster", "Stunt", "Tanker", "Roadtrain", "Nebula", "Majestic", "Buccaneer", "Shamal", "Hydra", "FCR-900", "NRG-500", "HPV1000", "Cement Truck", "Tow Truck", "Fortune", "Cadrona", "FBI Truck", "Willard", "Forklift", "Tractor", "Combine", "Feltzer", "Remington", "Slamvan", "Blade", "Freight", "Streak", "Vortex", "Vincent", "Bullet", "Clover", "Sadler", "Firetruck", "Hustler", "Intruder", "Primo", "Cargobob", "Tampa", "Sunrise", "Merit", "Utility", "Nevada", "Yosemite", "Windsor", "Monster", "Monster", "Uranus", "Jester", "Sultan", "Stratium", "Elegy", "Raindance", "RC Tiger", "Flash", "Tahoma", "Savanna", "Bandito", "Freight Flat", "Streak Carriage", "Kart", "Mower", "Dune", "Sweeper", "Broadway", "Tornado", "AT-400", "DFT-30", "Huntley", "Stafford", "BF-400", "News Van", "Tug", "Trailer", "Emperor", "Wayfarer", "Euros", "Hotdog", "Club", "Freight Box", "Trailer", "Andromada", "Dodo", "RC Cam", "Launch", "Policie LS", "Policie SF", "Policie LV", "Police Ranger", "Picador", "S.W.A.T", "Alpha", "Phoenix", "Glendale", "Sadler", "Luggage", "Luggage", "Stairs", "Boxville", "Tiller", "Utility Trailer" }; a ešte si vložte do módu/FS mimo public tento stock stock GetVehicleSpeed(playerid,bool:kmh)// Autora neviem { new Float:Vx,Float:Vy,Float:Vz,Float:rtn; if(IsPlayerInAnyVehicle(playerid)) GetVehicleVelocity(GetPlayerVehicleID(playerid),Vx,Vy,Vz); else GetPlayerVelocity(playerid,Vx,Vy,Vz); rtn = floatsqroot(floatabs(floatpower(Vx + Vy + Vz,2))); return kmh?floatround(rtn * 100 * 1.61):floatround(rtn * 100); } //: Zabudol som vám napísať že treba zobraziť/skryť : public OnPlayerStateChange(playerid, newstate, oldstate) { if(newstate == PLAYER_STATE_DRIVER || newstate == PLAYER_STATE_PASSENGER) { TextDrawShowForPlayer(playerid, Tachometer[0][playerid]); } else if(oldstate == PLAYER_STATE_DRIVER || oldstate == PLAYER_STATE_PASSENGER) { TextDrawHideForPlayer(playerid, Tachometer[0][playerid]); } return 1; } Jak by ste našli nejakú chybu napíšte !!!
  18. Zdravím,další toturial ale asi někdo už to určitě udělal ale skuste si to také přečíst Děkuju za přečtení .... 1. Uložení pozice Nejdříve potřebujeme vědět kam chceme hráče warpnout, takže spustíme si server nebo se na nějaký připojíme a stoupneme si tam kde chceme aby se hráč warpnul a napíšeme do chatu /save a tím se nám uloží pozice. 2. Souřadnice Ve hře jsou 3 osy, osa X, Y a Z Osa X a Y je směr doleva, doprava, dopředu a dozadu Osa Z je nahoru dolu A pak je ještě úhel, tj také osa Z, ale rotace Takže spustíme si pawno a vytvoříme nový příkaz jaký chceme, dejme tomu /warp a teď potřebujeme souřadnice. Takže pokud máte sa-mp verzi 0.3e a vyšší tak se vám veškeré uložené pozice ukládají do textového souboru ve složce Windows Xp C:/Documents and Settings//Dokumenty/GTA SA User Files/SAMP Windows 7 - Vista C:/Users//Dokumenty/GTA SA User Files/SAMP A to v souboru s názvem savedpositions.txt, ten otevřeme a jukneme co v něm je. Uvedu příklad s mímy souřadnicemi. AddPlayerClass(0,1117.9332,-2036.9949,78.7500,266.7980,0,0,0,0,0,0); AddPlayerClass - Toho si nevšímejte to je funkce, ta nás teď nezajímá 0 - ID skinu 1117.9332 - Osa X -2036.9949 - Osa Y 78.7500 - Osa Z78 266.7980 - Úhel pohledu 3. Warp Takže nyní si do příkazu vytvoříme funkci SetPlayerPos a zadáme souřádky X, Y a Z (NE ÚHEL!), takže po úpravě by náš příkaz měl vypadat asi takto : SetPlayerPos(playerid,1117.9332,-2036.9949,78.7500); SetPlayerPos - Funkce, změna pozice hráče playerid - Jakého hráče warpneme, playerid znamená toho který zadal příkaz (vyvolal funkci) 1117.9332 - Osa X 2036.9949 - Osa Y 78.7500 - Osa Z Nyní jsme změnili pozici hráče, teď mu změníme úhel, rotaci (nebo-li úhel pohledu). Pod nebo nad SetPlayerPos si přidáme funkci SetPlayerFacingAngle, takže by ve finále měl náš příkaz vypadat asi takto : SetPlayerFacingAngle(playerid,266.7980); SetPlayerFacingAngle -Funkce, změna úhlu pohledu hráče playerid - Hráč, kterému budeme měnit úhel, v tomto případě to bude ten zadávající příkaz 266.7980 - Úhel pohledu (viz. nahoře 2. Souřadnice) Tak a je to Změnili jsme pozici a úhel pohledu hráči, čímž jsme ho jak někteří říkají warpnuli. Děkuju za hodnocení a komentáře - Pokud sem ti pomohl +rep,ale i tak jen nemusíte dávat ... Návod označen jako platný Ten to návod byl označen jako platný.Návod může být kdykoli označen jako nevhodný či neplatný
  19. Zdravím, věnujete se mapování do hry SA:MP ? Určitě využíváte MTA, a proč ? Jako vždy se vytvoří jedna věc a všichni se ji stále drží ono se těžko opouští něco na co jste zvyklí ale když ta druhá možnost má spoustu dalších vylepšení tak proč nepoužívat ji ? O čem to píši ? Píši o SA-MP Map Construction. Tento program je podle mého nejlepší pro práci s objekty, obsahuje základní tak i různé další funkce které vám práci zpříjemní a zjednodušení... Pár výhod: - Přesné usazování objektů - Optimalizovanost (Renderování mapy je rychlé a nezatěžuje počítač, já osobně mám v editoru 95FPS a to používám kalkulačku) - Možnost přidávat si oblíbené objekty (Snadný přístup k nim) - Výběr předmětů (Nemusíte hledat na webových stránkách, seznam objektů/skinů/vozidel je zabudován již v editoru) - Podpora všech verzí (editor čte ze SA:MP souborů) - Možnost odstraňovat základní objekty - Výběr možnosti výstupního kódu (Již nemusíte používat konvertor pro používání streamerů vše si nastavíte uvnitř editoru) - Velice jednoduché ovládání na které si hned zvyknete (Kliknete na mapu, pak na insert object vyberete si objekt nebo rovnou vložíte ID objektu a objekt je na světě pak už si ho jen přesně nasadíte tam kam potřebujete) - Spousta dalších... Nevýhody: - Funguje pouze pro SA:MP (Nepodporuje MTA) Odkaz ke stažení: http://www.mathpudding.com/topsecretsamp/editor.rar Ukázka jedné z mnoho možností: (collision mode) Měj se MTA editore
  20. Hashiri

    návod Linux rada od lajka

    Zdravím, Linux je OS které se nedá srovnávat s Windowsem jaké má výhody ? - bezpečnost - spousta distribucí - ovladatelnost (Dalo by se říct že si celý OS můžete přenastavit podle sebe) - výkonný (Minimální vytížení) A zápory ? - Nerozjede Windows Aplikace, hry To je důvod proč zde píši většina lidí by ráda přešla na Linux ale když si pomyslí že nebudou moc spouštět své oblíbené programy či hrát hry již je Linux jen něco co uživatel nikdy nepoužije. Málo kdo ví že tomu tak není... Aplikace/hry dělané pro Windows se dají zcela bez problémů spustit na jakékoliv(pokud se nejedná o nějaký pokus Dr.Dutošvarce). Samozřejmě že se to nedá se základním Linuxem, potřebujete k tomu jeden balík který nese název Wine. "Wine je software vytvářející aplikační rozhraní, které umožňuje chod aplikací pro Microsoft Windows pod jinými (převážně unixovými) operačními systémy. Použitelnost se liší v závislosti na povaze software, nejlepší výsledky lze očekávat u aplikací psaných pro Windows 95 a novější. Tedy 98, 2000, XP, Vista, Windows 7 a Windows 8." Já osobně nechápu jak to že se v CZ/SK tento balík trochu více nerozšířil, všichni(až na pár výjimek) si myslí že Linux znamená konec hraní klasických a oblíbených her. Odkaz ke stažení: http://www.winehq.org/download/ Poslední zápor Linuxu zmizel... Přeji hodně štěstí s Linuxama.
  21. Fr0st

    návod Jako vytvoriť banku [EASY]

    Dobrý deň .. Prinášam vám sem po dlhej dobe tutoriál a to o vytvorení banky.. takže začnem týmto: V banke sa všetko točí okolo premeny pre hráča.. Vytvoríme si premenu hore do módu napríklad new BankMoney[MAX_PLAYERS]; a teraz budeme s ňou len pracovať .. takže Vytvoríme si pickup new BankMoney[MAX_PLAYERS];// new pre bankové peniaze new banka1;// new pre pickup banka1 = CreatePickup(ID,1,X,Y,Z,VW);// Vytvorí sa pickup na súradniciach ktoré si zadáte.. teraz public OnPlayerPickupPickup(playerid,pickupid) { if(pickupid == banka1) { ShowPlayerDialog(playerid,id,DIALOG_STYLE_LIST,"banka","Vybrať\nvložiť","Vybrať","Zrušiť");//všeobecný dialog kde si vyberie či chce vložiť/vybrať } return 1; } public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[]) { if(dialogid == id) { if(response == 1) { if(listitem == 0) { ShowPlayerDialog(playerid,id1,DIALOG_STYLE_INPUT,"banka","napis koľko chceš vybrať","vybrať","zrušiť");//dialog pre vybratie } else if(listitem == 1) { ShowPlayerDialog(playerid,id2,DIALOG_STYLE_INPUT,"banka","napis koľko chceš vložiť","vybrať","zrušiť");//dialog pre vloženie } } } if(dialogid == id1) { if(response == 1) { BankMoney[playerid]=-inputtext;//odpočítame z banky GivePlayerMoney(playerid,inputtext);// pripočítame peniaze } } if(dialogid == id2) { if(response == 1) { BankMoney[playerid]=+inputtext;//Pripočítame do banky GivePlayerMoney(playerid,-inputtext);//odpočítame peniaze } } return 1; } pre zistenie peňazí použijeme funkciu GetPlayerBankMoney.. Musíme si ju vytvoriť stock GetPlayerBankMoney(playerid) { return BankMoney[playerid];// Vrátime premenu pre peniaze v banke } No a to je všetko priatelia Písal som to teraz z hlavy takže ak nájdete nejakú chybu tak mi napíšte sem alebo do PMky .. // Toto je holá verzia to znamená že keď budete do inputu písať písmena zobere vám to.. Na to existuje funkcia IsNumeric.. Keby ste mali nejaké otázky pýtajte sa ale nezabúdajte na "PS" ktorý som napísal PS: NEHLASTE MI TU ERRORY ! JE TO TUTORIAL NIE SCRIPT !
  22. Zdravím, máte webové stránky a snažíte se nějak nalákat návštěvníky ? Myslím si že vám hned došlo že nejlepší bude se dostat na vyšší pozice ve vyhledávačích. Díky tomu jste se dozvěděli o SEO a co musíte udělat aby jste se dostaly ve vyhledávačích výše, optimalizovanost klíčových slov, validace kódu, reklama na sociálních sítí je sice způsob jak se trochu posunou ale největší váhu mají zpětné odkazy, čím více a čím kvalitnější odkazy na váš web ukazují tím máte větší hodnocení (Ranky) a dostáváte se výše ve vyhledávačích. Jak získat zpětné odkazy ? (Zvýšit svůj Rank) Klasicky je výměna odkazů či si u nějaké webové prezentace zakoupit reklamu sice to funguje ale pokud jsou ty weby kde si děláte reklamu stejně nebo podobně staré a neoptimalizované jako vy (Myslím tím PageRank 0) tak potřebujete zhruba 111 takových zpětných odkazů, a to vám pouze navýší PageRank na 1 (Nezaručuji, je zde i mnoho okolních faktorů), tak jak si zadělat na reklamu ? Nyní již jdu k jádru věci jedná se o jednoduchý a bohužel né moc známý projekt "Odkazujeme" jedná se o webovou stránku na kterou si zaregistrujete vaši doménu, na vaše stránky si umístíte patřičný kód, a tím poskytnete zpětný odkaz ostatním lidem, to samé když udělá někdo jiný tak získáte zpětný odkaz i vy, je to jednoduchý ale velice účinný systém jak si získat hromadu zpětných odkazů. Samozřejmě to není tak snadné, pro to aby na vás někdo odkazoval ho nejdříve musíte "Naverbovat", ano myslím tím refferal avšak jde vlastně o propojení tudíž když pošlete vašemu společníkovy odkaz a on se pod ním registruje tak získáte zpětný odkaz a získá ho i on, a později když on zase "někoho naverbuje" řekněme 5 lidí tak vy již máte 6 zpětných odkazů, a nyní vám zde mám taková pěkná čísla: Sám získáte 5 webmasterů – máte 5 zpětných odkazů na Váš web na pozici 2 Každý z těchto 5 webmasterů získá také 5 webmasterů – máte 25 zpětných odkazů na Váš web na pozici 3 Každý z těchto 25 webmasterů získá také 5 webmasterů – máte 125 odkazů zpětných odkazů na Váš web na pozici 4 Každý z těchto 125 webmasterů získá 5 webmasterů – máte 625 odkazů na pozici 5 Každý z těchto 625 webmasterů získá 5 webmasterů – máte 3125 odkazů na pozici 6 Každý z těchto 3125 webmasterů získá 5 webmasterů – máte 15625 odkazů na pozici 7 Sečtením těchto čísel se dostaneme ke konečnému číslu 19 525 odkazů! (Zdroj http://www.odkazujeme.cz) Samozřejmě je to ideální situace při které by každý přivedl pět lidí ale i kdyby ne a každý přivedl jen 2 tak pořád zde máme hromadu zpětných odkazů. Budování zpětných odkazů je nejdůležitější ale taktéž nejnáročnější přeci jen uploadnout video na youtube či vytvořit stránku na facebooku může každý a okamžitě, ale vytvořit si kvalitní síť zpětných odkazů je těžké a hlavně časově náročné díky tomuto projektu to dokážete skoro hned Můžete si zde vytvořit zdarma zápis v katalogu což také není k zahození Pokud vám tento projekt zajímá tak neváhejte: http://www.odkazujeme.cz Pokud nechcete začínat od 0 a mít hned zpětný odkaz tak můžete využít tento "ref" link: http://www.odkazujeme.cz/index.php?myfriend=2760 (Myslím si že není potřeba zmiňovat že je to registrace pode mně ) Přeji vám příjemný zbytek dne. PS: Né že vás napadne podvádět přes "nofollow". (Web to pozná )
  23. Zdravím, měl jsem obrovské problémy se "SelectTextDraw". V tuhle chvílto ovládám bez problému. Děkuji i QWERovi, za vysvětlení, ale hlavně, jak to jde vlastně udělat. Osnova 1.- Vytvoření TextDrawu 2.- Nastavení X 3.- Nastavení Y 4.- Click 5.- End 1. Vytvoření TextDrawu - Přes jakýkoliv TextDraw Editor vytvořte TextDraw. Jakékoliv barvy, jakoukoliv velikost, s či bez Boxu - je to jedno. - Základ Kliknutí na TextDrawu je funkce: "TextDrawTextSize(Text:textdrawid,Float:X,Float:Y);" !TIP! Doporučuji tento TextDrawEditor: http://forum.sa-mp.c...ad.php?t=376758 2. Nastavení X - Souřadnice "X" u "TextDrawTextSize" nastavuje, kam až můžete kliknout - do pravé strany ! - Vytvořte si další TextDraw s textem: "I" a nejďte na pravou stranu textdrawu. Souřadnici X - "I" si někam zapište.. 3. Nastavení Y - Souřadnice "Y" u "TextDrawTextSize" nastavuje, kam až můžete kliknout - dolů. - Doporučuji nastavit 20, pokud je průměrné velikosti - Normální TextDraw. Samozřejmě musíte testovat a zmenšovat či zvětšovat. 4. Click - Pro barvu najetí na textdraw existuje funkce: SelectTextDraw(playerd,color:hover); - Tu vložte do příkazu/funkce či publicu.. - Na kliknutí nám slouží "public OnPlayerClickTextDraw(playerid,Text:clickedid){}" s "return 1;" Příklad: public OnPlayerClickTextDraw(playerid,Text:clickedid) { if(clickedid == Textdraw0) { SendClientMessage(playerid,0xFF0000FF,"Klikl jste na textdraw: Textdraw 01"); } return 1; } --- Vememe to postupně ( podle barev ): public OnPlayerClickTextDraw(playerid,Text:clickedid) - Public, který spouští Kliknutí. if - Podmínka ( pokud ). -- Pokud se rovná ID Textdrawu Textdraw0, tak se stane to a to clickedid == Textdraw0 - ID textdrawu, které si zadáte ( zde příklad: Textdraw0 ). SendClientMessage(playerid,0xFF0000FF,"Klikl jste na textdraw: Textdraw 01"); - Funkce pro odeslání zprávy.. 5. End Doufám, že to pomohlo. Díky předem za hodnocení a pokud tam jsou chyby, napište - editnu. + Soubor ke stažení. ( Příklad ) TextDraw_Tutorial.zip
  24. Guest

    návod Ako vytvoriť (úspešný) server.

    Návod ako vytvoriť (úspešný) Server. Zdravím vás. Dovolil som si napísať návod, ako na Server. V tomto návode ide o to, aby ste sa dozvedeli ako svoj server urobiť úspešným. Úspech nie je zaručený. Pokiaľ chcete úspešný Server, musíte doň vložiť veľa námahy a práce. Takže, mohli by sme začať. Asi najzakladnejšie veci sa týkajú kódu a módu. Vždy, skôr než začnete niečo scriptiť, musíte vedieť čo vlastne idete robiť. Odporúčam otvoriť si Notepad a zaznačiť si o aký typ módu ide, budúce meno serveru, názov módu atď. Takže skôr než začnete niečo robiť, poriadne si premyslite všetko, čo vám bude treba. Neodporúčam robiť módy RP, ktorých je podľa môjho vkusu veľa. Ale pokiaľ prinesiete niečo nové, nech sa páči. Dalšia vec je Webstránka. Každý poriadný server by mal vlastniť Webstránku, či už je to Wordpress, HTML alebo PHP, stránka jednoducho nesmie chýbať. Na stránke si vaši hráči môžu poprezerať mnoho informácii, napr. o Serveri, o Facebooku vašého Serveru, novinky, status Serveru a viac. Ale pozor. Nie je dôležite webstránku vlasniť, ale dať jej aj poriadný vzhľad. Pokiaľ sa nevyznáte vo vytvárani vzhľadov, kontaktuje niekoho, kto má s tým skúsenosti. Taktiež by ste mali písať bez chýb aby ste vyzerali profesionálne. Webstránka je veľké plus pre váš server a podľa mňa je veľmi dôležita. Fórum je optimálne, i keď ja ho používam. Reklama. Keď založíte nový server, pravdepodobne na ňom nebude hrať nikto iný, len vy a vaši kamaráti. To je zle. Potrebujete hráčov, ktorí budú na serveri aktívne hrať a podporovať váš server. Povedzme si, server bez hráčov nie je server. Hráčov získate napr. reklamou na webstránkach ako je Pawno.cz alebo SA-MP.com. Taktiež môžete napr. použiť stránky ako je Game-Monitor.com. Môžete taktiež natočiť rôzne videá, alebo môžete hodiť pár obrázkov z vášho Servera na socialné siete, YouTube.com atď. Admin tym by sa mal skladať z hráčov ktorí majú skúsenosti s hráčmi, príkazmy a hlavne hrou. Admin by mal byť milý ku svojím hráčom, ale taktiež musí hráčov ukázať, že pánom je tu on. Musí ovládať Admin príkazy, aby v rôznych situáciach vedel využiť správny príkaz. Koniec. Toto je asi všetko. Podľa tohto návodu sa riadim aj ja, a myslím že je celkom užitočný pre ľudí, ktorí si chcú založiť vlastný Server. Úspech nie je zaručený, ale aspoň trochu by mal tento návod niekomu pomôcť. Ďakujem za váš čas
  25. Zdravím, mám tu pro vás takový lehčí návod na úplně primitivní script. Co budeme potřebovat: 1) Pár obrázků na pozadí webu 2) 5 min času 3) web Ok takže začneme. Jako první si vytvoříme soubor.php Dále jej otevřeme, a napíšeme toto: <?php ?> Tak to by byl základ našeho scriptu. Takže nyní budeme potřebovat "rand" a promněnou do které to zapíšeme. <?php $bg = rand(0,5); ?> $bg = naše promněná rand= funkce, která nám náhodně vybere 1 "volbu" (0,5) = rozmezí randomu tudíž 0 - 5 Tak, dále použijeme funkci "switch". <?php $bg = rand(0,5); switch($bg) ?> switch = zvolí "volbu", kterou zapsal random do promněné Ták a teď stačí, aby bylo z čeho vybírat. <?php $bg = rand(0,5); switch($bg){ case 0: $img= "1.png"; break; case 1: $img= "2.png"; break; case 2: $img= "3.png"; break; case 3: $img= "4.png"; break; case 4: $img= "5.png"; break; case 5: $img= "6.png"; break; default: $img= "1.png"; break; } ?> case = "volba" break = zastaví case default = defaultně tato "volba"> Ok a teď stačí kód, kterým zobrazíme naší "volbu" (obrázek). Jsou 2 možnosti jak to zapsat. 1) <?php echo "<body background='$img'>"; ?> 2) <body background='<?php echo $img; ?>'> Není to nic těžkého, ale je pěkné, když na stránce nevidíte pouze jedno pozadí --> Děkuji za pozornost, Domm.
×
×
  • Create New...