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. http://kepfeltoltes.hu/110315/pic1_www.kepfeltoltes.hu_.png[/img] http://kepfeltoltes.hu/110315/pic2_www.kepfeltoltes.hu_.png[/img] http://kepfeltoltes.hu/110315/pic3_www.kepfeltoltes.hu_.png[/img] 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. Nem tudom miért, de ilyet szerintem nem mindenki szokott éjjel megálmodni. Na, ezt az álmot kezdtem el megvalósítani. Kezdtem írogatni egy teljesen saját, egyedi RP módot, mely egy teljesen saját, egyedileg map-olt településen játszódik. Ahogyan írogattam, gondoltam legyen benne egy bevásárlóközpont. Amint az említett bevásárlóközpontot építgettem, hatalmas dolog ugrott be: mi lenne ha itt a /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. |