Ez a szekció lehetővé teszi a felhasználó által írt összes hozzászólás megtekintését. Vedd figyelembe, hogy csak azokba a fórumokba írt hozzászólásokat látod, amelyekhez hozzáférésed van. 2011
Tanuljunk PAWN nyelvet / [Scripting Eszköz]foreach [Ciklus helyettesítõ]« Dátum: 2011. május 13. - 23:14:30 »Foreach
Bevezetõ A foreach lecseréli a ciklusokat( leginkább a játékosokra vonatkozókat ) gyorsabb, és még hatékonyabb ciklusokra. Példa:
Egyszerûen ezzé válik:
Felhívnám a figyelmet, hogy ez nem csak egy egyszerû definíció, ami az eredeti ciklust illeszti be más néven, hanem ez tulajdonképpen egy teljesen különbözõ beágyazás, ami játékoslistázást használ, emiatt gyorsabb az eredeti rendszernél. Sõt, a mûködési elve miatt nem számít a MAX_PLAYERS értéke, akár be van állítva a te szerveredhez, akár nincs; Ez a ciklusfajta mindig ugyanannyi idõ alatt fog lefutni, mivel ez CSAK a csatlakozott játékosokat kezeli, üres azonosítókat nem. Beágyazás Ez a függvénykönyvtár ezt a rendszert használja, tehát mindössze ennyit kell csinálj:
Ezek után már használhatod az új ciklust. Ha filterszkriptben szeretnéd használni ezt a rendszert, akkor tedd a következõt:
Ha a forrásodban már szerepel a FILTERSCRIPT definíció, akkor gyõzõdj meg róla, hogy a foreach beágyazása FÖLÖTT legyen. Deklaráció Hogy létrehozz egy iterátort( egy elem, amit a foreach segítségével használhatsz ), használd a következõ kódot: new Iterator:MyIterator<10>; Ez létre fogja hozni a \"MyIterator\" nevû iterátort, amihez 10 férõhelyet rendel. Figyelmedbe ajánlom, hogy ez a szintaxis ezen a kódon alapul, és formára hasonlít egy átlagos változó deklarálására( többrétû elemek használata ), de ez nem egy tömb, így az emberek nem esnek abba a hibába, hogy direkt módon próbálnak meg információkhoz hozzáférni, tehát a szerkezet fontos. Használata A saját iterátorodat a következõ képpen használhatod:
Értékek hozzáadása: Iter_Add( MyIterator, 7 ); Értékek törlése: Iter_Remove( MyIterator, 7 ); Ha egy véletlenszerû értéket szeretnél lekérdezni az iterátorodból GYORSAN( ez nagyon jó véletlenszerû játékosok kiválasztására ), csináld ezt: Iter_Random( MyIterator ); Játékoshoz: new randomplayer = Iter_Random( Player ); Függvények
Ezzel létrehozol 3 5-elemes iterátort, és a másodikhoz hozzáadod a 4-et értékként. Fordítási beállítások A beágyazás elõtt definiálhatsz pár dolgot, hogy testreszabd a foreach funkcióit.
Többrétû dimenziók Az elõzõ kiadás minden függvényének volt egy \"Iter_Func2\" változata - ezek most törölve lettek egy még egyértelmûbb szintaxis létrehozásának érdekében: Mostantól létrehozhatsz többrétû iterátorokat is. Például egy iterátorokból álló tömböt, ami a játékosok jármûit tartalmazza( habár volna jobb javaslatom is ennek megoldására ):
Multidimenziós iterátorok létrehozásához meg kell hívnod ezt a függvényt: Iter_Init( iterator ); Az iterátor használata elõtt. Az egyszerû iterátorokat inicializálhatod a fordítási idõ közben, de a multidimenziósokat nem. Példák Elsõ példa Multidimenziós iterátorok. Ezzel egy iterátorokból álló tömböt hozhatsz létre:
Második példa Multidimenziós iterátorok. Létrehozunk egy iterátorokból álló tömböt, és a jármûveket egy összetett listához hozzáadjuk.
Harmadik példa Végigmegyünk az összes boton( csak 0.3 ).
Negyedik példa Létrehozunk egy új iterátort 20 jármû számára, és megváltoztatjuk a színüket.
Eredeti téma itt. 2012
Elsõ csoport / [Round2]Tryp - ZeRo vs. vmx - pmarci« Dátum: 2011. május 13. - 21:36:11 »
Azért nem, mert ha mégsem szálltak ki, akkor bukjuk.
2013
SA-MP: Szerverfejlesztés / Elsõ Scriptem. RP Chat« Dátum: 2011. május 13. - 21:35:23 »
Elsõnek nem rossz grat. Csak pár tipp:
2014
Második csoport / [Round2]Draven - $MoNsTeR$ vs. BBS - VTX« Dátum: 2011. május 13. - 21:24:49 »
Round1-et írtál.
2015
Fórum Archívum (Témák/Fórumok) / [Scripting Eszköz] foreach [Ciklus helyetesítõ]« Dátum: 2011. május 13. - 20:31:01 »
Hú bocs srácok, csak rohadtul leálltam a szkripteléssel egy jó ideje, most van egy projektem, ennek kapcsán lehet visszatérek, így megpróbálom befejezni ezt a leírást, mert már fele megvan( nem töröltem le ). Kis türelmet még.
2016
Elsõ csoport / [Round2]Tryp - ZeRo vs. vmx - pmarci« Dátum: 2011. május 13. - 20:19:59 »
De azért be kell adnunk valamit, nem?
2017
Második csoport / [Round2][Bart] - Sh4Rk vs. WolverinZ - Stuntzor« Dátum: 2011. május 13. - 19:23:10 »
Gondolom ami Chilliad lábánál van.
2019
Elsõ csoport / [Round2]Tryp - ZeRo vs. vmx - pmarci« Dátum: 2011. május 13. - 19:19:02 »
k, gl
2020
DD Private / [DD] - Rising Sun (1. vid)« Dátum: 2011. május 13. - 18:06:45 »
Hát nekem oké akkor, de csak 2 stuntom van nem 3, akkor küldjem el?
E: Ja és majd VTX, ha nálad összegyûlt mindenki stuffja akkor elküldöd majd pls nekem is? Szeretnék csinálni egy saját változatot is, ha tré akkor nem küldöm el nektek, nyugi. 2021
Második csoport / [Round1][Bart] - Sh4Rk vs. BBS - VTX« Dátum: 2011. május 13. - 18:05:20 »\" post=\"137619\" timestamp=\"1305299239\"] 2022
Elsõ csoport / [Round1]Tryp - ZeRo vs. Helios - Lolko« Dátum: 2011. május 13. - 18:00:46 »
Hát szerintem már 6 óra van.
2023
Beszélgetés / Ki mibõl bukik? xD« Dátum: 2011. május 12. - 22:11:53 »Idézetet írta: vmx date=1305226596\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"8081\" data-ipsquote-contentclass=\"forums_Topic 5 kémia egyest kijavítani 3 hét alatt?Volt osztálytársam, tavaly megbukott( angolból és németbõl nyelvi tagozaton, komoly volt a gyerek ), de el sem ment a pótvizsgára. Amúgy nem fogok semmibõl, 4-5 vagyok ilyen semmi tanulással. 2024
DD Private / [DD] - Rising Sun (1. vid)« Dátum: 2011. május 12. - 22:05:36 »
Hát szerintem ennek az egésznek már lõttek amúgy.
2025
Elsõ csoport / [Round1]Tryp - ZeRo vs. Helios - Lolko« Dátum: 2011. május 12. - 22:02:40 »
Hát ha tudtuk volna hogy lehet holnapig akkor nem ezeket adtuk volna be, na de mindegy.
|