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. 1711
Szkript kérések / Név átalakító?! Passz« Dátum: 2012. Január 25. - 01:43:05 »
miért kéne ehhez fájl rendszer?
simán eltárolod egy mátrix-ban és kész... mátrix = 2 dimenziós tömb 1. dimenzió = MAX_PLAYERS ( megéri redefiniálni slot számra a mód elején ) 2. dimenzió = string ( szöveg ) pl: [pawn]new FakeName[MAX_PLAYERS][20];[/pawn] és még arra is jó hogy olyan karaktereket is tudsz tárolni, amiket az SAMP nem enged használni névben 1712
Segítségkérés / GetMaxPlayers() / MAX_PLAYERS melyik a jobb?« Dátum: 2012. Január 23. - 02:02:19 »
MAX_PLAYERID vagy GetMaxPlayers()? én személy szerint egyiket se használnám ha tényleg a sebesség csökkentésre mész akkor a leggyorsabb változatot ajánlom...amit szerintem már elõttem is megemlítettek csak kicsit rosszul fogalmazták meg...
\"a foreach azért jobb, mert ott a MAX_PLAYERS mindig anyi ahány játékos van a szerveren.\" szerintem ez téves, mivel ha tényleg így mûködik akkor egy rakás *****, már bocs a legnagyobb ID-t kell eltárolni fel-le csatlakozásoknál változtatni ezt az értéket ha mondjuk van fent 3 játékos: ID 0 ID 3 ID 8 akkor is max 8x lép be a ciklus magba mivel a legnagyobb ID 8 és a ciklus 1. sorába ezt írd: [pawn]if(!IsPlayerConnected(i)) { continue; }[/pawn] és máris átugorja a \"lyukakat\" én személyszerint igy használnám de te döntesz, ennél gyorsabb módszer szerintem nincs, azaz talán 1 akad... 1713
Fórum Archívum (Témák/Fórumok) / Index Script« Dátum: 2012. Január 21. - 17:45:28 »
jelezném, hogy nem minden idõjáráson látszódik a fény
0 és 1-en például nem látszik, tehát aki ezt a kódot alkalmazza az az idõjárásra is figyeljen 1714
Segítségkérés / Inputtext, életkor« Dátum: 2012. Január 21. - 16:13:23 »
te mirõl beszélsz?
nézd már meg...én válaszoltam a kérdésére 1715
Segítségkérés / Inputtext, életkor« Dátum: 2012. Január 21. - 15:55:47 »
hát ha leírnád hogy mit is kéne keresni talán könnyebb lenne megtalálni
amugy sorolom: [pawn]if(strval(inputtext))[/pawn] gondolom elég kezdõ vagy és kb gõzöd sincs ez mi szóval a legnagyobb hova hogy te irtad vicceltem na szóval így kell kinézzen: [pawn]if(dialogid == 7) { if(!response) return 0; SCM(playerid, COLOR_GREEN, \"Kor beállítva.\"); PlayerInfo[playerid][kor] = strval(inputtext); }[/pawn] http://wiki.sa-mp.com/wiki/Strval ez a függvény arra jó, hogy a STRING-et ( szöveg ) INTEGER-é ( egész számmá ) alakítja amit te írtál kód: [pawn]if(strval(inputtext))[/pawn] ez annyit jelent, hogy ha a kor 1 ( ha nincs == X vagy negáció ( ! a függvény elõtt ) akkor 1-nek értelmezi ) tehát ha 1-et irsz be kornak akkor mûködik a te kódod is na további jó munkát 1716
Segítségkérés / Letörölt pwn visszaállítása.« Dátum: 2011. December 25. - 01:41:09 »
hát akkor a DEAMX helyett GetDataBack-et ajánlom...a vinyóról letörölt file-okat visszalehet állítani vele...én egyszer a HRP módját visszahoztam vele formázás után
1717
Segítségkérés / Eltérõ típus?« Dátum: 2011. December 23. - 17:30:48 »
http://wiki.sa-mp.com/wiki/Strmid
ezzel próbáld meg én személy szerint ezzel töltöm az egyik string-et a másikba és mûködik nálam...lehet nálad is megérne egy próbát 1718
Leírások/Útmutatók / [Leírás] Debugolás« Dátum: 2011. December 22. - 05:03:50 »
Egyre több olyannal találkozom mostanában fórumon, hogy a pawno nem ír errort / warning-ot, de \"mégsem mûködik a kód\" és ezért kérnek segítséget...tehát szintaktikailag nincs hiba hisz a kód lefut, max nem úgy ahogy a tervezõ elgondolta . Persze erre is van megoldás, meg kell keresni a \"hibát\"...elõször ajánlatos csak simán \"átfutni\" a kódot akár többször is hátha észre veszik a hibát...ha nem eléggé szembetûnõ akkor komolyabb keresést igényel...akkor lehet alkalmazni azt a leírást amit én most leírok...én például így találom meg a hibákat, de létezik más fajta megoldás is...
Elmélet: 3 lépésbõl áll a hiba megtalálása + megoldása: 1. lépés: Kód futásának ellenõrzése 2. lépés: Adatok kiírása 3. lépés: Hiba azonosítása + Kód módosítás Szituáció: Localhost-os szerver ( vagy legalábbis a szerver ablakhoz hozzáférek ). Forráskód: [pawn]#include <a_samp> new kocsi = INVALID_VEHICLE_ID; public OnFilterScriptInit() { CreateVehicle(560,1.0,2.0,3.0,4.0,1,1,-1); return 1; } public OnFilterScriptExit() { if(kocsi != INVALID_VEHICLE_ID) { DestroyVehicle(kocsi); } return 1; }[/pawn] Mit is szeretnék? Amikor betöltöm a scriptet akkor lerakjon egy jármûvet a megadott helyre, amikor kitöltöm ( jobb szót nem találtam rá ) akkor törölje ki a jármûvet. Mi a hiba? Kitöltéskor nem tûnik el a jármû. DEBUG 1. szakasz: ( Kód futásának ellenõrzése ): [pawn]#include <a_samp> new kocsi = INVALID_VEHICLE_ID; public OnFilterScriptInit() { print(\"START\"); CreateVehicle(560,1.0,2.0,3.0,4.0,1,1,-1); print(\"START2\"); return 1; } public OnFilterScriptExit() { print(\"EXIT\"); if(kocsi != INVALID_VEHICLE_ID) { print(\"EXIT2\"); DestroyVehicle(kocsi); } print(\"EXIT3\"); return 1; }[/pawn] Eredménye: ( szerver ablakba kiíródnak ezek a szövegek ) START START2 EXIT EXIT3 Következtetés: Látom, hogy az EXIT2 nem íródott ki...de vajon miért? [pawn]if(kocsi != INVALID_VEHICLE_ID)[/pawn] ez a feltétel nem érvényesült, vajon mitõl lehet ez? talán a változó amit ellenõrzök nem azt az értéket kapja amit szeretnék? DEBUG 2. szakasz: ( Adatok kiírása ): [pawn]#include <a_samp> new kocsi = INVALID_VEHICLE_ID; public OnFilterScriptInit() { CreateVehicle(560,1.0,2.0,3.0,4.0,1,1,-1); printf(\"Start: %d\",kocsi); return 1; } public OnFilterScriptExit() { printf(\"Exit: %d\",kocsi); if(kocsi != INVALID_VEHICLE_ID) { DestroyVehicle(kocsi); } return 1; }[/pawn] Eredménye: ( szerver ablakba kiíródnak ezek a szövegek ) Start: 65535 Exit: 65535 Következtetés: 65535 = INVALID_VEHICLE_ID...tehát a \"kocsi\" nevû változó VALAMIÉRT nem kapta meg a várt értékét... DEBUG 3. szakasz: ( Hiba azonosítása + Kód módosítás ) Rájöttem, hogy valami miatt a \"kocsi\" változó értéke 65535 maradt, vajon mitõl is lehetett ez? Elértem volna a jármû limitet? VAGY szimplán figyelmetlenül kódoltam és valamit nem úgy írtam meg ahogy kellett volna? ( ilyenkor több hiba lehetõséget érdemes számba venni, hisz egy vagy akár több oka is lehet a hibának ) Nézegetem a kódot és látom, hogy a \"kocsi\" változóhoz nem rendeltem hozzá a CreateVehicle függvény visszatérési értékét...hát itt a hiba [pawn]#include <a_samp> new kocsi = INVALID_VEHICLE_ID; public OnFilterScriptInit() { kocsi = CreateVehicle(560,1.0,2.0,3.0,4.0,1,1,-1); return 1; } public OnFilterScriptExit() { if(kocsi != INVALID_VEHICLE_ID) { DestroyVehicle(kocsi); } return 1; }[/pawn] és máris lefut a kód, úgy ahogy szerettem volna Ez egy elég egyszerû szemléltetés volt, bonyolultabb kódoknál is alkalmazható, tapasztalataim szerint . Nem szükséges mindig mind a 3 lépés ! Amikor nem fut úgy a kód, ahogy szeretnénk és ránézésre meglátjuk a hibát akkor a 3. lépést alkalmazzuk...viszont van olyan eset, hogy vagy az 1-es vagy a 2-es lépésre van szükség... Én 2 gépen dolgozom egyszerre, egyiken programozom a másikon tesztelek, ( szerver a programozós gépen fut ) és ott is alkalmazható a szerver ablakba kiírásos módszer, viszont ha valakinek valami oknál fogva nem megoldható a szerver ablakhoz való hozzáférés akkor nem print és printf alkalmazása ajánlott hanem SendClientMessage vagy SendClientMessageToAll...persze ha szükséges akkor elõtte szöveg formázás format-al ( 2-es szakasz )... ( ha nem férünk hozzá a szerver ablakhoz és mégis print / printf-et alkalmazunk akkor a szerver log fájljában találhatjuk meg a \"végeredményeket\" ) Wiki-s linkek: http://wiki.sa-mp.com/wiki/Print http://wiki.sa-mp.com/wiki/Printf http://wiki.sa-mp.com/wiki/Format http://wiki.sa-mp.com/wiki/SendClientMessage http://wiki.sa-mp.com/wiki/SendClientMessageToAll 1719
Segítségkérés / Respawn készítés.« Dátum: 2011. December 21. - 20:15:29 »
1. nincs XFire-m
2. csak fórumon segitek tehát ird le pontosan hova teszi a jármûveket 1720
Segítségkérés / Respawn készítés.« Dátum: 2011. December 21. - 11:56:22 »
akkor probáld ki, hogy irsz egy /gotocar parancsot beszállsz, kiszállsz hagyod eltünni aztán gotocar-al megnézed hova rakja pontosan a jármûvet.../dl-el megtudod nézni mi a jármû ID-ja...próbáld ki több jármûvel is és írd le a tapasztalatokat...1 helyre rakta e vagy többre és hova rakta pontosan...
1721
Segítségkérés / Respawn készítés.« Dátum: 2011. December 21. - 09:44:56 »
hát azért jó lett volna 1 jármû lerakást bemásoltál volna
amugy szerintem respawnolódik, próbáld ki, hogy a spawn helyén szállsz ki és oda rakja e vissza... http://wiki.sa-mp.com/wiki/CreateVehicle http://wiki.sa-mp.com/wiki/AddStaticVehicleEx ezeknél a függvényeknél van \"respawn idõ\" ( respawn_delay ), amit onnantól mér miután kiszálltál...gondolom ha rövid akkor CreateVehicle-t használsz mivel ott sec-ben lehet megadni...vagy írd nagyobbra vagy mint sokan mások -1 -re és szerintem meg is oldódik a probléma, viszont ha saját funkció respawnolja akkor már kicsit bonyolultabb mert akkor máshol kell belenyúlni... 1722
Segítségkérés / Újabb sscanf error(033)« Dátum: 2011. December 21. - 09:33:32 »Idézetet írta: ɐʞzssǝlosz date=1324422733\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"14498\" data-ipsquote-contentclass=\"forums_Topic array must be indexed (variable \"k\")ööö nem tudom ti hogyan használjátok a tömböket én személy szerint nem csak string-eket tárolok bennük bár egy asszociativ tömb-ben nehéz is lenne mondjuk pl így is lehet kezelni: [pawn] new k[32]; // akkor 0-tól 31-ig indexelt cellái vannak k[0] = 1; k[24] = 6253; if(k[8] == 74) { // ... } Fuggveny(k[3]); [/pawn] ja és szerintem itt a megoldás az lehetne hogy ha string-et ( szöveget ) tartalmaz a \"k\" tömb akkor igy hasonlítsd össze az \"értékét\" az integer tipussal: [pawn]if(strval(k) == kulcs)[/pawn] a szövegbõl számot csinál, bár ha a kulcs is szöveg akkor strcmp megoldásra van szükséged 1723
Segítségkérés / nem csinál semit« Dátum: 2011. December 20. - 16:49:27 »
akkor gondolom feljebb...
[pawn]AttachObjectToVehicle(obj,GetPlayerVehicleID(playerid), -0.5, -0.2, 0.8, 2.0, 2.0, 3.0);[/pawn] akkor ezt a sort kell módosítanod...pontosabban azt amit piros-al jelöltem... http://wiki.sa-mp.com/wiki/AttachObjectToVehicle bár hiába linkelem gondolom sokat nem értesz belöle :S nagyobbra kell írnod azt amit pirossal jelöltem...mondjuk 1.0-ra...próbálgatnod kell melyik lenne a legjobb E: ja látom itt nem müködik a színezés akkor ami között van 1724
Segítségkérés / nem csinál semit« Dátum: 2011. December 20. - 16:01:22 »
hova akarod te rakni?
1725
Segítségkérés / kocsik berakása FilterScript-el,hol a gond?« Dátum: 2011. December 20. - 14:46:36 »
ahogy itt irtam...
http://sampforum.hu/index.php?topic=18555.msg202723#msg202723 [pawn]if(vehicleid == kocsi11 || vehicleid == kocsi12)[/pawn] || = Vagy && = És Tehát a kód ami lefut: [pawn]HA(vehicleid = kocsi11-el VAGY vehicleid = kocsi12-vel) { // akkor lefut ez a kód }[/pawn] |