Ü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 ... 17 18 [19] 20 21 ... 136
271
Segítségkérés / Symbol error
« Dátum: 2013. július 08. - 14:57:21 »
Mert copy paste módszerrel nem fog menni, fõleg kezdõként. :D
Kezd az alapoknál, parancs íráshoz:
http://wiki.sa-mp.com/wiki/OnPlayerCommandText
http://wiki.sa-mp.com/wiki/Strtok

272
Segítségkérés / Kiterjesztett kirajzolódási távolság
« Dátum: 2013. július 07. - 20:48:42 »
Egyelõre ne foglalkozz vele, majd ha az összes objectedet átírtad CreateDynamicObject ill. CreateDynamicObjectEx-re, és a probléma továbbra is fenn áll, akkor a látótávolság növelése csak rontani fog a helyzeten.
Ha a probléma továbbra is fenn marad akkor egyszerûen túl mapolt a szervered azokon a helyeken ahol nehezen jelennek meg az objectek.
Játék közben nyomd le az F5 gombot és tartsd lenyomva keress egy olyan adatsort hogy RWObjects ha ott az érték tartósan 999 vagy 1000 akkor bizony túl van mapolva az adott terület, azokon a helyeken a streamer nem tudja ellátni normálisan a feladatát, gondolom nem tudod ezért leírom hogy a streamer plugin a játékosok helyzetéhez viszonyítva hozza létre illetve törli az objecteket, ahogy mozdul a játékos és elhagyja az objecteket a megjelenítési távolságon kívül akkor törli az adott játékosnak azokat az objecteket ahogy közelít másik felé úgy hozza létre õket, ezzel éri el hogy látszólagosan túl lehet lépni az 1000-es limitet amit valójában sosem tesz meg.
Ezért fontos hogy csak CreateDynamicObject-tel hozd létre õket, mivel azokat folyamatosan tudja törölni illetve létrehozni a játékosok pozíciójához képest.
Ha alap CreateObjecttel hozod létre akkor csökkented az 1000 limitet.
Példaként ha létrehozol 800 darab CreateObjectet akkor a streamer pluginnak csak 200 darab szabad slotja marad amin dolgozhat, ami valójában nagyon kevés.
Mivel a CreateObject és a többi hasonló függvény állandóan létrehozva tartja az objektumokat még akkor is ha képletesen 100 km-re van tõle a játékos és nem is látja azokat.

273
Segítségkérés / Kiterjesztett kirajzolódási távolság
« Dátum: 2013. július 07. - 19:28:24 »
Pont ez az egyik hiba forrás, ne használj CreateObject se CreateObjectEx funkciót, mert azok global objectek és csökkentik az egy idõben egy helyen megjeleníthetõ objectek maximális számát ami ugye 1000 jelenleg.
Csak a streamer plugin által kínált CreateDynamicObject illetve a CreateDynamicObjectEx-et használd. Amúgy ez utóbbinál állíthatod a láthatóság távolságát is (Float:drawdistance = 0.0).

274
Segítségkérés / Kiterjesztett kirajzolódási távolság
« Dátum: 2013. július 07. - 19:21:33 »
Használsz alap sima CreateObject funkciót is?

275
Segítségkérés / 3DText ID Format
« Dátum: 2013. július 07. - 08:04:56 »
format(str, sizeof(str), \"3DText ID: %i\", _:ddtext);

276
Segítségkérés / MySQL felhasználó létezik-e?
« Dátum: 2013. július 05. - 19:48:27 »
mysql_store_result();
        if(mysql_num_rows() > 0)
        {
                van=1;
        }
        else
        {
                van=0;
        }
mysql_free_result();

277
SA-MP / Open.mp: Szerverfejlesztés / GetPercentForValue
« Dátum: 2013. július 05. - 08:44:42 »
Érdekes egy kód bár sok hasznát nem látom sa-mp terén, ez inkább egy kis százalékszámítás általános iskola 3. 4. osztály. :D
De ha már lebegõpontos értékkel tér vissza, akkor használhatod a Float: elõtagot az eljárás elõtt, és ki lehet venni a plusz egy változó használatát is:
 
Float:GetPercentForValue(Float:maxvalue, Float:value)
        return value / (maxvalue / 100);

278
Segítségkérés / MySQL
« Dátum: 2013. július 03. - 21:56:14 »
De azt jelenti, csak hogy a samp SQLite verziója .db kiterjesztést használ adatbázisoknál ezért a DB kifejezés leginkább arra vonatkozik. (database.file vagyis DB fájl) ( ha nem hiszed nézd meg a windows mit ír ki típusként a fentebb szereplõ példában a ../scriptfiles/users.db fájlnál)
Mysql-nél sehol nincs ilyen rövidítés használva az egyszerûen, mysql adatbázis.

279
Segítségkérés / MySQL
« Dátum: 2013. július 02. - 22:27:50 »
Ez alap sa-mp.
Hát akkor nem kellene ezt írni:
 
Abban tudnál segíteni, hogy kiolvasok DB-bõl egy sort \"SELECT * FROM accounts WHERE password=\'1234\'\"[/quote]
Edit:
Amúgy mire gondoltál akkor?

280
Segítségkérés / MySQL
« Dátum: 2013. július 02. - 22:22:44 »
A * jelöli hogy minden adattal vissza térjen amennyi adatsorban a feltételeknek egyezést talál.
Játékos regisztrációs adatnál két dolgot szokás megadni feltételnek mégpedig a felhasználó nevet illetve a jelszót.
 
SELECT * FROM accounts WHERE name=\'anorennia\' AND password=\'1234\'

 
Ez minden olyan sorral visszatért ahol a felhasználó név és a jelszó megegyezik, ez igaz általában egyetlen egy sor, nem részletezem miért, erre te magad is rájössz.
Na mivel régóta nem írtam db adatkezelést, így biztos lesz mit alakítani rajt de mûködését talán megérted belõle:
 
#include <a_samp>
#define FILTERSCRIPT
#include <zcmd>
new
DB:USERDB;
enum
enum_pInfo
{
Money,
Score,
Float:Health
};
new
PlayerInfo[MAX_PLAYERS][enum_pInfo];
public
OnFilterScriptInit( )
{
    USERDB = db_open(\"users.db\"); // Adatbázis megnyítása
//  Arra figyelj hogy csak egy adatsort hozz létre ugyanazzal a felhasználó névvel illetve jelszóval!!!!!
//   db_query(USERDB, \"CREATE TABLE `accounts` (name TEXT, pass TEXT, Money NUMERIC, Score NUMERIC, Health FLOAT)\");  // Adattábla szerkezet létrehozás
//   db_query(USERDB, \"INSERT INTO `accounts` (name, pass, Money, Score, Health) VALUES (\'anorennia\', \'1234\', 3500, 201, 80.65)\"); // Egyetlen adatsor beszúrása
// Teszt:
cmd_login(0, \"1234\");
 
return 1;
}
public
OnFilterScriptExit()
{
db_close(USERDB);
return 1;
}
CMD:login(playerid, params[])
{
if(isnull(params)) SendClientMessage(playerid, -1, \"Használat: /login password\");
else
{
new
   string[128],
   DBResult:qresult;
//      GetPlayerName(playerid, string, 128);
string = \"anorennia\";
printf(\"Felhasználó név:%s  Jelszó:%s\", string, params);
format(string, sizeof string, \"SELECT * FROM accounts WHERE name=\'%s\' AND pass=\'%s\'\", string, params);
qresult = db_query(USERDB, string);
 
if(db_num_rows(qresult) == 1) // Ellenõrzés létezik-e adatsor
{
   db_get_field_assoc(qresult, \"Money\", string, 128);
   PlayerInfo[playerid][Money] = strval(string);
   db_get_field_assoc(qresult, \"Score\", string, 128);
   PlayerInfo[playerid][score] = strval(string);
   db_get_field_assoc(qresult, \"Health\", string, 128);
   PlayerInfo[playerid][Health] = floatstr(string);
   print(\" \");
   printf(\"DB teszt: Money: %d, Score: %d Health: %f\", PlayerInfo[playerid][Money], PlayerInfo[playerid][score], PlayerInfo[playerid][Health]);
   print(\" \");
} else {
   print(\"Nincs ilyen adatsor\");
//         SendClientMessage(playerid, -1, \"Nem vagy regisztrálva, vagy rossz jelszót adtál meg\");
}
db_free_result(qresult);
}
return 1;
}

281
Segítségkérés / Fájlkezelõ vs MySQL
« Dátum: 2013. június 29. - 20:48:03 »
Hát én ezt nem értem ha házi a szerver és a házi szerveren van mysql adatbázis kezelés már mi az isten faszáért lenne lassú? Mint az állítjátok páran.
Áruljátok már el nekem hogy localhost-os kapcsolaton keresztül már miért is lenne lassú?

282
Segítségkérés / Miért nem hoz létre sor? (MySQL)
« Dátum: 2013. június 29. - 08:00:56 »
VALUES (\'%s\', %d, \'teszt\',100,0,0,10)

 
Amúgy olvasd a server_log.txt fájlt valószínûleg találsz benne hiba üzeneteket, vagy a mysql_log.txt fájlt, mindkettõt a samp-server.exe mappájában találod.

283
Segítségkérés / - Ismeretlen nevû hiba! -
« Dátum: 2013. június 28. - 18:51:54 »
Az OnGameModeInit alatt gondolom minden játékosnak létrehozol egy textdrawot for ciklussal?
Lehet nem képes frissíteni a TextDrawSetString az üzenetet, régebbi samp verzióknál is volt ilyen hiba lehet ez kicsit javult mostanra de mégsem tökéletesen.
Próbaként rejtsd el a textdrawot, változtasd meg a tartalmát, majd jelenítsd meg.
Kódként:
 
    TalkTexts[playerid] ++;
    TextDrawHideForPlayer(playerid,Letter[playerid);
    switch(TalkTexts[playerid]) {
        case 1: TextDrawSetString(Letter[playerid],\"dfhgdfh\");
            case 2: TextDrawSetString(Letter[playerid],\"sfsdg\");
......
            case 17: TextDrawSetString(Letter[playerid],\"asfdgdas\");
            {
     
                    KillTimer(TalkTimer);
            }
    }
    TextDrawShowForPlayer(playerid,Letter[playerid);

 
Edit:
Használj CreatePlayerTextDraw-ot, és nem kell minden egyes játékosnak létrehozni OnGameModeInit alatt hanem pl.: csak az online játékosoknak csatlakozáskor.

284
Segítségkérés / VehicleID-t nem ismeri fel...
« Dátum: 2013. június 28. - 15:50:47 »
if(vehid == kamion1 || vehid == kamion2 || vehid == kamion3 || vehid == kamion4 || vehid == kamion5 || vehid == kamion6)

285
Segítségkérés / Parancsok DM-ben
« Dátum: 2013. június 27. - 22:16:15 »
Tudsz kivételeket hozzá tenni, de akkor a fenti megoldás nem megfelelõ számodra, kivételekhez elengedhetetlen hogy ne írd be minden parancshoz amelyiket nem szeretnéd hogy használhatóak legyenek DM-ben.
Vagy egyszerûen megoldod OnPlayerCommandReceived alatt sima strcmp-s parancsokkal a dm-ben használatosakat a tiltás elõtt.

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