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. 286
Pluginok és Programok / y2fake« Dátum: 2011. március 16. - 14:01:45 »
A saját IP-den éred el...
Ami a felhasználási feltételeket illeti, nem módosítottam a SA-MP-ot, csak ezt használtam fel: http://wiki.sa-mp.com/wiki/Query_Mechanism 289
Pályakészítõ Liga / Beszélgetés« Dátum: 2011. március 15. - 20:48:57 »
Seville:
Utoljára aktív: Ma - 20:48:14 290
Pluginok és Programok / y2fake« Dátum: 2011. március 15. - 20:35:34 »y2fake
Hello Világ! Hadd mutassam be a y2fake-t, a (nagyon) picuri ál-SA:MP-szervert, amely 15 perc alatt íródott Free Pascal-ban! Ezen alkalmazás azoknak válik hasznára, akik szeretnének a (valószínûleg otthoni) szerverük nevében üzenetet hagyni, hogy miért is nem fut,és nem akarják, hogy egy valódi szerver zabálja az erõforrásaikat. A faker nem tesz mást, mint, hogy \"szimulálja\"a szerver válaszait a különféle lekérésekre. Természetesen, ezt használva a játékosok nem tudnak meg belépni a szerverre, de legalább látják majd a számukra otthagyott üzenetet. Letöltés: http://solidfiles.com/d/27b84/ (benne: .pas forrás + .exe futtatandó fájl) Programozta: Y2K (2011. március 15.) 291
Leírások/Útmutatók / [TUT] Teljesen automata ajtók és kapuk« Dátum: 2011. március 15. - 20:03:56 »Idézetet írta: ChuckNorris date=1300215006\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"6850\" data-ipsquote-contentclass=\"forums_Topic Szép,DE 292
Off Telep / Az összefüggés a World of Warcraft és a GTA San Andreas stuntere között.« Dátum: 2011. március 15. - 19:44:18 »
Szerintem hagyd a WoD-ot a fenébe, akkora szorzóik vannak, hogy az már überfelesleges!
293
Fórum Archívum (Témák/Fórumok) / [TUT] G-StyleZzZ, Strickenkid és ADreNaLiNe-DJ MySQL plugin-jai« Dátum: 2011. március 15. - 19:41:59 »![]() Bevezetés: Ez a téma hasonló \"PVar és sima változók\" címû \"tutorial\"-omhoz , ahol a PVar-okat és az egyszerû változókat hasonlítottam össze. Az a téma azt mutatta be, melyik gyorsabb az adatok beolvasásában. Mindegy, most három MySQL plugin-t fogunk összehasonlítani. 1: SA:MP MySQL Plugin 1.2.1 (StrickenKid) - http://forum.sa-mp.com/showthread.php?t=122983 2: MySQL Plugin R4 (G-StyleZzZ) - http://forum.sa-mp.com/showthread.php?t=56564 3: SAMP-MySQL v0.15 (ADreNaLiNe-DJ) - http://forum.sa-mp.com/showthread.php?t=7106 Kis statisztika: SA:MP MySQL Plugin 1.2.1 (StrickenKid) Funkciók: ![]() ![]() ![]() ![]() ![]() Sebesség: Majd kiterítjük MySQL Plugin R4 (G-StyleZzZ) Funkciók: ![]() ![]() ![]() ![]() Sebesség: Majd kiterítjük SAMP-MySQL v0.15 (ADreNaLiNe-DJ) MySQL Plugin R4 (G-StyleZzZ) Funkciók: ![]() ![]() Sebesség: Majd kiterítjük Lehet hülye vagyok, mert a funkciókat osztályozom! ![]() Kísérleti kód: A MySQL Plugin R4 (G-StyleZzZ) tesztjéhez a következõ kódot használjuk: new A SA:MP MySQL Plugin 1.2.1 (StrickenKid) tesztjéhez a következõ kódot használjuk: new A SAMP-MySQL v0.15 (ADreNaLiNe-DJ) tesztjéhez a következõ kódot használjuk: new Kísérlet eredménye: G-StyleZzZ plugin-jának ideje: 19 ms[/quote] 294
Leírások/Útmutatók / [Leírás] Jármû egy adott személy számára« Dátum: 2011. március 15. - 19:40:55 »JÁRMÛ EGY ADOTT SZEMÉLY SZÁMÁRA
Íme még egy TuT, melyben bemutatom, hogyan kell jármûvet készíteni, kizárólag egy adott személy számára. Elõször is, egy változót kell létrehoznunk a szkript elején: new Daniel; // a megnevezés nem számít, bármi lehet, de késõbb is azt használd A második lépés a jármû lerakása a játékmódba. Keressétek meg az OnGameModeInit()-et és azon belül a meglévõ AddStaticVehicle(...)-ek alá (ha vannak) rakjátok be a jármûvet: Daniel= AddStaticVehicle(...) hogy a szerver tudja, ez az a jármû, melybe csak az adott személy szállhat bele. Ha nem ismeritek az AddStaticVehicle(...)-ot, látogassatok el ide: http://wiki.sa-mp.com/wiki/AddStaticVehicle Daniel = AddStaticVehicle(451,1890.1632,1989.1708,13.4920,179.9223,6,6); // ez egy Turismo lesz az LV parkolóban Most jön az összetettebb rész, OnPlayerStateChange használtával ellenõrizzük, hogy a játékos beült-e a jármûbe: public OnPlayerStateChange(playerid, newstate, oldstate) { Ez lenne az egész! Ha minden úgy csináltatok, mint én, a jármûvet csak Daniel_Klaic vezetheti. Itt van, hogyan kéne, hogy kinézzen: //a szkript elején: Remélem segítettem, ha valamit nem értetek, kérdezzetek lent! Írta: [WebeR]SoaD123 (http://balkan-samp.com/forum/index.php?topic=8137.0) Fordította: Y2K (2010. augusztus 1.) 295
Leírások/Útmutatók / [TUT] G-StyleZzZ, Strickenkid és ADreNaLiNe-DJ MySQL plugin-jai« Dátum: 2011. március 15. - 19:39:08 »![]() Bevezetés: Ez a téma hasonló \"PVar és sima változók\" címû \"tutorial\"-omhoz , ahol a PVar-okat és az egyszerû változókat hasonlítottam össze. Az a téma azt mutatta be, melyik gyorsabb az adatok beolvasásában. Mindegy, most három MySQL plugin-t fogunk összehasonlítani. 1: SA:MP MySQL Plugin 1.2.1 (StrickenKid) - http://forum.sa-mp.com/showthread.php?t=122983 2: MySQL Plugin R4 (G-StyleZzZ) - http://forum.sa-mp.com/showthread.php?t=56564 3: SAMP-MySQL v0.15 (ADreNaLiNe-DJ) - http://forum.sa-mp.com/showthread.php?t=7106 Kis statisztika: SA:MP MySQL Plugin 1.2.1 (StrickenKid) Funkciók: ![]() ![]() ![]() ![]() ![]() Sebesség: Majd kiterítjük MySQL Plugin R4 (G-StyleZzZ) Funkciók: ![]() ![]() ![]() ![]() Sebesség: Majd kiterítjük SAMP-MySQL v0.15 (ADreNaLiNe-DJ) MySQL Plugin R4 (G-StyleZzZ) Funkciók: ![]() ![]() Sebesség: Majd kiterítjük Lehet hülye vagyok, mert a funkciókat osztályozom! ![]() Kísérleti kód: A MySQL Plugin R4 (G-StyleZzZ) tesztjéhez a következõ kódot használjuk: new A SA:MP MySQL Plugin 1.2.1 (StrickenKid) tesztjéhez a következõ kódot használjuk: new A SAMP-MySQL v0.15 (ADreNaLiNe-DJ) tesztjéhez a következõ kódot használjuk: new Kísérlet eredménye: G-StyleZzZ plugin-jának ideje: 19 ms[/quote] 296
Leírások/Útmutatók / [TUT] ZCMD parancsfeldolgozó« Dátum: 2011. március 15. - 19:34:20 »ZCMD PARANCSFELDOLGOZÓ
A zcmd elõnyei a dcmd-hez viszonítva:
Miért gyorsabb a zcmd, mint a dcmd? Gyorsabb, mivel a dcmd OnPlayerCommandText(), a zcmd pedig a CallLocalFunction() segítségével hívja a parancsokat. Illetve, amikor a játékos meghívja a parancsot, a dcmd végigfut az összes parancson, ellenõrizve, hogy azt keresi-e. Ez nem éppen szerencsés, ha a parancs (amely akár 300 körül is lehet, nagyobb munkákban), amelyet keres, nem létezik, és õ mégis végignézi mindegyiket (hiszen nem találta még meg) a szkriptben, ezzel pedig feleslegesen használja az erõforrásokat. Használat: A használata nagyon egyszerû. Töltsétek le a függvénykönyvtárat a lenti linkrõl! >>> LETÖLTÉS <<< A letöltött függvénykönyvtárat helyezzétek a pawno \"include\" mappájába. A szkript elejére írjátok be a(z) \"#include <zcmd>\" szöveget, majd kövessétek a lenti utasításokat egy parancs kidolgozásához. A parancs kidolgozása zcmd-vel nagyon egyszerû. Az alábbi példán minden be van mutatva: CMD:parancsneve(playerid, params[]){ // A \"CMD:\" elõtag után írd a parancsot, vagyis, amit a játékosnak a parancs futtatásához be kell írnia (ebben az esetben ez: /parancsneve) Az ilyen parancsot mindenen kívül rakjátok, például: public OnPlayerText(playerid, text[]){ playerid - a parancsot beíró játékos azonosítója params[] - a szóköz után rakott egyéb szövegek A szkriptekben két visszahívás is használható. OnPlayerCommandReceived(playerid, cmdtext[]) - Meghívódik, amikor a szerver megkapja a parancsot a játékostól. Ha itt return 0; szerepel, nem fut le a parancs. OnPlayerCommandPerformed(playerid, cmdtext[], success) - Meghívódik, amikor a parancs lefut. Ha itt return 0; szerepel, \"Unknown command\" üzenet fog megjelenni. Ezeket a visszahívásokat nem kell feltétlenül használni, csak, ha szükség van rá. Ha zcmd-t szeretnél használni filterszriptben, ne felejtsd ki az alábbiakat, különben nem fog mûködni (alapismeret) #define FILTERSCRIPT Ha szeretnéd ellenõrizni, hogy a játékos írt-e valamit a parancs után, használd ezt: if (isnull(params)) Ha sscanf-et is használsz, az ellenõrzés nem szükséges, az magától megteszi azt. Írta: LordShigi (http://balkan-samp.com/forum/index.php?topic=10516.0) Köszönet: ZeeX-nek a zcmd feldolgozó kidolgozásáért, és az útmutató angol nyelvû változatáért, melyet bõvítettünk Fordította: Y2K (2010. augusztus 1.) 297
Leírások/Útmutatók / [TUT] Teljesen automata ajtók és kapuk« Dátum: 2011. március 15. - 19:33:18 »TELJESEN AUTOMATA AJTÓK ÉS KAPUK
Elõzmények: Úgy egy hete azt álmodtam, hogy van egy RP szerverem. ![]() /bemegy és /kimegy helyett \"fotocellás\" ajtó lenne, mint IRL (In Real Life = a való életben)... Feltételek: Ebben a leírásban az IsPlayerInRangeOfPoint függvényt fogjuk használni, mely csak a v0.3a vagy annál újabb kiadásokban mûködik. Régebbi kiadás esetén a következõ függvény kódba való beillesztése szükségeltetik: stock IsPlayerInRangeOfPoint(playerid, Float:radius, Float:X, Float:Y, Float:Z){ Változó, változó, mindennek az alapja: Minden függvényen kívül hozzunk létre egy új változót, valahogy így: new valamicske; Az újonnan létrehozott változónak OnFilterScriptInit vagy OnGameModeInit alatt adjuk értékül a mozgatni kívált objektum azonosítóját. valamicske = CreateObject(objectid, X, Y, Z, elfX, elfY, elfZ); // itt a csukott állapot koordinátáit adjuk meg Idõzítés: Most hozzunk létre egy idõzítõt, mely adott idõközönként (ajánlott 500ms) meghív egy saját függvényt, mely ellenõrzi van-e játékos a közelben, és ha van, kinyitja az ajtót vagy a kaput: SetTimer(\"ajtotimer\", 500, true); Egy rövidke függvényecske: Végül íme maga a \"központi\" függvény, melyet igyekeztem bõségesen felkommentezni: forward ajtotimer(); // prototípus Írta: Y2K (2010. augusztus 12.) Frissítette: Y2K (2010. augusztus 23.) 298
Leírások/Útmutatók / [Leírás] Szöveg kiíratása a játékos feje fölé« Dátum: 2011. március 15. - 19:30:17 »SZÖVEG KIÍRÁSA A JÁTÉKOS FEJE FÖLÉ
Üdv! Sokan próbálnak szöveget megjeleníteni a játékos feje fölött vagy máshol. Erre a legegyszerûbb megoldás a 3D-szövegek használata. Elõször, hozzunk létre egy MAX_PLAYERS méretû tömböt, melyet a játékosok 3D-szövegének azonosítóinak tárolására használunk: new Text3D:3DTextIdentifiers[MAX_PLAYERS]; // név lehet bármi, de a Text3D: címke maradjon A játékosok csatlakozásakor, tehát az OnPlayerConnect(playerid) esemény alatt, adjunk értéket a tömbnek, a következõ módon: 3DTextIdentifiers[playerid] = Create3DTextLabel(\"példaszöveg\", COLOR_WHITE, 0.0, 0.0, 0.0, 25.0, 0, 0); A Create3DTextLabel paraméterei egyébként:
Ha szövegre például a játékos azonosítóját vagy más számot szeretnénk kiíratni, elõtte formáznunk kell azt... Szintén az OnPlayerConnect(playerid) esemény alatt vagy más tetszõleges helyen adjuk hozzá a 3D-szöveget a játékoshoz, például így: Attach3DTextLabelToPlayer(3DTextIdentifiers[playerid], playerid, 0.0, 0.0, 0.5); Az Attach3DTextLabelToPlayer paraméterei egyébként:
Más csak egy maradt hátra, a 3D-szöveg megsemmisítése az OnPlayerDisconnect(playerid, reason) esemény alatt: Delete3DTextLabel(3DTextIdentifiers[playerid]); Kiegészítés: Ha a szöveget és/vagy a színt meg szeretnéd késõbb változtatni, használd az Update3DTextLabelText függvényt, melyrõl bõvebben ITT olvashatsz. Írta: Y2K (2010. augusztus 4.) 299
Leírások/Útmutatók / [TUT] Színezett szöveg (0.3c)« Dátum: 2011. március 15. - 19:29:37 »
Íme, újra írásra szántam magam, s ezúttal a színek szövegésével (OMFG; reggel van) szövegek színezésével fogok foglalkozni. Alapvetõen a dolog nem nehéz, de hátha akad valaki, aki még nem ismeri. Szeretném megjegyezni, hogy ez csakis a 0.3c verzióban mûködik!
Magát a színt a kiírandó szövegbe kell beilleszteni {RRGGBB} formában. Az eddig használt integer típusban mentett színek 0xRRGGBBAA formátumban vannak mentve, így, ha megszeretnénk kapni egy szín beillesztendõ kódját, elég levenni a 0x-et (hex elõtag), illetve az utolsó két számot (alpha komponens), illetve hozzáadni a { és } jeleket. Konkrét példa: Kiírandó szöveg: Y2K SendClientMessageToAll(0xF81414AA, \"Y{FFAF00}2{6EF83C}K\"); Hát ez így great! Kicsit még magyaráznék, utána jön egy kis trükk... Az Y-nak nem adtam meg még egyszer a színét, hiszen a függvény elsõ paramétere a kezdõszínt adja, azaz, amivel a szöveg legeleje kiíródik. Ha esetleg nekünk így nem tetszene, a következõ a megoldás: SendClientMessageToAll(-1, \"{F81414}Y{FFAF00}2{6EF83C}K\"); Remélem érthetõ! Most vetõdik fel a kényelmetlenség: mi történik, ha neadj\'isten 1000 karakteres szöveget szeretnénk kiszínezni. Oda-vissza ugráljuk a kódban, ki-be másolgatva a színkódokat? Íme a trükkje: definiálni kell a színkódokat, nem megfeledkezve a { és } jelekrõl, pl.: #define TC_RED {F81414} Most a definiált színkódokat be tudjuk illeszteni, ha lezárjuk a szöveget (\" karakterrel), odaírjuk a definiált nevet, majd újra megnyitjuk a szöveget és írjuk tovább, pl.: SendClientMessageToAll(-1, \"\"#TC_RED\"Y\"#TC_ORANGE\"2\"#TC_GREEN\"K\"); Máris sokkal átláthatóbbak a színek, és egyszerûbb is õket létrehozni! SendClientMessageToAll(-1, \"\"#TC_RED\"KÖSZÖNÖM A FIGYELMET! #\"TC_GREEN\"KÉRDÉSEK?\"); 300
Pályakészítõ Liga / Beszélgetés« Dátum: 2011. március 15. - 18:59:58 »Idézetet írta: V.V date=1300209072\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"6787\" data-ipsquote-contentclass=\"forums_Topic Elvileg Ma Este Kapjuk Meg Õket. |