Jump to content

Search the Community

Showing results for tags 'script'.

  • 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. Zdravím, niektorí ste isto postrehlii že s pawnom som už skončil, no musím spraviť výnimku . Potrebujem rýchlo desi splašiť 20€, zrobím za to hocijaký script/jednoduchý mód, pomôžem niečo dorobiť, môžem niečo v pawne naučiť... Ak by niekto mal záujem, píšte mi na skype LukasLyrics (Uveďte do žiadosti o priateľstvo aj dôvod!!! Pretože všetky žiadosti zamietam, tak nech sa nestane že to spravím aj u vás) Upozorňujem že platbu príjmam len v hotovosti, žiadne SMS a podobné nezmysly, to znamená že buď prevodom na bankový účet alebo cez poštu v hotovosti.
  2. JUST GANG SYSTEM v0.1BETA Nejobsáhlejší a nejmodernější gangsystem... JEDNODUCHÝ A PŘEHLEDNÝ EDITOR OBSÁHLÝ SEZNAM MOŽNOSTÍ PRO HRÁČE V GANGU PŘEHLEDNÉ STATISTIKY HRÁČE V GANGU PŘEHLEDNÝ A JEDNODUCHÝ OBCHOD S VOZIDLY DO GANGU PŘEHLEDNÝ SEZNAM VOZIDEL GANGU UKÁZKA JAK ONLINE ČLENŮ GANGU TAK I OFFLINE ČLENŮ GANGU UŽITEČNÝ A PŘEHLEDNÝ SEZNAM VŠECH GANGŮ NA SERVERU MOŽNOST ZMĚNIT RANK I S HEX KÓDY PŘEHLEDNÝ SEZNAM ZBRANÍ GANGU STEJNĚ JAKO JEJICH KOUPĚ A ZMĚNA MOŽNOST ZMĚNIT GANG SÍDLO VYPISOVÁNÍ TAG GANGU DO CHATU NĚKOLIK INFORMACÍ O SCRIPTU Gangy se přidávají in-game pomocí editoru. GS podporuje i možnost vytvářet gangy pro více administrátorů. Jakmile někdo otevře editor, zjistí volné gangid a pro dalšího administrátora zjistí jiné volné id a zůstává "využívané", dokud administrátor gang nevytvoří a nebo neodejde. Po vytvoření gangu v editoru se ukládá a vytváří(načítá) i po zapnutí serveru. V editoru musí administrátor přidat jméno gangu, tag, majitele a pozici. Cena, kasa a respekt lze mít na 0. Pozice v editoru se přidává způsobem, že zjistí aktuální pozici admina. Lze přidat i defaultního majitele aka Město, zapomocí mínusu. Ale pozor: Lze přidat majitele gangu(jméno hráče), ale zároveň dát gang na prodej! Gangy se ukládájí a načítájí zapomocí jejich id, nikoliv jejich jmén. Editor se u daného hráče uchovává dokud gang nevytvoří nebo neopustí server. Většina titulů v dialogu začíná nebo obsahuje jméno gangu, u kterého hráč momentálně je. Nelze přidat gang s jménem, který už existuje. Stejně jako u majitele, jestliže vlastní už nějaký gang. GS obsahuje 4 hodnoty pro každého člena a to Nováček, Člen, Zástupce a Vůdce. Do jednoho gangu lze pozvat pouze 1 hráče, dokud pozvání nepřijme nebo neodejde. Vůdce/Zástupce může upravovat údaje i offline členovi. Maximální možný počet peněz, které lze mít v gangu je 999 999 999$. V případě přesáhnutí se opět vrátí na totu hodnotu. Maximální možný počet respektu, úmrtí a zabití je 9999. V případě přesáhnutí se opět vrátí na tuto hodnotu. Do každého gangu lze zakoupit maximálně 10 vozidel. Každé vozidlo se přidává po zadání příkazu /gvehicle tak, že zjistí jeho pozici po zadání /gva. Jestliže vůdce/zástupce během přidávání vozidlo opustí, bude zničeno. Vozidlo lze pouze začit přidávat na pickupu gangu, a hráč má omezenou pozici na přidání. Lze zakoupit do gangu pouze určitě modely vozidel. GS obsahuje 5 základných kategorií aka slotů pro zbraně, a to Chladné zbraně, pistole, brokovnice, samopaly a těžké zbraně. Po založení gangu, gang nemá žádné zbraně. V obchodě se zakupují zbraně cenou za náboj. Maximální možný počet počet nábojů u každé zbraně v gangu je 99999. Každý člen gangu po spawnu obdrží učité zbraně a náboje. Pokud dojdou, člen dostane poslední zásoby. Respekt lze získat, ale i ztratit ze zabíjení s jinými členy gangů. Gang lze opustit jedině vyhozením z gangu. Až na vůdce. Nelze změnit výplatu Nováčkům a Vůdci. Takže jí vůdce ani nemůže vybrat. a mnohem více... OHLEDNĚ UKLÁDÁNÍ ÚDAJŮ scriptfiles/Gangy/ {id_gangu}.dat - veškeré informace ohledně gangu. {id_gangu}Members.dat- seznam všech členů v daném gangu. Užitečné kvůli jménům offline hráčů. scriptfiles/Gangy/Hraci/{jméno_hráče}.dat - standartní údaje hráče(jestli je v gangu, id gangu, údaje a tak dále). scriptfiles/Gangy/Zbrane/{id_gangu}.dat - seznam zbraní a jejich počet nábojů. scriptfiles/Gangy/Vozidla/{id_gangu}_{slot_id}.dat - informace o daném vozidle(pozice, model, gang a tak dále). SEZNAM PŘÍKAZŮ /gmenu Menu pro rcon administrátora. Zahrnuje vytvoření gangu a smazání gangu /gang Základní příkaz pro všechny hráče a členy gangů. Otevře dialog s možnostmi u daného pickupu gangu. Hráč samozřejmě musí být poblíž. /gangs Seznam gangů pro rcon administrátora. /ginvite Pozve hráče do vašeho gangu. /gyes Přijmout pozvání do gangu. /gno Odmítnout pozvání do gangu. /grleft Opustit gang sídlo. DALŠÍ INFORMACE A MOŽNOSTI ÚPRAVA GANG ÚDAJŮ Ukázka uložených údajů: 1 0 0 0 0 0 3000 5766000 3 3000 1000 0 0 2206.63 1231.45 10.82 GuS Scydo GangUSilnice 1 - Existence gangu. 0 - Gang id. 0 - Zda je gang na prodej. 0 - Cena gangu při prodeji. 0 - Počet zabití v gangu. 0 - Počet úmrtí v gangu. 3000 - Respekt gangu. 5766000 - Kasa gangu. 3 - Počet členů. 3000 - Výplata člena. 1000 - Výplata zástupce. 0 - ID interióru. 0 - Zda je majitelem Město. 2206.63 - X pozice pickupu. 1231.45 - Y pozice pickupu. 10.82 - Z pozice pickupu. GuS - Tag gangu. Scydo - Jméno vůdce gangu. GangUSilnice - Jméno gangu. ÚPRAVA ÚDAJŮ DANÉHO HRÁČE Ukázka uložených údajů: 1 0 3 350661 44 11 102 0 1 0 0 {FFA500}Střelec 1 - Pokud je hráč v gangu. 0 - ID gangu. 3 - Oprávnění člena. 350661 - Přispěl do gangu. 44 - Počet zabití. 11 - Počet úmrtí. 102 - Získaný respekt. 0 - Zda si může vybrat výplatu. 1 - Zda má člen vyp/zapnutý spawn u gangu. 0 - Zda má člen vyp/zapnuté zprávy gangu. 0 - Zda je hráč v interiéru. {FFA500}Střelec - Rank. ÚPRAVA ÚDAJŮ GANG VOZIDEL Ukázka uložených údajů: 0 1 432 0 0 2194.994 1234.298 10.703 266.3910 - ID gangu. 1 - Slot vozidla. 432 - Model vozidla. 0 - 1. ID barvy. 0 - 2. ID barvy. 2194.994 - X pozice pickupu. 1234.298 - Y pozice pickupu. 10.703 - Z pozice pickupu. 266.391 - A pozice pickupu. LZE PŘIDAT I VOJENSKÝ GANG Stačí, když přidáte vozidla a při úprave vozidel přepíšete všechny modely na vojenská vozidla. JAK ZMĚNIT VŮDCE GANGU 1. Změnit vůdce v hl. soubouru - První je potřeba změnit jméno vůdce souboru {id_gangid}.dat 2. Změnit jméno v seznamu členů - V souboru {id_gangu}Members.dat změnit první jméno. 3. Změnit údaji hráči - A nakonec změnit údaje v souboru hráče. DOWNLOAD INCLUDE i-zcmd http://forum.sa-mp.com/showthread.php?t=576114 A to je všechno. jgsystem https://pawno.cz/files/file/67-just-gangsystem/ ZÁVĚR Zatím jsem pracoval stylem "hlavně, že to funguje", takže nechť konečně začne hromadná optimalizace!
  3. Marwin37

    script AdminBot Osfald FULL

    AdminBot Osfald FULL Info: Autor: Marwin37 Verze: FULL Lokalizace: CZ & EN Popis: AdminBota Osfalda už asi všichni dobře znáte a pokud ne, tak je to script, který by měl zastupovat adminy na serveru. Po 3 a půl letech co jsem jak jsem zjistil vydal verzi 4.0, která byla slušně zabugovaná, je tu nová verze FULL, kterou jsem celou zkontroloval, aby se zbytečné bugy již nevyskytovali. Co je nového a) Nápad - Nový dialog, kterým můžete sdělit mě svůj nápad, přímo ve hře. Bugy - Proběhla oprava všemožných chyb (pokud nějakou najdete použijte Nápad) c) Také bylo přidáno jazykové rozšíření - Anglický jazyk. d) [bOT]Fredy - zatím ještě není spuštěn, ale díky inteligentnímu spouštěči nebudete muset nic stahovat jak bude k dispozici. e) Actor namísto nefunkčního NPC v hospodách f) ServerMonitor - zapíše do souboru na webu IP serveru, díky tomu budu moct navštívit a zkontrolovat jakýkoliv server s Osfaldem To jsou asi všechny novinky, které byli přidány do Osfalda A nejspíš to je i poslední verze Osfalda Odkaz na stažení http://www.solidfiles.com/d/51ba044563/ Osfald na Facebook https://www.facebook.com/AdminBot-Osfald-151118741588769
  4. PawnPlus 0.8 Stažení | Dokumentace Představuji vám svůj nový plugin, který z Pawnu udělá moderní programovací jazyk, v němž bude radost programovat pro SA-MP. Přidáním nových konstruktů a "typů" rozšiřuje sílu jazyka, ale zachovává a dokonce i navyšuje jednoduchost programování. Shrnutí hlavních funkcí Řetězce Všichni to známe – řetězec je pole znaků s pevnou maximální délkou, kterou vždy musíme znát, pokud chceme s řetězci cokoliv provést. Odteď už ne! PawnPlus přináší dynamickou alokaci řetězců, které lze spojovat, rozdělovat, porovnávat či jinak upravovat. Možná si říkáte, k čemu je to dobré, když funkce SA-MP (např. SendClientMessage) vyžadují předání řetězce jako pole, ale počkejte – jde to! Tento plugin umožní přetvořit jakoukoliv funkci SA-MP (i jiných pluginů) na variantu, která místo polí bere nové řetězce a funguje naprosto stejně. Asynchronní programování Nebojte, žádná vlákna či race-condition, ale lehké asynchronní programování pomocí úloh, jehož vzorem je jazyk C#. Pomocí nového příkazu jazyka lze pozastavit průběh stávající funkce a odložit jeho vykonávání na jakoukoliv jinou dobu a mezitím spustit třeba něco jiného. Již žádné složité používání SetTimerEx, s tímto pluginem lze prostě ve funkci čekat, než nastane žádaná situace, a pak pokračovat. "Reflexe" Pawn sice není natolik pokročilý, aby umožňoval jakoukoliv reflexi, ale v tomto pluginu naleznete i pár funkcí, které umožní např. zavolat nativní funkci pomocí jejího jména jako řetězce, či navázání libovolné funkce na konkrétní událost serveru. Příklady Vytvoření, spojení a předání řetězců #include "PawnPlus.inc" //Původní SendClientMessageToAll(color, const message[]) upravíme tak, že všechny "const x[]" nahradíme "AmxString:x". native SendClientMessageToAllStr(color, AmxString:message) = SendClientMessageToAll; //Pomocná funkce vytvářející řetězec (jehož maximální velikost známe). stock String:GetPlayerNameStr(playerid) { new name[MAX_PLAYER_NAME]; GetPlayerName(playerid, name, sizeof(name)); return str_new(name); } public OnPlayerConnect(playerid) { //Řetězce jsou reprezentované proměnnými se značkou "String". Lze je spojovat pomocí operátoru +. Funkce str_val umí převést libovolnou hodnotu na řetězec. new String:name = GetPlayerNameStr(playerid); new String:msg = str_new("Hráč ")+name+str_new(" (")+str_val(playerid)+str_new(") se připojil na server."); //Provede se zavolání funkce SendClientMessageToAll, jen místo druhého parametru se vezme dynamický řetězec namísto pole znaků. SendClientMessageToAllStr(-1, msg); } Rozdělení a porovnání řetězce //Obdobným způsobem upravena funkce SendClientMessage. native SendClientMessageStr(playerid, color, AmxString:message) = SendClientMessage; public OnPlayerCommandText(playerid, cmdtext[]) { new String:cmd = str_new(cmdtext); new String:name = cmd; new String:args = STRING_NULL; //Cyklus nalezne v řetězci mezeru a rozdělí jej na jméno a argumenty. new len = str_len(cmd); for(new i = 0; i < len; i++) { if(str_getc(cmd, i) == ' ') { name = str_sub(cmd, 0, i); args = str_sub(cmd, i+1); break; } } //Porovnání jména příkazu. if(name == str_new("/test")) { SendClientMessageStr(playerid, -1, args); //Vypsání argumentů. return true; } return false; } str_find a str_split bude v pozdější verzi. Pozastavení vykonávání funkce stock Odpocet() { SendClientMessageToAll(-1, "3"); wait_ms(1000); //Neblokující čekání (žádný cyklus). SendClientMessageToAll(-1, "2"); wait_ms(1000); SendClientMessageToAll(-1, "1"); wait_ms(1000); SendClientMessageToAll(-1, "0"); } //Poznámka: Čekání zablokuje vykonávání kódu až do nejbližší (externě vyvolané) funkce public. Pokud chcete, aby vnější kód pokračoval rovnou, použije CallLocalFunction. Čekání na libovolnou událost //Předělání funkce MoveObject tak, aby vracela úlohu, na niž lze "čekat" (tedy dokončení hýbání s objektem). stock task:MoveObjectTask(objectid, Float:X, Float:Y, Float:Z, Float:Speed, Float:RotX = -1000.0, Float:RotY = -1000.0, Float:RotZ = -1000.0) { //Úloha představuje abstraktní proces, který lze dokončit a jehož výsledkem může být nějaká hodnota. //task_new vytvoří novou prázdnou (nedokončenou) úlohu. new task:t = task_new(); //Zaregistruje novou "obsluhu" pro callback OnObjectMoved. Veřejná funkce SingleFireObjectTask se zavolá pokaždé, //kdy by se měla zavolat funkce OnObjectMoved a navíc se jí předá několik argumentů navíc. //specifikátor "e" značí předání ID nově vytvořeného objektu (to funkce pawn_register_callback i vrací). pawn_register_callback(#OnObjectMoved, #SingleFireObjectTask, "edd", t, objectid); MoveObject(objectid, X, Y, Z, Speed, RotX, RotY, RotZ); return t; } stock ObjectTest() { new obj = CreateObject(19300, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0); print("Object created!"); //Proběhne čekání na úlohu; zbytek kódu se vykoná, až skončí. await MoveObjectTask(obj, 0.0, 0.0, 10.0, 5.0); print("Object moved!"); } //Nová obsluha události OnObjectMoved má navíc tři parametry (na začátku), jejichž hodnotu lze určit //v pawn_register_callback. Zbytek parametrů je z OnObjectMoved. forward SingleFireObjectTask(callback:id, task:task, obj, objectid); public SingleFireObjectTask(callback:id, task:task, obj, objectid) { if(obj == objectid) { //Pokud se pohnul objekt, na nějž je zaregistrovaná tato obsluha (uloženo v parametru obj), obsluha se odregistruje pawn_unregister_callback(id); //a úloha, která k ní náleží, je nastavena na hotovou (s nějakým výsledkem). task_set_result(task, objectid); } } Technické informace Jak to celé funguje? Technologie, na které celý tento plugin staví, se nazývá hookování. Hookování principiálně umožňuje přepsat kód nějaké funkce vlastním kódem, který se spustí místo něj. Díky patří Zeexovi za jeho knihovnu subhook. Tak například každá nativní funkce, která bere řetězce, používá funkci amx_GetAddr z API AMX. Tato funkce očekává adresu nějaké proměnné uvnitř stroje AMX a vrací ukazatel, který na ni ukazuje (to lze zapsat jako DAT+addr, kde DAT je ukazatel na počátek datové sekce stroje AMX, jenž lze získat z takto pojmenovaného registru). Tato funkce se musí zavolat vždy, když v Pawnu předáváme nějakou adresu (výstupní proměnné či pole) a na hookování je tedy ideální. Pokud AMX zjistí, že addr neukazuje dovnitř datové sekce, vrátí chybu, a pak přichází na scénu nový kód pluginu, který místo vrácení chyby interpretuje adresu jako (nějaký) identifikátor dynamicky alokovaného řetězce a ukazatel na jeho znaková data úspěšně vrátí. Tak se navenek každé funkci jeví předaný argument jako správný, ale když dojde na získání ukazatele, namísto dovnitř AMX ukazuje vrácené číslo na data pluginu. Zbývá maličkost, tedy zařídit, že addr bude pro dynamické řetězce ukazovat vždy do paměti, která je mimo AMX (sice to téměř jisté, ale nikoliv zaručené). Zde se uplatňuje vlastní tag AmxString, za nímž stojí funkce str_addr. Ta z ukazatele na řetězec spočítá relativní ofset vůči datové sekci stroje AMX, takže pro ukazatele mimo datovou sekci bude vytvořené číslo vždy chybné pro normální funkci amx_GetAddr. Funkce amx_Exec se zase volá vždy, když chce server spustit kód v AMX. AMX samotné podporuje předčasné ukončení vykonávání funkce pomocí vyvolání chyby a jedna taková chyba je i AMX_ERR_SLEEP (lze ji vykonat příkazem sleep v Pawnu), která značí, že se kód může obnovit. Jelikož hookuji každé volání amx_Exec, mohu to okamžitě zjistit a průběh vykonávání obnovit, aniž by o tom byl informován server. Zbývá vyřešit jediný problém – uložený obnovovací stav AMX je jen jeden a při jiném volání se zruší. Proto si plugin ukládá veškerou dynamickou paměť AMX (halda a zásobník) a registry k sobě, jakmile je výkon funkce pozastaven, aby nedošlo ke ztrátě. Při obnově je potom paměť AMX dočasně vrácena do původního stavu a spouštění původní funkce se obnoví. Funkce pawn_register_callback funguje pomocí hookování amx_Exec a amx_FindPublic, jež se zavolá vždy, když je třeba zjistit index veřejné funkce v AMX. Pokud je na název callbacku registrována nějaká obsluha, místo skutečného indexu se vrátí záporný index, který je následně identifikován v amx_Exec, která napřed vykoná příslušné obsluhy zjištěné z tohoto indexu. Řetězce a garbage collection Jak známo, každá dynamická alokace musí mít svoji dealokaci, jinak by začala unikat paměť, ale tady jsem si vesele používal str_new a žádnou dealokaci jsem neřešil, ačkoliv použitá paměť byla nová. Jak je to možné? Řetězce mají svůj vlastní garbage collector, který se stará o jejich mazání. Ve skutečnosti existují dva druhy řetězců – lokální (dočasné) a globální. Lokální řetězce jsou jejich nejčastější typ (String) a jejich existence je omezena po dobu výkonu nejvyššího callbacku. Je-li např. do skriptu vstoupeno callbackem OnPlayerConnected, všechny nové lokální řetězce existují po celý běh této veřejné funkce a jakmile ta skončí, smažou se. Pozor! – jakmile funkce skončí, použití jejích lokálních řetězců způsobí pád serveru. Řetězce se mažou jen po skončení nejvyšší veřejné funkce, takže pokud se ve skriptu skáče pomocí CallLocalFunction/CallRemoteFunction, vnitřní řetězce existují i po skončení vnitřních funkcí public. To ovšem neplatí pro SetTimer, jelikož vnitřní funkce se zavolá až po skončení vnější. Životnost lokálních řetězců není prodloužena ani pomocí asynchronních funkcí, neboť samotný callback je ukončen prvním čekáním. Proto existují globální řetězce, které nejsou automaticky mazány. Jejich použití je ale nebezpečné, neboť se musíte postarat o jejich smazání; musíte myslet na každé místo, kde by byl globální řetězec. Příklad: native print_s(AmxString:string) = print; new GlobalString:str; public OnFilterScriptInit() { str = str_new("Goodbye world!"); } public OnFilterScriptExit() { print_s(str); str_free(str); str = STRING_NULL; } Globální řetězce jsou označeny tagem GlobalString a převod na ně je automatický, pokud do takto značené proměnné přiřazujete. Lze toho docílit i voláním funkce str_to_global. Všechny funkce fungují stejně pro globální i lokální řetězce. Místo str_free můžete použít i funkci str_to_local, jež naopak vrátí řetězec do lokálního prostoru. To doporučuji použít v kombinaci s asynchronními funkcemi: public OnFilterScriptInit() { new String:str = str_new("Hello world!"); str_to_global(str); wait_ms(1000); str_to_local(str); print_s(str); } Mutabilita řetězců Řetězce jsou mutabilní, tedy měnitelné (až na jednu výjimku – STRING_NULL). To znamená, že některé funkce (například str_del) pouze upravují existující řetězec, takže pokud s ním pracují jiné funkce, dostanou jiná data. To lze vyřešit vytvořením nového řetězce (např. přes str_clone) nebo použitím funkcí, které samy o sobě tvoří nový řetězec (např. str_sub). STRING_NULL má speciální chování. Lze jej použít na místě normálního řetězce a všechna volání proběhnou úspěšně, ale jeho délka je vždy nulová. Funkce jako str_resize nebo str_set na něj tedy nemají žádný vliv. str_clone a jiné vytvářející funkce ale vždy udělá řetězec nový (a normální). Návratová hodnota asynchronní funkce Funkce obsahující čekání skončí vlastně předčasně a v takovém případě je nutno vrátit kontrolu serveru. Jelikož ale server očekává od funkce nějakou hodnotu hned, na případný příkaz return nemusí vůbec dojít. Od toho je tu funkce yield, jež navrátí hodnotu volajícímu kódu okamžitě: public OnFilterScriptInit() { new ret = CallLocalFunction(#Func, ""); printf("%d", ret); } forward Func(); public Func() { yield 12; wait_ms(1000); return 13; } Program vypíše 12 hned po spuštění. Návratovou hodnotu zbytku funkce (či z dalších volání yield) zatím nelze nijak odchytit, ale očekávám přidání něčeho na způsob coroutines v Lua (task_create z veřejné funkce a await, který lze zavolat vícekrát na takovou úlohu). Něco divného na mém kódu? await a yield jsou funkce, ale používám je jako příkazy. Pawn umožňuje vypustit závorky z takového volání, což vypadá rozhodně lépe. Také používám výraz typu #Func, což známe z maker, a je to totéž jako prosté "Func". Pokud řetězec je zároveň jméno funkce, líbí se mi toto použití pro odlišení.
  5. Honles

    script Pekny kopirantko

    čaute Neviem prečo hráte na servery wtls je to kopirat kopiruje všetko čo vidi že sa nehabiš nice kido ä https://forum.sa-mp.com/showthread.php?p=3856359 event kopirovany aj tie diplomi hrájte dalej na wtls !!!
  6. Janik22

    script predám

    Zdravím predávam moj mod v ktorom su skoro všetky features systemy SHOP,EVENT.DERBY.TDM.DM,KONGRES,JOBY,30+,TOPS,HOUSE,PROPERTY,ADMINSYSTEM,HELPERSYSTEM,/EVENTINFO/EVENTLIST/HELP/MOD/NEWS ponuknite kolko dáte screeny budu dodane ak budete mát zaujem napíšte mi do sz pošlem fotky
  7. https://california-rp.eu https://discord.gg/CdJz6SG
  8. hoj, hledám gamemode na SAMP který by měl obsahovat toto: - Warp systém + vozidla po warpech (několik warpů + vozidla u nich, která pak budete moci použít) - Autoškola systém (několik autoškol po celém SA, např. řidičák na auto, motorku, autobus, ...) - Job systém (výběr z pár desítek zaměstnání, která budete moci vykonávat na serveru) - Admin systém - Event systém - House systém (nějakých cca 600+ domů na serveru, které budete moci odkoupit) - Property systém (nějakých 200+ nemovitostí, které budete moci odkoupit a budou vám vydělávat peníze) - Firemní systém (systém několika firem, které budete moci odkoupit, pozvat do ní hráče a vydělávat více peněz) - Garáž systém - Gang systém - Výběr skinů - VIP systém RZE
  9. bigw3b.

    script CRP - Rally Script

    RALLY SCRIPT Spolu s tímom C-RP sme v posledných dňoch pracovali na novej feature využiteľnej napríklad pri eventoch a to rallye tuning vozidiel - pridáva 4 upravené vozidlá (Landstalker, Blista Compact, Sultan, Club) ktoré sú vybavené na jazdu rallye. Script zahŕňa rôzne funkčné objekty na aute (polepy od sponzorov, lampy) ktoré fungujú rozlišne podľa užívateľa a nastavenia administrátorom. Každé vozidlo má jedinečné očíslovanie. V scripte sa nachádza simulovaný efekt streľby z výfuku zachytený na videách nižšie. Všetky objekty a modely (okrem upravených OffRoad kolies, ktoré sú modifikácia) sú na serveri a vidia ich všetci hráči, nevyžadujú žiadne modifikácie. Tento script nájdete po spustení plnej verzie (aktuálne open beta) na https://california-rp.eu
  10. _viTo_

    script Registrační System 1.0

    Dobrý Den, Chci se vám pochlubit s Registračním systémem, se kterým si na serveru vytvoříte herní účet. Týká se to pro servery, které nemají registrační pole, nebo se dá také říci že u některých herních modu se nacházejí registrace ktere se buď: - Nezobrazují správně. - Nefungují tak jak mají tudíž jsou zabugované - Nebo je tam registrace ale která se pro změnu neukáže vůbec. Takže sem vytvořil registrační systém který je přesně testován mnou a dalšími hráči SAMP mnohokrát a jejich odpověď byla " Super, Díky, Dobrý " Registrační Systém 1.0 Registrační Systém verze 1.0 proto, protože se jedná pouze o verzi která je po beta verzi. Tudíž pokud se najdou chyby, tak bych byl rád kdyby ste mi je sem pod tento příspěvek napsali a já je opravím. Je to primitivní Registrační Systém ale jak sem si četl téma jak jeden člověk dělá herní mod a že by potřeboval Registrační systém tak sem ho udělal. Můžete ho získat tím, že mi napíšete do soukromé zprávy že byste měli zájem o registrační systém a já vám ho pošlu. Samozřejmě pokud byste chtěli přepsat dialog s registrací tak mi také napište a já vám podle vašeho přání poupravím dialogy. Registrační Systém bych chtěl postupem času vyvíjet víc a víc až z toho třeba bude nový GameMode 😄 co já vím uvidíme v budoucnu co nám to přinese za pár měsíců. Také chci dopsat že nové verze budu aktualizovat po měsíci. To znamená že následující aktualizase Registračního Systému bude 3.6.2020 kde už bude něco více než registrační dialog s přihlášením. Pokud mi napíšete do soukromé zprávy o registrační systém, tak vám bude zaslán Soubor v scriptfiles poté samotný AMX soubor s registračním systémem a dále instrukce co a jak dělat. na závěr prezentace vám sem hodím obrázek který sem vytvářel dodatečně a chápu že si pomyslíte že je to zbytečné a tak dále ale tak proč ne si to vyzkoušet a zapojit to do presentace. Vytvořil sem ten obrázek z důvodu jelikož sem dělal takové obrázky ve kterém se nachází manuál jak se co používá a k čemu to je tak je to promitivní. Vytvářel sem to pro jednu aplikaci aby lidé věděli na co klikají a podobné věci. Vesměs je to zbytečnost ale proč ne.
  11. Čauko, potreboval by som pomoc s pár vecami. 1. Ako spravím aby týpek dostal výplatu za každú misiu čo spraví ? (+ako spravím misiu s viacerými checkpointami) 2.Ako spravím aby sa mu tá výplata zvyšovala ako to nastavím ? 3.Ako spravím niečo ako bodovací systém, že ked hráč spraví misiu dostane napr. 5 bodov, portebuje 25 bodov pre vyššiu výplatu, potom 80 bodov, potom 120 potom 200 atd. Ďakujem za všetkú pomoc ! Oceňujem všetky typy pomoci ! Začínam s pawnom takže moc o tomto neviem. Dikes
  12. _niCo_

    script Warp System

    Zdarec všechny, Toto je můj první FilterScript Jedná se o warp system který sem dopawnil a dávám sen na Pawno.cz ================================================= Filter script obsahuje : warpy do Las Venturas / Los Santos / San Fierro Příkazy /warpy po napsání /warpy se vám ukáže dialog z warpama /lv /sf /ls ======================================================= [ !!! ] DÁM VÁM SEM I KOD WARP SYSTEMU ALE PROSIM VÁS ZANECHTE MNE JAKO AUTORA FS DĚKUJI MOC [ !!! ] Doufám že se vám můj první FilterScript bude líbit a zdar #include <a_samp> #include <zcmd> #define COLOR_BLUE 0xFF0000FF #define COLOR_RED 0xFFFF0000 public OnFilterScriptInit() { print("\n--------------------------------------"); print(" Warp system by _niCo_"); print("--------------------------------------\n"); return 1; } public OnPlayerConnect(playerid) { SendClientMessage(playerid,COLOR_BLUE," {FF0000}[ WARPS SYSTEM ] {0000FF}Server používá {FF0000}Warps System {0000FF}by {FF0000}_niCo_ {0000FF}/ {FF0000}v1.0"); return 1; } public OnPlayerCommandText(playerid, cmdtext[]) { if (strcmp("/warpy", cmdtext, true, 10) == 0) { ShowPlayerDialog(playerid,1,DIALOG_STYLE_MSGBOX,"Warp System by _niCo_","/ls\n/sf\n/lv\n{00FF00}ZA KAŽDÝ WARP SE TI STRHNE 100 $","{FF0000}Závřít",""); return 1; } if (strcmp("/ls", cmdtext, true, 10) == 0) { GivePlayerMoney(playerid,-100); SetPlayerPos(playerid,1715.1248, -1879.8043, 13.5665); ShowPlayerDialog(playerid,1,DIALOG_STYLE_MSGBOX,"Las Venturas","{0000FF}Nyní se nacházíš v {FF0000}Los Santos","{FF0000}Závřít",""); return 1; } if (strcmp("/sf", cmdtext, true, 10) == 0) { GivePlayerMoney(playerid,-100); SetPlayerPos(playerid,-1979.5410, 882.8173, 45.2031); ShowPlayerDialog(playerid,1,DIALOG_STYLE_MSGBOX,"Las Venturas","{0000FF}Nyní se nacházíš v {FF0000}San Fierro","{FF0000}Závřít",""); return 1; } if (strcmp("/lv", cmdtext, true, 10) == 0) { GivePlayerMoney(playerid,-100); SetPlayerPos(playerid,2137.2100, 1468.2996, 10.8203); ShowPlayerDialog(playerid,1,DIALOG_STYLE_MSGBOX,"Las Venturas","{0000FF}Nyní se nacházíš v {FF0000}Las Venturas","{FF0000}Závřít",""); return 1; } return 0; } Warpy.amx
  13. exiplayer

    script Savecar

    Ahoj potrebol by script /savecar na gta samp server alebo proste volaký scrpit ktorý dokaže uložit auto vitunene
  14. exiplayer

    script Rcon Ochrana

    Potreboval by rcon ochranu Bol by niekdo kdo by mi pomohol prosím skype martinko9632
  15. Patrně se vám již stalo, že jste otevřeli soubor, aniž byste ho poté zase zavřeli, či jste zapomněli smazat výsledek dotazu SQLite apod. Možná z vyšších programovacích jazyků znáte příkaz using či try-with-resources a litujete, že něco takového není i v Pawnu. To ale může být! #define using(new%9\32;%0:%1=%2) for(new %0@guard:guard@%1=(%0@guard:%2),%0:%1=(%0:guard@%1);_:%1!=cellmin;_:%1=cellmin) Stačí tento řádek, abyste hned mohli vesele začít používat using na libovolné výrazy, jakmile dodefinujete destruktor. Je pravděpodobné, že jste o destruktorech ještě neslyšeli, poněvadž v dokumentaci o nich není ani zmínka, ale principiálně se jedná o něco podobného, jako je automatické mazání proměnných v C++. Pokud má určitý tag definován destruktor, zavolá se tento v momentě, kdy je ukončen blok obsahující proměnnou s tímto tagem. Jednoduchý destruktor příkazu using pro tag File: vypadá takto: stock operator~(File@guard:arr[], count) { for(new i = 0; i < count; i++) { if(_:arr[i] != 0) fclose(File:arr[i]); } } Destruktor dostane jako parametr pole všech hodnot, které opustily blok, a jeho velikost. Tento destruktor se tedy zavolá vždy, pokud proměnná s tagem File@guard: (to je jen název) opustí blok. Makro using zařídí, že taková proměnná bude existovat vždy, když se takový blok otevře, a destruktor se zavolá při každém vyskočení z bloku. Např. příkaz using(new File:f = fopen("file", io_read)) se přetransformuje na toto: for(new File@guard:guard@f = File@guard:fopen("file", io_read), File:f = File:guard@f; _:f != cellmin; _:f = cellmin) Toto zneužívá sémantiku cyklu for k tomu, aby spustilo nějaký kód na začátku a na konci bloku. Napřed se vytvoří dvě proměnné - guard@f a f. První obsahuje vrácenou hodnotu, druhá její kopii. Hodnota cellmin je použita jako ukončovací; na konci bloku je nastavena a v dalším průchodu ukončí cyklus. Mohl bych použít klasický for s jednoprvkovým intervalem, ale tohle mi přijde elegantnější. Teď k té důležité části: jakmile řízení opustí cyklus, proměnná guard@f zmizí a tedy se spustí její destruktor, který zavře soubor. Zbývá otázka - k čemu destruktor? Pokud mohu vyvolat kód na konci bloku, proč smazání nedám tam? Proto: using(new File:f = fopen("f", io_read)) { return; } Bez destruktorů by se soubor nikdy nezavřel, protože řízení opustí funkci ještě před ukončením cyklu. Naopak destruktor je vyvolán i v případě, kdy se cyklus opouští násilně, tedy příkazem break, return nebo exit (ale ne goto a sleep). Díky tomuto se chová using tak, jak by měl.
  16. Zdravím vás, Toto je můj první FilterScript co dávám sem na forum. Jedná se o AntiReklamu která reaguje rychle a dotyčného zabanuje. FilterScript má 117 Řádku _____________________________________________________________ Jestli AntiRekala má hráče zabanovat nebo jen kicknout nebo i napomenou můžete změnit na řádku [ 65 , 83 , 101 ]
  17. Závodní systém (Lukasz & vEnd) Zdravím, je to už nějakou dobu, co s Lukaszem pracujeme na společném (filé)scriptu. Už název napovídá, že jde o závodní systém. Dynamický závodní systém, který umožňuje vytvářet závodní tratě s vlastní konfigurací a různými možnostmi navíc. Závody lze pojmenovat a uložit do souboru, pak je každý (dle oprávnění) může načíst a hráči se v nich mohou navzájem utkat. Jak k tomu došlo Ten nápad mne nenapadl jen tak. Někteří z vás třeba ještě znají závodní script od pawnera Yagu. V minulosti jsem se s ním často setkával a už tehdy jsem si říkal, že bych rád vytvořil něco na tento styl, akorát lepší. Tehdy jsem ještě do scriptování moc nedělal, ale od té doby se leccos změnilo, že jo. Abych na to nebyl sám (protože takhle mi často dochází motivace po pár hodinách) a protože jsme o společném projektu uvažovali už dříve, požádal jsem Lukasze, zda by se toho také nechtěl účastnit. A on že klidně. Abyste to správně pochopili, nejedná se o předělávku výše zmíněného scriptu! Veškerý kód je čistě náš. A to myslím doslova – žádné sscanf, YSI, cizí cmd nebo file systémy. Co bude systém obsahovat Princip jeho fungování jsem nakousl už výš, teď na co všechno se můžete těšit: – vytváření a načítání závodních tratí (pro jistotu ještě jednou pro obzvlášť pomalé); – různé stupně oprávnění pro správu závodu; – konfigurace každé tratě (systém odměn, nastavení nitra a kolize, povolená vozidla atd.); – doplňující možnosti (stavění objektů do trati, různé módy závodu atd.); – TOP 10 nejrychlejších časů pro každou trať; – dynamické přidávání checkpointů a možná pozdější úprava tratě; – závodění mezi hráči (no shit, vEnd...) s určením jejich pozice v závodu a různé odměny pro vítěze. To si myslím jako motivace stačí. Jak budeme postupovat ve vývoji, přidám nějaké další informace a možná i obrázky. Co už máme – aktivace/deaktivace režimu stavby; – konfigurace závodů; – uložení a načtení závodu; – připojení do závodu; – průběh závodu, určení pořadí závodníků pro standardní mód (pracujeme na dalších); Kdy to vyjde aneb naše pracovní nasazení Přesné ani orientační datum Vám teď neřeknu, protože se s Lukaszem zásadně držíme hesla dělej, jen když se ti chce. Na podzim by to ale být mohlo, když nám to naše prokrastinace dovolí. Momentální stav Barvičkami a procenty se to vyjadřuje nejlépe. 60 %. To je vše, díky za přečtení. - Lukasz & vEnd
  18. Darko698

    script Pravidlá FS

    Vytvoril som môj prvý FS pre ./pravidla dúfam že sa bude páčiť.
  19. Na tvorbe sa podielali milous22 (objekty), NoxeS (dizajn), DYXiCZ (napad) a bigw3b (script). Najdete na http://sfb-rp.cz (1.3.2) uz coskoro. .
  20. Hladám plugin mastra na moj minecraft server Minimalný vek 13 moj skype live:rbrindzak2932 Vsetko dalsie na skype !
  21. Ahojky, chcel by som vám ukázať jeden stock čo som nakódil, fillArray(), ktorý dokáže vynulovať pole, resp. nastaviť každý prvok v poli na nejakú hodnotu. Je to užitočné v tom, že je to rýchlejšie než použitie loopu, pomer rýchlosti sa odvíja od počtu prvkov, kde pre 100 prvkové pole je fillArray() 18x rýchlejší, pre 1000 a viac prvkové ~65krát rýchlejší. Použitie main() { new pole[] = {1,2,3,4}; fillArray(pole, 55); // nastavi kazdu hodnotu v poli na 55 for (new i; i < sizeof (pole); i++) // vypise cele pole, teda 4 riadky s textom "55" printf("%d", pole[i]); } Pre viac-rozmerné polia treba použiť cyklus fillArray()ov. main() { pole[][] = {{1,2}, {3,4}}; for (new i; i < sizeof (pole); i++) fillArray(pole[i]); // default hodnota je 0, toto teda vynuluje cele pole for (new i; i < sizeof (pole); i++) for (new j; j < sizeof (pole[]); j++) printf("%d", pole[i][j]); } Speedtest Ťažko sa získavajú grafy pre rôzne veľkosti polí (lebo pawn nemá polia s dynamickou veľkosťou), ale pár manuálnymi pokusmi som zistil, že s kódom nižšie je fillArray() rýchlejší okolo 18x pre polia o veľkosti 100 prvkov, pre polia okolo 1000 prvkov okolo 70 krát rýchlejší a pre viac (až po 10 000 000 prvkové polia) to už osciluje medzi 60-65-70krát. Získal som: [19:45:51] Klasicka metoda: 74012 tickov [19:45:52] fillArray() metoda: 1075 tickov Pre kód: main() { #define MAX 1234567 new pole[2000]; new tick = GetTickCount(); for (new i; i < MAX; i++) for (new j; j < sizeof(pole); j++) pole[j] = 1; printf("Klasicka metoda: %d tickov", GetTickCount() - tick); tick = GetTickCount(); for (new i; i < MAX; i++) fillArray(pole, 2); printf("fillArray() metoda: %d tickov", GetTickCount() - tick); } Kód (môžete copy-paste do modu) stock fillArray(array[], value = 0, size = sizeof(array)) { new cip; size *= 4; cip = get_code_relative_address(); #emit load.s.alt cip #emit lctrl 6 #emit add #emit add.c 56 #emit stor.s.pri cip #emit load.s.alt size #emit sref.s.alt cip #emit load.s.alt array #emit load.s.pri value #emit fill 0 } stock get_code_relative_address() { new dat, cod; #emit lctrl 1 #emit neg #emit add.c 12 #emit stor.s.pri cod #emit lref.s.pri cod #emit stor.s.pri cod #emit lctrl 1 #emit neg #emit add.c 16 #emit stor.s.pri dat #emit lref.s.pri dat #emit stor.s.pri dat return cod - dat; } Resp., aktuálna verzia (aj s pár vysvetľujúcimi komentmi) tu. Ó, Majstre! Uč ma! Krátke vysvetlenie pre tých, čo vedia čo znamená slovo "assembler", ale nevedia čítať emit.
  22. ==[Informcia]== Ahojte, vytvoril som svoj FS, a môžete si ho dať voľne na svoj Server. ==[Načo FS slúži]== Tento FS som vytvoril skôr z nudy. Nájdete tam napr. zbrane, oprava auta, a rôzne ďalšie príkazy / funkcie. Ďalej som tam pridal taký menší "AntiHack", ide o to, že keď nejaký hráč zabije nejakého hráča minigunou, automaticky dostane ban. ==[Príkazy]== - /menup - Menu pre hráčov - /menua - Menu len pre Adminov ==[Aký FS bude na budúce?]== Aktuálne pracujem na VIP systéme, kde budú prefixy, rôzne výhody atď... Potom mám na pláne urobiť hlavne pre vás Pravidlá na server, že sa pripojíte na server a zobrazia sa vám pravidlá a vy ich musíte odsúhlasiť. Ďalej v zozname mám v pláne urobiť Admin enu, kde bude: Zabanovať hráča A to je asi všetko.. xD Tak isto ak chcete, môžem vám urobiť váš FS úplne zadarmo. Ale musí to byť FS, GM nerobím. Príklad: Urobím vám FS na hocijaký príkaz, stačí sa len dohodnúť. Môžete ma poprosiť buď tu alebo v SZ, a už sa dohodneme. Možno si hovoríte, že prečo to robím zadarmo? No lebo ma to baví :D. Odkaz na PWN súbor => https://pastebin.com/YXGFW4YE Môžete si to upraviť podľa seba.
  23. JUST ADMIN SYSTEM v0.3Dynamic Admin systém, který obsahuje nejmodernější zpracování zdrojového kódu, průměrné optimalizace, jednoduchou práci a možnosti vlastní úpravy, redukuje zbytečnou námahu, a využívá jak nejrychlejší tak i nejlepší a nejnovější includy UDĚLOVÁNÍ SKUPINY NAMÍSTO ADMIN LEVELU ČETNOST PŘÍKAZŮ PRO VŠECHNY HRÁČE A ADMINY VIP SYSTÉM S PŘIJATELNÝMI MOŽNOSTMI MOŽNOST UDĚLOVAT JMÉNO BARVY NAMÍSTO HEX JEDNODUCHÉ PŘIDÁVÁNÍ RANKU A TITULU NĚKOLIK MOŽNOSTÍ VPISU DO CHATU PO ESTETICKÉ STRÁNCE NEJLEPŠÍ ZPRACOVÁNÍ PŘEHLEDNÝ SEZNAM PŘÍTOMNÝCH VIP HRÁČŮ A ADMINŮ JEDNODUCHÁ A PŘEHLEDNÁ MOŽNOST ÚPRAVY ÚDAJŮ NĚKOLIK INFORMACÍ O SCRIPTU Každý příkaz vrací jednu z 5 fcí, která obsahuje podmínku(aka odkaz) na daný příkaz, kvůli přehlednosti, na místo hexu barvy, stačí jen napsat její ang. jméno, například red nebo blue, část užitečných fcí jsou preprocesory namísto zbytečných přidávání jako ostatní fce, na heslo byla použita stan. fce ze a_sampu, titul, rank a skupinu, hráče, která se odešle do chatu spolu s nickem, kontroluje fce, a není to všechno zbytečně v callbacku, pokud má hráč nějaký trest, například zmražení, tak po odpojední a následném návratu ho po spawnu zkontroluje a znova zmrazí obsahuje nejznamnější příkazy a možnosti jednoduché zpracování zdrojového kódu pro snadnější úpravy či pokračování v tvorbě pro ostatní uživatele, lze si jednoduše přenastavit ceník vip mincí u daných příkazů využívá rychlejší cyklus na to foreach, obsahuje desítky kontrol, například zda je/není hráč ve vozidle, server může mít pouze jednoho majitele, a mnoho dalšího... SEZNAM PŘÍKAZŮ A VYSVĚTLENÍ k verzi 0.1 Hráč Premium Moderátor Pomocník Admin Majitel /aregister - Registrace. Bez něj, se údaje neuloží a nelze používat příkazy z AS. /alogin - Přihlášení. Bez ní, se údaje neuloží a nelze používat příkazy z AS. /admin - Zobrazení všechny příkazů v AS. /admins - Zobrazení všechny přítomných administrátorů na serveru. /asave - Uloží všechny údaje. Jinak se údaje ukládají po odchodu ze serveru. /vips - Zobrazení všechny přípomných vip hráčůn na serveru. /vip - Zobrazení všechny příkazů v AS pro vip hráče. /vcoins - Zobrazí hráči jeho počet VIP mincí. /vhp - Doplní hráči život. /varmour - Doplní hráči vestu. /vrepair - Opraví hráčovi vozidlo. /vme - Mluvka v chatě. /vflip - Obrátí vozidlo. /vpara - Daruje padák. /vjetpack - Daruje jetpack. /vhide - Zneviditelní na mapě. /vunhide - Zviditelný na mapě. /vpsave - Uloží pozici pro port. /vpload - Portne hráče na uloženou pozici. /vnitro - Namontuje nitro do hráčova vozidla. /vhydrau - Namontuje hydrauliku do hráčova vozidla /vweapons - Daruje hráči výbavu. /asay - Mluvka v chatě /avar - Varuje hráče, nemá limit. /aspam - Promaže celý chat prázdným textem. /atime - Lze přenastavit čas na serveru. /aweather - Lze přenastavit počasí na serveru. /agoto - Portne administrátora k danému hráči. /amute - Umlčí daného hráče v chatu. /aunmute - Odmlčí daného hráče v chatu. /ajail - Uvězní daného hráče do známého vězení. /aunjail - Propustí daného hráče. /afreeze - Zmrazí daného hráče na místě /aunfreeze - Odmrazí daného hráče. /aget - Porte admina k danému hráči. /akick - Vyhodí hráče ze serveru. /arank - Nastavit hráči daný rank /agw - Darovat hráčovi danou zbraň. /acar - Vytvořit vozidlo, max 1. /adcar - Zničit vytvořené vozidlo. /agetstats - Zjistí statistky daného hráče. /aremove - Vyhodí hráče z vozidla. /apingkick - Vyhodí hráče za serveru, pokud má vysoký ping. /acolors - Zobrazí jména barev, které lze nastavit. /anickcolor - Změní barvu nicku. /aban - Zabanuje daného hráče. /atitle - Nastavit danému hráči titul. /ahp - Nastavit danému hráči život. /aar - Nastavit danému hráči vestu. /akill - Zabije daného hráče. /asetvip - Nastavit danému hráči vip. /agm - Darovat hráčovi daný počet peněz. /askin - Nastavit danému hráčovi skin. /adisarm - Odzbrojí daného hráče. /agivecoins - Daruje danému hráči VIP mince. /atakecoins - Odebere danému hráči VIP mince. /asetowner - Admin s rcon po zadání tohoto příkazu se stane majitelem a může nastavit adminlevel. /asetlevel - Pouze majitel. Může nastavit danému hráči oprávnění(adminlevel). JAK PŘIDAT SCRIPT NA SERVER 1. Stáhnout si celý soubor a rozbalit 2. Soubor .amx přetáhnout do filterscripts. 3. Ve složce scriptfiles vytvořit složku Datas a v ní složku Saf. 4. Ve konfiguraci serveru přidat do řádku filterscripts daný script. 5. Resetovat server. 6. Připojit se na server, přihlásit se na rcon a zadat příkaz /asetowner. 7. Hotovo. VLASTNÍ ÚPRAVY AS Seznam preprocesorů - Hlavní Preprocesor Hodnota Popis #define MAX_TITLE_LEN 20 Maximální délka titulu v chatě. Nedoporučuji upravovat bez znalosti ssacanf2! #define MAX_RANK_LEN 20 Maximální délka ranku v chatě. Nedoporučuji upravovat bez znalosti sscanf2! #define MAX_FILE_NAME_LEN 40 Maximální délka jména složky, kde se ukládají údaje. #define MAX_PASSWORD_LEN 65 Maximální povolená délka hesla. Nedoporučuji upravovat bez pokročilé znalosti pawn! #define MAX_COLOR_LEN 10 Maximální délka jmén barve, které lze přidat. Upravit jen, pokud přidáte jméno delší než 9 znaků! #define MAX_ALLOWED_PING 300 Maximálně povolený ping pro příkaz /pingkick. #define MAX_ADMIN_LEVEL 7 Maximální admin level. NOVÉ #define MAX_VEHICLE_SPAWN 10 Maximální počet spawnutí acars Seznam levelů Jméno levelu Kód Level Hráč LEVEL_PLAYER 0 Moderátor LEVEL_MOD 1 Pomocník LEVEL_HELPER 2 Hlavní Moderátor LEVEL_MAINMOD 3 Hlavní Pomocník LEVEL_MAINHELPER 4 Administrátor LEVEL_ADMIN 5 Hlavní Administrátor LEVEL_MAINADMIN 6 Majitel LEVEL_OWNER 7 Seznam preprocesorů - Ceník vip příkazů Preprocesor Hodnota #define COINS_HEALTH 50 #define COINS_ARMOUR 100 #define COINS_REPAIR 150 #define COINS_PARACHUTE 100 #define COINS_JETPACK 200 #define COINS_HIDE 250 #define COINS_ME 10 #define COINS_FLIP 50 #define COINS_SAVE 50 #define COINS_LOAD 100 #define COINS_NITRO 150 #define COINS_WEAPONS 200 #define COINS_HYDRAULICS 100 Seznam funkcí - Hlavní Jméno Parametry Popis IsPlayerRegistered playerid Vrací true/false, zda je hráč zaregistrovaný. IsPlayerLogged playerid Vrací true/false, zda je hráč přihlášen. IsPlayerVip playerid Vrací true/false, zda je hráč vip. HavePlayerRank playerid Vrací true/false, zda hráč má rank. HavePlayerTitle playerid Vrací true/false, zda hráč má titul. GetPlayerTitle playerid Vrací titul hráče. GetPlayerCoins playerid Vrací hráčův počet vip mincí. GetPlayerRank playerid Vrací rank hráče. IsPlayerFreeze playerid Vrací true/false, zda je hráč zmražen. IsPlayerMute playerid Vrací true/false, zda je hráč je hráč umlčen. IsPlayerJail playerid Vrací true/false, zda je hráč uvězněn. IsPlayerHide playerid Vrací true/false, zda je hráč neviditelný na mapě. GetPlayerLevel playerid Vrací hráčův adminlevel. GetPlayerGroup playerid Vrací jméno skupiny hráče. IsPlayerOwner playerid Vrací true/false, pokud je hráč majitel. GetPlayerNick playerid Vrací nick hráče. IsColorExist sColorName[] (red, blue...) Vrací true/false, zda daná barva existuje. GetColorID sColorName[] (red, blue...) Vrací id dané barvy. ShowPlayerCoinsStatus playerid, iTake Odebere dané vip mince+odešle zprávu ohledně zůstatku SendMessageToAT Message[] Odešle zprávu všem administrátorům. SaveServerData - Uloží údaje serveru. LoadServerData - Načte údaje serveru. SavePlayerData playerid Uloží údaje hráče. NOVÉ SetPlayerRank playerid, sRank[], sColorName[] Nastavit údaje hráče. NOVÉ SetPlayerTitle playerid, sRank[], sColorName[] Nastavit titul hráči. NOVÉ RemovePlayerTitle playerid Odebrat titul NOVÉ RemovePlayerRank playerid Odebrat rank Seznam funkcí - Zprávy Funkce Parametry Output MsgUnRegistered playerid "Nejsi zaregistrován: Použijte /aregister" MsgUnLogged playerid "Nejsi přihlášen: Použijte /alogin" MsgRegistered playerid "Již jste zaregistrován: Použijte /alogin" MsgLogged playerid "Již jste přihlášen." MsgPremium playerid "Nevlastníte VIP účet." MsgNotEnoughCoins playerid "Nemáte odstatek VIP mincí" MsgAdminLevel playerid "Na tento příkaz nemáte dostatečné oprávnění." MsgPermission playerid "Nevlastníte administrátorská práva." MsgUseCommand playerid, var1[], var2[] "[ ! ] Použití příkazu: {FF0000}var1[] {FFFFFF}var2[]" MsgCmdError playerid, var1[] "[ ! ] {FFFFFF}var1" Postup pro přidání příkazu k danému oprávnění, k verzi v0.3 Rozmyslet si pro jaké oprávnění, například příkaz slap pro Helpera. Přidává se prakticky stejně jako standartní příkazy přes i-zcmd, jen se změní jméno a přidá oprávnění(level): Command[aslap, LEVEL_HELPER](playerid, params[]) { //Obsah příkazu return (true); //<--- nezapomenout ! } Již samotný příkaz nám zajistí, že příkaz budou moct jen přihlášení hráči s levelem Helper. Pokud váš postup byl správný, tak by jste po úspěšně kompilaci měl mít příkaz na serveru pouze pro helpery a výšše. DOWNLOAD v0.1 - Začátek Pawno v0.2 - Lukášův update Pawno v0.3 - Groups update Pawno v0.4 - Code update ? PODĚKOVÁNÍ Y_Less Yashas Double-O-Seven xhunterx Lukasz vEnd Za jeho sscanf2. Za jeho i-zcmd. Za jeho dof2. Inspirace některých název skupin z jeho unit a princip. Za pomoc při úprave a opravě scriptu, a za 'Lukášův update' Za pomoc při úprave a opravě scriptu, a za návod a radu na hash hesla. ZÁVĚR Na závěr bych chtěl dodat, že pokud bude mít tento AS dobré ohlasy, tak budu neprodleně dělat na další verzi, kde bude spousty úprav a několik novinek, včetně různých dodatků, například rozšířený počet skupin.
  24. Zdravím, dnes sem se nudil a nikde sem nenašel dražba systém, Tak sem si řekl že zkusím udělat a..... POVEDLO SE! Dražba systém v2 Tady máte kód, chtěl sem přidat pouze .amx, ale potom sem si řekl že stejně sem to hodně lidem dal v .pwn. KÓD:
  25. Mivčo

    script 3D Editor

    Prinášam vám 3D editor vo farbách ako Červena, Modrá, Zelená, Biela, Šedá a tak ďalej. Je tam 11 farieb ale dajú sa dorobiť viacej aby boli Ukladá sa do SF pod menom 3Dtext.txt DOWNLOAD 3DText.zip + k tomu je aj COLOR Editor možná ho poznáte niektorý V tom editori si môžeš aké farby len chcieť
×
×
  • Create New...