Üzenetek megjelenítése

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.


Üzenetek - Zsolesszka

Oldalak: 1 ... 18 19 [20] 21 22 ... 136
286
Beszélgetés / Mi az "álmod"?
« Dátum: 2013. június 26. - 20:03:43 »
Négyes találat az ötös lottón.

287
Segítségkérés / Nem müködnek a parancs részei .
« Dátum: 2013. június 25. - 19:16:00 »
Mert a params változó ezeket az adatokat tárolja, most példaként, a beírt parancs:
/set world Kojak 23
Ebbõl a pirossal jelölt részt, tárolja a params változó.
Ezt áthelyezed sscanf segítségével az acmd változóba, majd strcmp segítségével próbálod összehasonlítani:
if( !strcmp( \"world Kojak 23\", \"world\", true ) )
                                      ^^
                                       ||
                                 Ez az acmd tartalma.
Így már látod miért nem mûködik.

288
Segítségkérés / Object láthatóságának távolsága
« Dátum: 2013. június 25. - 12:38:27 »
Idézetet írta: cosmos date=1372066801\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"38830\" data-ipsquote-contentclass=\"forums_Topic


http://wiki.sa-mp.com/wiki/CreateObject
 
igen már láttam, utána is írtam, de akkor warningot dob
 
[/quote]
Akkor ha minden igaz nem a legfrissebb a_samp.inc fájlt használod.
A streamer plugin-nál meg a CreateDynamicObjectEx funkcióban van lehetõség látótávolság beállítására.

289
Segítségkérés / Pawno unable
« Dátum: 2013. június 24. - 18:19:52 »
Általában pont az szokott lenni a baja hogy frissen telepített az operációs rendszered és hiányzik valamilyen fájl talán fájlok.
Egy idõben az msn telepítése megoldotta a dolgot de az megszûnt, próbálj valamilyen
redistributable csomagot feltelepíteni, hátha segít.

290
Fórum Archívum (Témák/Fórumok) / törlendõ
« Dátum: 2013. június 23. - 17:21:01 »
Idézetet írta: Sramm date=1371999098\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"44770\" data-ipsquote-contentclass=\"forums_Topic
Valóban, csakhogy ha Sajtoscsokiskának kisebb az id-je vele fog elõször visszatérni és nem sajtoscsokissal, akik keresünk.
 
Így van mivel a for ciklus 0 tól indul el tehát a legkisebb id-vel rendelkezõ játékost ellenõrzi és ahol egyezést talál azzal tér vissza, erre már sokan próbáltak megoldást találni de az újabb sscanf pluginban már van olyan visszatérési értéke a sscanf-nek ami jelzi hogy több esetleges találat is létezik.
 
0) Y_Less
1) [CLAN]Y_Less
2) Jake
3) Alex
4) Hass
This code:
pawn Code:
 
new ids[3], i;
if (sscanf(\"Le\", \"?<MATCH_NAME_PARTIAL=1>u[3]\", ids)) printf(\"Error in input\");
for (i = 0; ids != INVALID_PLAYER_ID; ++i)
{
    if (ids == cellmin)
    {
        printf(\"Too many matches\");
        break;
    }
    printf(\"id = %d\", ids);
}
if (i == 0) printf(\"No matching players found.\");

 

[/quote]
Így fel lehet sorolni azokat a játékosokat akiknek a nevükben egyezés található a keresett kifejezésre.
Persze meg kell határozni mennyi találattal térjen vissza new ids[3] ezt az értéket növelhetjük, persze a keresett név részletet is legalább minimum 3 karakternyire határozzuk meg valóban kevesebb az esélye hogy 3-nál több egyezõ találatot kapunk.

291
Fórum Archívum (Témák/Fórumok) / törlendõ
« Dátum: 2013. június 23. - 13:15:00 »
Jó hát én azoknak írtam akik szeretnék használni hogy ne tegyék, mivel a kód hibás bármennyire is bizonygatod hogy nálad jó, én elfogadom hogy neked jó de másokat nem kell megtéveszteni. 
Amúgy Sramm által posztolt verzió meg praktikusabb és egyszerûbb azt javaslom bárkinek. :D
A kód a céljára megfelelõen lett tesztelve, az átírások debug információk megjelenítésére kerültek bele melyek a (hibás) mûködést bizonyítják, annak eredeti mûködését nem befolyásolják, viszont sokkal egyszerûbben lehet elvégezni a tesztelést mintsem 20 npc-t felküldeni a szerverre és az alapján tesztelni. A végeredményen nem javítana, a tökéletes mûködés bizonyítása már ezek után a te feladatot.

292
Fórum Archívum (Témák/Fórumok) / törlendõ
« Dátum: 2013. június 23. - 12:21:34 »
Értem, hát elkezdtem tesztelni igaz kivettem a GetPlayerName eljárást de így érdekes módon az strcmp már hamis eredményt adott vissza abban az esetben ha üres karakterlánccal lett összehasonlítva, szóval el se jutottam az strfind részhez:
 
#include <a_samp>
#define GetPlayerName(%0,%1,%2) macskasszendvics = GetName[%0]
new
GetName[MAX_PLAYERS][128];
public
OnFilterScriptInit()
{
GetName[0] = \"Vaami\";
GetName[1] = \"mi\";
GetName[2] = \"i\";
GetName[3] = \"mi\";
GetName[4] = \"ami\";
GetName[5] = \"Valami\";
GetName[6] = \"alami\";
printf(\"\\n\\n\\nGetPlayerID: %d\\n\\n\\n\", GetPlayerID(\"Val\", 1));
return 1;
}
stock GetPlayerID(const sprintvan[], demar=0)
{
new macskasszendvics[128];
for(new i = 0; i < MAX_PLAYERS; i++)
{
      printf(\"strcmp elõtt: %s <-> %s = %d\", macskasszendvics, sprintvan, i);
      GetPlayerName(i, macskasszendvics, sizeof(macskasszendvics));
      if(strcmp(macskasszendvics, sprintvan, true) == 0)
      {
         printf(\"strcmp után: %s <-> %s = %d\", macskasszendvics, sprintvan, i);
         return i;
      }
}
new sajtkukac = -1;
new kutyasmacska[128];
new nefurgyele = -1;
if(demar)
{
      for(new i = 0; i < MAX_PLAYERS; i++)
      {
            GetPlayerName(i, kutyasmacska ,sizeof(kutyasmacska));
            if(!strfind(kutyasmacska, macskasszendvics[demar], true, 0))
                  nefurgyele++, sajtkukac=i;
            if(nefurgyele > 0) return -2;
      }
}
return sajtkukac;
}

 

strcmp elõtt:  <-> Val = 0
strcmp elõtt: Vaami <-> Val = 1
strcmp elõtt: mi <-> Val = 2
strcmp elõtt: i <-> Val = 3
strcmp elõtt: mi <-> Val = 4
strcmp elõtt: ami <-> Val = 5
strcmp elõtt: Valami <-> Val = 6
strcmp elõtt: alami <-> Val = 7
strcmp után:  <-> Val = 7
GetPlayerID: 7
[/quote]
Ez az elsõ része annak hogy az IsPlayerConnected használata szükséges. :D


Most megnézem az strfind részét is.
Edit: Nem is vizsgálom tovább mivel az strfind résznél:
 

if(!strfind(kutyasmacska, macskasszendvics[demar], true, 0))

 
Nem látom az eredeti keresett szövegrészhez tartozó változó használatát (sprintvan). Így igazából nem értem hogy miként került át a macskasszendvics[demar] változóba a keresett kifejezés mivel semmi erre utaló eljárással nem találkoztam elõtte.  Amúgy ez a változó macskasszendvics[demar] a legutolsónak csatlakozott játékos nevét tárolná, persze azt is csak akkor ha használva lenne az IsPlayerConnected.
Ezért szerintem vizsgáld át újra a kódod és ha tényleg megfelelõen mûködik azután postold ki a fórumra.

293
Fórum Archívum (Témák/Fórumok) / Re:[STOCK] GetPlayerID
« Dátum: 2013. június 23. - 11:20:43 »
Játékos adat lekérdezésénél minden esetben for ciklusban alkalmazni kellene az IsPlayerConnected eljárást mivel ez egy elég egyszerû adatot tartalmazó eljárás, emiatt sokkal gyorsabban lefut mint a GetPlayerName funkció.
Az strfind meg -1-el tér vissza ha nem talál egyezést emiatt kicsit eltér a használata a többi funkciótól pl.: strcmp-tõl.
Míg az strcmp-nél alkalmazható a tagadás jele a függvény elõtt addig az strfind-él már rossz eredményhez vezethet.
 
if(strcmp(cmdtext, \"/sayhello\", true) == 0)
if(strfind(\"Are you in here?\", \"you\", true) != -1)

 
Mint látod a kettõ függvénynél a visszatérési értéket másra vizsgáljuk.
Az strfind vissza adja az azonosság kezdetének pozícióját, tehát ha nulla értéket ad vissza az már azt jelenti hogy a legelsõ karaktertõl már egyezik a keresett kifejezés.
 
strfind(\"Are you in here?\", \"Are\", true)[/quote]
Ha te letagadod a funkció elõtt akkor elég sok esetben hamis eredményt fogsz kapni, mivel a funkció elõtti letagadás (!): bármilyen eredmény jó ami nagyobb nullánál.
De az strfind-él a nulla értékû visszatérés már egyezést\\találatot jelent.

294
Segítségkérés / Ban Offline ként.
« Dátum: 2013. június 23. - 10:53:17 »
Megkeresed a regisztrációs adatait és kitiltod, nem tudom mi olyan nehéz azon. :D
Tudod a játékos nevét az alapján megkeresed, ha meg IP alapján szeretnéd tiltani a server_log.txt fájl is tartalmazza (meg általában minden normálisabb regisztrációs rendszer) ki melyikkel lépett fel. Bemásolod a samp.ban fájlba az IP-t majd újra betöltöd a futó samp szerveren /rcon reloadbans, vagy újraindítod a szervert, kész.

295
Segítségkérés / enum
« Dátum: 2013. június 22. - 21:28:48 »
#include <a_samp>
enum Adat
{
Penz
};
new PlayerInfo[MAX_PLAYERS][Adat];
public
OnPlayerCommandText(playerid, cmdtext[]) // Visszahívás, azért, mert a samp_szerver.exe meghívja ezt az eljárást mikor egy játékos / jellel kezdõdõ szöveget ír be a chatbe.
{
if(strcmp(\"/penzad\", cmdtext) == 0)
{
PlayerInfo[playerid][Penz] += 500;
return 1;
}
if(strcmp(\"/penztarca\", cmdtext) == 0)
{
new
   string[256];
format(string,sizeof(string),\"%d$ van a pénzrárcádban...\",PlayerInfo[playerid][Penz]);
SendClientMessage(playerid, 0xFFFF00AA, string);
return 1;
}
return 0;
}

296
Segítségkérés / Dialog Input - csak számot írhat be
« Dátum: 2013. június 22. - 19:41:54 »
Idézetet írta: tudvari date=1371905095\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"38763\" data-ipsquote-contentclass=\"forums_Topic
Köszi ez jó lenne,de az a baj,hogy ezek után is stringnek érzékeli az inputtextet.
 
error 033: array must be indexed (variable \"inputtext\")

 

Mert az input text az \"string\" pontosabban arra a célra van létrehozva az IsNuneric függvény csak ellenõrzi hogy a karakterlánc számból áll-e.
Viszont te, integer típusként akarod felhasználni az inputtext-et ezért jelzi a fent idézett hibát.
Át kell alakítanod egy változóba az inputtext-et mégpedig így:
 
new value = strval(inputtext);

 
Majd a value nevezetû változó fogja tárolni a számot és ezt használhatod fel.
 
if(value == 12)

297
Segítségkérés / enum
« Dátum: 2013. június 22. - 09:04:02 »
Mert a parancsokat egy úgynevezett visszahívásba kellene illeszteni, az pedig az OnPlayerCommandText.

298
Segítségkérés / enum
« Dátum: 2013. június 22. - 07:18:16 »
PlayerInfo[playerid][Penz][/quote]

299
Segítségkérés / Streamer plugin-tol errorozik
« Dátum: 2013. június 17. - 17:48:34 »
BlackJack\" post=\"434558\" timestamp=\"1371413602\"]
Igyse jo!
 
[/quote]
Mert ha jót töltöttél le és jó helyre másoltad, már lehet egy másik .dll fájlt is hiányol szóval azzal is el kell ugyanezt játszani.
Kb 3 .dll fájlt szokott hiányolni amiknek egymáshoz nagyon hasonló nevük van, szóval figyelmesen olvasd el a hiányzó .dll fájl nevét és az alapján pótold.
Ha mindent jól csinálsz akkor nem lesz probléma vele, ha mégis akkor kezd újra az egészet, figyelmesen olvasd el a .dll fájl nevét és azt töltsd le. Majd vagy a samp szerver .exe mellé másold vagy a /windows/system32 mappába.

300
Segítségkérés / R**SAMP: Fake kill
« Dátum: 2013. június 16. - 18:23:17 »
Jha nem rossz, hát akkor ez se jó.
Akkor mi lenne ha létrehoznál egy változót annak ellenõrzésére hogy a játékos lespawnolt-e?
 
new bool:Spawn_ed[MAX_PLAYERS];

 
OnPlayerConnect alá:
 
Spawn_ed[playerid] = false; 

 
OnPlayerSpawn alá:
 
Spawn_ed[playerid] = true; 

 
Majd OnPlayerDeath alatt ellenõrizni:
 
if(Spawn_ed[playerid]) 
{
    Spawn_ed[playerid] = false;

 
 persze nem tiltani a játékost mert lehet más játékosnak éppen nem megfelelõ értékre van állítva, de csak akkor adni neki pontot ha ez a változó true értéken van, persze killeridre is alkalmazni kell valahogy.
De ez megint csak ötlet, mivel abban bízok hogy nem hívódik meg az OnPlayerSpawn ha ezt a progit használják.

Oldalak: 1 ... 18 19 [20] 21 22 ... 136
SimplePortal 2.3.7 © 2008-2026, SimplePortal