SamiHQ Posted September 5, 2012 Share Posted September 5, 2012 Am nevoie de ajutor.QuantumZ daca ai timp candva ma poti ajuta sa invat scripting.Cand o sa ai timp add:sasukesammy.Multumesc! Link to comment
theguy123 Posted September 8, 2012 Share Posted September 8, 2012 (edited) Nume : Theguy123 Intrebare : Salut QuantumZ am o intrebare si accea este : Am luat gamemodul Fort Carson Roleplay ok. si cand vreau sa-mi fac cont pe el nu arata nimic va rog ajutatima Edited September 8, 2012 by Guest Link to comment
theguy123 Posted September 8, 2012 Share Posted September 8, 2012 Buna,am si eu o nelamurire la un server,sv-u foloseste GM-ul Fort Carson Roleplay ( Daca este nevoie de link il pot atasa ),la mine totul merge frumos ( tin sa mentionez ca eu am modem deci prin urmare sv-ul este cu hamachi ) baza de date functioneaza perfect , sunt conturi inregistrate , poti juca . Intr-o zi mi-a venit in cap sa schimb sv-u la alt prieten in PC care are router si merge sa-l hosteze la internet , am schimbat tot am facut baza de date in MySql , adica am uploadat-o am facut configurarile si cand intram pe server baza de date nu functioneaza, XAMPP-ul este pornit.Daca stiti ceva , orice ce ar putea ajutor , v-as fi recunoscator. Daca ai ip router baga portul la modem. Sau pornesti port-urile.. scri in consola openports Link to comment
Unknown76 Posted September 9, 2012 Author Share Posted September 9, 2012 Nume : Theguy123Intrebare : Salut QuantumZ am o intrebare si accea este : Am luat gamemodul Fort Carson Roleplay ok. si cand vreau sa-mi fac cont pe el nu arata nimic va rog ajutatima Habar nu am de gamemode-ul Fort Carson Roleplay (nici pe comunitate nu-l gasesc). Presupun ca este un script gen vG iar daca esti inceptor iti spun de acum sa nu te aventurezi in scripturi complexe. Link to comment
theguy123 Posted September 9, 2012 Share Posted September 9, 2012 Dar imi poti explica cum sa o repar ? Cand apas register nu registreaza.. Link to comment
Unknown76 Posted September 10, 2012 Author Share Posted September 10, 2012 Dar imi poti explica cum sa o repar ?Cand apas register nu registreaza.. Poate gamemode-ul foloseste baza de date MySQL?! Esti sigur ca ai instalat tot ce trebuie? Link to comment
theguy123 Posted September 10, 2012 Share Posted September 10, 2012 Nu stiu.. nu ma pricep la scripting Dami tu tutoriale te rog..... Link to comment
CryTek Posted November 26, 2012 Share Posted November 26, 2012 Buna ziua stimati domni . V-as ruga si eu sa imi dati niste id-uri pentru obiectele de Craciun Ex : " Globuri / Instalatie / Stea de brad " Etc. Toate cele pentru bradul de craciun Si in ce versiune de MTA gasesc aceste obiecte. Cu stima CryTek. Link to comment
Unknown76 Posted December 24, 2012 Author Share Posted December 24, 2012 Buna ziua stimati domni . V-as ruga si eu sa imi dati niste id-uri pentru obiectele de Craciun Ex : " Globuri / Instalatie / Stea de brad " Etc. Toate cele pentru bradul de craciun Si in ce versiune de MTA gasesc aceste obiecte. Cu stima CryTek. Salut, pentru instalatia de Craciun trebuie sa folosesti Markers de tip "corona" ( https://wiki.multitheftauto.com/wiki/CreateMarker ) si putin scripting pentru jocul de lumini. Pentru globuri gasesti in Map Editor niste obiecte de decor foarte usor si le poti redimensiona cu setObjectScale daca sunt prea mari ( https://wiki.multitheftauto.com/wiki/SetObjectScale ). Iar la capitolul brad presupun ca ai de unde sa alegi in Map Editor. Am aici un exemplu fara instalatie dar destul de dragut (nu este facut de mine ci de un user de pe forumurile SA-MP, eu doar l-am convertit): <map edf:definitions="editor_main"> <meta> <info author='convertFFS.com' version='1.0' name='convertFFS map file' description='Converted by convertFFS' type='map' /> </meta> <object id="convertFFS (0)" model="656" posX="1480.7246090" posY="-1640.0168460" posZ="13.2242760" rotX="0.0000000" rotY="0.0000000" rotZ="0.0000000" dimension="0" interior="0" /> <object id="convertFFS (1)" model="3472" posX="1515.5476070" posY="-1606.0526120" posZ="13.4160350" rotX="0.0000000" rotY="0.0000000" rotZ="0.0000000" dimension="0" interior="0" /> <object id="convertFFS (2)" model="3472" posX="1483.6416020" posY="-1606.1478270" posZ="13.4084590" rotX="0.0000000" rotY="0.0000000" rotZ="0.0000000" dimension="0" interior="0" /> <object id="convertFFS (3)" model="3472" posX="1443.3813480" posY="-1605.8172610" posZ="13.4160350" rotX="0.0000000" rotY="0.0000000" rotZ="0.0000000" dimension="0" interior="0" /> <object id="convertFFS (4)" model="3472" posX="1442.9938960" posY="-1638.0092770" posZ="13.4084580" rotX="0.0000000" rotY="0.0000000" rotZ="0.0000000" dimension="0" interior="0" /> <object id="convertFFS (5)" model="3472" posX="1441.8006590" posY="-1681.5351560" posZ="13.1673060" rotX="0.0000000" rotY="0.0000000" rotZ="0.0000000" dimension="0" interior="0" /> <object id="convertFFS (6)" model="3472" posX="1443.0931400" posY="-1718.3114010" posZ="13.4160350" rotX="0.0000000" rotY="0.0000000" rotZ="0.0000000" dimension="0" interior="0" /> <object id="convertFFS (7)" model="3472" posX="1479.1662600" posY="-1718.9134520" posZ="13.4160350" rotX="0.0000000" rotY="0.0000000" rotZ="0.0000000" dimension="0" interior="0" /> <object id="convertFFS (8)" model="3472" posX="1515.9698490" posY="-1718.5927730" posZ="13.4160350" rotX="0.0000000" rotY="0.0000000" rotZ="0.0000000" dimension="0" interior="0" /> <object id="convertFFS (9)" model="3472" posX="1515.9193120" posY="-1695.3533940" posZ="13.4160350" rotX="0.0000000" rotY="0.0000000" rotZ="0.0000000" dimension="0" interior="0" /> <object id="convertFFS (10)" model="3472" posX="1515.8012700" posY="-1669.4069820" posZ="13.4160350" rotX="0.0000000" rotY="0.0000000" rotZ="0.0000000" dimension="0" interior="0" /> <object id="convertFFS (11)" model="3472" posX="1515.8511960" posY="-1637.0718990" posZ="13.4160350" rotX="0.0000000" rotY="0.0000000" rotZ="0.0000000" dimension="0" interior="0" /> <object id="convertFFS (12)" model="3534" posX="1486.9981690" posY="-1639.9875490" posZ="23.8772200" rotX="0.0000000" rotY="0.0000000" rotZ="0.0000000" dimension="0" interior="0" /> <object id="convertFFS (13)" model="3534" posX="1481.4981690" posY="-1635.1453860" posZ="24.7118970" rotX="0.0000000" rotY="0.0000000" rotZ="0.0000000" dimension="0" interior="0" /> <object id="convertFFS (14)" model="3534" posX="1484.7481690" posY="-1638.5523680" posZ="25.3772160" rotX="0.0000000" rotY="0.0000000" rotZ="0.0000000" dimension="0" interior="0" /> <object id="convertFFS (15)" model="3534" posX="1481.4821780" posY="-1645.1363530" posZ="26.5031170" rotX="0.0000000" rotY="0.0000000" rotZ="0.0000000" dimension="0" interior="0" /> <object id="convertFFS (16)" model="3534" posX="1477.0859380" posY="-1641.0865480" posZ="22.7093450" rotX="0.0000000" rotY="0.0000000" rotZ="0.0000000" dimension="0" interior="0" /> <object id="convertFFS (17)" model="3534" posX="1474.4880370" posY="-1641.0848390" posZ="28.5697170" rotX="0.0000000" rotY="0.0000000" rotZ="0.0000000" dimension="0" interior="0" /> <object id="convertFFS (18)" model="3534" posX="1480.4870610" posY="-1645.3365480" posZ="31.0232120" rotX="0.0000000" rotY="0.0000000" rotZ="0.0000000" dimension="0" interior="0" /> <object id="convertFFS (19)" model="3534" posX="1477.2644040" posY="-1644.3365480" posZ="27.7040440" rotX="0.0000000" rotY="0.0000000" rotZ="0.0000000" dimension="0" interior="0" /> <object id="convertFFS (20)" model="3534" posX="1478.7630620" posY="-1643.4960940" posZ="31.3261600" rotX="0.0000000" rotY="0.0000000" rotZ="0.0000000" dimension="0" interior="0" /> <object id="convertFFS (21)" model="3534" posX="1474.4880370" posY="-1637.8970950" posZ="26.6153850" rotX="0.0000000" rotY="0.0000000" rotZ="0.0000000" dimension="0" interior="0" /> <object id="convertFFS (22)" model="3534" posX="1477.7380370" posY="-1637.2316890" posZ="31.4392320" rotX="0.0000000" rotY="0.0000000" rotZ="0.0000000" dimension="0" interior="0" /> <object id="convertFFS (23)" model="3534" posX="1478.9880370" posY="-1635.5621340" posZ="28.2167550" rotX="0.0000000" rotY="0.0000000" rotZ="0.0000000" dimension="0" interior="0" /> <object id="convertFFS (24)" model="1262" posX="1485.4981690" posY="-1640.3032230" posZ="28.0991820" rotX="0.0000000" rotY="0.0000000" rotZ="292.5000000" dimension="0" interior="0" /> <object id="convertFFS (25)" model="1262" posX="1480.9223630" posY="-1637.3601070" posZ="28.3660130" rotX="0.0000000" rotY="0.0000000" rotZ="0.0000000" dimension="0" interior="0" /> <object id="convertFFS (26)" model="1262" posX="1475.9880370" posY="-1640.2166750" posZ="24.6375120" rotX="0.0000000" rotY="0.0000000" rotZ="67.5000000" dimension="0" interior="0" /> <object id="convertFFS (27)" model="1262" posX="1478.3131100" posY="-1645.0430910" posZ="28.6887490" rotX="0.0000000" rotY="0.0000000" rotZ="135.0000000" dimension="0" interior="0" /> <object id="convertFFS (28)" model="1262" posX="1475.9880370" posY="-1642.3137210" posZ="30.7854190" rotX="0.0000000" rotY="0.0000000" rotZ="117.3473000" dimension="0" interior="0" /> <object id="convertFFS (29)" model="1262" posX="1481.1636960" posY="-1641.0865480" posZ="21.4842700" rotX="0.0000000" rotY="0.0000000" rotZ="184.8473000" dimension="0" interior="0" /> <object id="convertFFS (30)" model="1262" posX="1485.4733890" posY="-1640.0375980" posZ="32.1441800" rotX="0.0000000" rotY="0.0000000" rotZ="306.8785000" dimension="0" interior="0" /> <object id="convertFFS (31)" model="1262" posX="1482.8171390" posY="-1643.4108890" posZ="27.5492710" rotX="0.0000000" rotY="0.0000000" rotZ="228.2058000" dimension="0" interior="0" /> <object id="convertFFS (32)" model="1262" posX="1481.2137450" posY="-1641.0865480" posZ="34.6684110" rotX="0.0000000" rotY="0.0000000" rotZ="228.2058000" dimension="0" interior="0" /> <object id="convertFFS (33)" model="7666" posX="1480.8218990" posY="-1639.9508060" posZ="38.3647990" rotX="0.0000000" rotY="0.0000000" rotZ="0.0000000" dimension="0" interior="0" /> <object id="convertFFS (34)" model="7666" posX="1480.7878420" posY="-1639.9738770" posZ="38.3647990" rotX="0.0000000" rotY="0.0000000" rotZ="264.7660000" dimension="0" interior="0" /> <object id="convertFFS (35)" model="7666" posX="1480.8663330" posY="-1640.0606690" posZ="38.3647990" rotX="0.0000000" rotY="0.0000000" rotZ="231.0161000" dimension="0" interior="0" /> <object id="convertFFS (36)" model="7666" posX="1480.8081050" posY="-1639.9927980" posZ="38.3647990" rotX="0.0000000" rotY="0.0000000" rotZ="326.2500000" dimension="0" interior="0" /> <object id="convertFFS (37)" model="1262" posX="1481.7481690" posY="-1640.7796630" posZ="24.0641880" rotX="0.0000000" rotY="0.0000000" rotZ="191.2501000" dimension="0" interior="0" /> <object id="convertFFS (38)" model="1262" posX="1481.4139400" posY="-1639.6101070" posZ="31.8891050" rotX="0.0000000" rotY="0.0000000" rotZ="326.2500000" dimension="0" interior="0" /> <object id="convertFFS (39)" model="1262" posX="1478.8681640" posY="-1634.6101070" posZ="24.0149000" rotX="0.0000000" rotY="0.0000000" rotZ="33.7500000" dimension="0" interior="0" /> <object id="convertFFS (40)" model="1262" posX="1477.7683110" posY="-1637.3601070" posZ="27.7075940" rotX="0.0000000" rotY="0.0000000" rotZ="48.3604000" dimension="0" interior="0" /> <!-- Objects converted: 41 Vehicles converted: 0 Vehicle models found: 0 ---------------------- In the time this conversion took to finish the US national debt has risen by about $593.49! --> </map> Sarbatori fericite va doresc, QuantumZ Link to comment
FunkBlack Posted December 27, 2012 Share Posted December 27, 2012 Salut, Pentru prima data mi-am instalat MTA, dar am o problema. Cand ma conectez pe un server (sau Map Editor) imi da crash. Ce pot face sa rezolv problema? Version = 1.3.1-release-4710.2.010 Time = Thu Dec 27 15:06:43 2012 Module = C:\Program Files (x86)\Rockstar Games\GTA San Andreas\gta_sa.exe Code = 0xC0000005 Offset = 0x000C48D6 EAX=00000000 EBX=1E7AE650 ECX=00000000 EDX=5F6C5F63 ESI=2097ACFC EDI=00B1B394 EBP=00537150 ESP=0028F7A0 EIP=004C48D6 FLG=00010246 CS=0023 DS=002B SS=002B ES=002B FS=0053 GS=002B Edit: Bun, am rezolvat partea de sus, acum imi merge ok, dar mai vin cu o intrebare: Cum pot sterge obiectele originale din GTA SA?In Map Editor. Link to comment
Unknown76 Posted December 31, 2012 Author Share Posted December 31, 2012 Salut,Pentru prima data mi-am instalat MTA, dar am o problema. Cand ma conectez pe un server (sau Map Editor) imi da crash. Ce pot face sa rezolv problema? Version = 1.3.1-release-4710.2.010 Time = Thu Dec 27 15:06:43 2012 Module = C:\Program Files (x86)\Rockstar Games\GTA San Andreas\gta_sa.exe Code = 0xC0000005 Offset = 0x000C48D6 EAX=00000000 EBX=1E7AE650 ECX=00000000 EDX=5F6C5F63 ESI=2097ACFC EDI=00B1B394 EBP=00537150 ESP=0028F7A0 EIP=004C48D6 FLG=00010246 CS=0023 DS=002B SS=002B ES=002B FS=0053 GS=002B Edit: Bun, am rezolvat partea de sus, acum imi merge ok, dar mai vin cu o intrebare: Cum pot sterge obiectele originale din GTA SA?In Map Editor. https://wiki.multitheftauto.com/wiki/RemoveWorldModel Link to comment
viciu Posted January 8, 2013 Share Posted January 8, 2013 Salut, va rog ajutatima, sunt nou in lumea mta'ului desi joc samp de 3 ani. Vreau sa fac o mapa, mai exact un interior de birou, sa fie o camera in care sa pun eu obiecte, cum ar fi scaune , birou, o canapea etc.. va rog ajutatima si spuneti'mi unde pot gasi o camera goala, ca interioare de case am gasit dar nu merge sa sterg obiectele din ele, multumtesc astept un raspuns. Link to comment
Moderators Vinyard Posted January 9, 2013 Moderators Share Posted January 9, 2013 Salut, va rog ajutatima, sunt nou in lumea mta'ului desi joc samp de 3 ani. Vreau sa fac o mapa, mai exact un interior de birou, sa fie o camera in care sa pun eu obiecte, cum ar fi scaune , birou, o canapea etc.. va rog ajutatima si spuneti'mi unde pot gasi o camera goala, ca interioare de case am gasit dar nu merge sa sterg obiectele din ele, multumtesc astept un raspuns. Buna, O metoda ar fi sa intri pe Map Editor -> Locations -> Selectezi un int. (nu depinde care) , iar apoi te departezi pana nu mai vezi int. respectiv -> cauti la obiecte 'int' si acolo vei gasi interioare nemobilate. Asa fac eu. Stima, Tomitza. Link to comment
dragos671 Posted January 13, 2013 Share Posted January 13, 2013 Am o problem: Can intru pe sv JJ's Stunt n Freeroam, dupa ce mi sa descarcat mapa imi arata Fatal Error(6) Link to comment
Axel Posted February 3, 2013 Share Posted February 3, 2013 Probabil este de la descărcarea fișierelor de pe serverul lor. Link to comment
Moderators Vinyard Posted March 9, 2013 Moderators Share Posted March 9, 2013 Buna, am si eu o problema. Am facut un script care sa iti arate ID-ul culorilor pe care le poti folosi pe masini intr-un GUI. Insa cand pornesc script-ul imi deschide GUI-ul. Deci intrebarea mea ar fi: Ce sa folosesc pentru a face ca GUI-ul sa se deschida doar printr-o comanda, nu si cand pornesc resursa? Am cautat pe Forum si pe Wiki posibile solutii insa nu am gasit ceva pe intelese. Aici e codul meu, e clientside: addEventHandler("onClientResourceStart",resourceRoot, function () GUIEditor_Window = {} GUIEditor_Button = {} GUIEditor_Image = {} GUIEditor_Window[1] = guiCreateWindow(0.2212,0.2633,0.5788,0.4267,"Color List",true) GUIEditor_Image[1] = guiCreateStaticImage(15,22,436,193,"colors.png",false,GUIEditor_Window[1]) GUIEditor_Button[1] = guiCreateButton(276,218,176,25,"Iesire",false,GUIEditor_Window[1]) addEventHandler("onClientGUIClick", GUIEditor_Button[1], hide) GUIEditor_Button[2] = guiCreateButton(15,220,176,25,"Car List",false,GUIEditor_Window[1]) end ) function show () guiSetVisible( GUIEditor_Window[1], not guiGetVisible( GUIEditor_Window[1] ) ) guiWindowSetSizable( GUIEditor_Window[1], false) guiWindowSetMovable( GUIEditor_Window[1], false) end addCommandHandler("colorlist",show) function hide () guiSetVisible( GUIEditor_Window[1], false) end Am incercat sa sterg primul EventHandler insa dupa aceea nu imi mai crea GUI-ul deloc. Sper sa aveti o solutie Link to comment
Axel Posted March 9, 2013 Share Posted March 9, 2013 Pune hide() în eventul onClientResourceStart ca să ascundă GUI-ul.. sau guiSetVisible( GUIEditor_Window[1], false) Link to comment
Moderators Vinyard Posted March 9, 2013 Moderators Share Posted March 9, 2013 Am reusit, multumesc mult! Link to comment
Dany Alex Posted August 4, 2013 Share Posted August 4, 2013 Vreau sa fac un script character-system gen cel de la vallhala si nu stiu cum sa fac sa mearga cu SQLite... Putin ajutor va rog! Link to comment
Unknown76 Posted August 5, 2013 Author Share Posted August 5, 2013 (edited) Vreau sa fac un script character-system gen cel de la vallhala si nu stiu cum sa fac sa mearga cu SQLite...Putin ajutor va rog! Haide sa o luam logic. Pasul 1: Trebuie sa conectam scriptul nostru la baza de date SQLite. ( https://wiki.multitheftauto.com/wiki/DbConnect ) Exemplu: = dbConnect( "sqlite", ".db" ) In cazul tau sa luam drept exemplu (atentie daca fisierul char.db nu exista acesta va fi creat automat): char_db = dbConnect( "sqlite", "char.db" ) Ca sa conectezi alta resursa externa la baza de date din resursa ta folosesti: char_db = dbConnect( "sqlite", ":numeleresursei/char.db" ) Pasul 2: Ne gandim cam ce tabele ne-ar trebui pentru character-systems. (Tip: Numele tabelelor in MySQL/SQLite trebuie scrise cu litere mici si sa fie la plural. Acesta este standardul in bazele de date.) Numele tabelului nostru va fi "characters". Acum ne gandim cam ce coloane ar trebui sa aibe acest tabel "characters". Sa vedem, avem nevoie de un PRIMARY KEY (cheie primara) care sa identifce fiecare caracter in parte. Asa ca vom adauga coloana "id" cu AUTOINCREMENT (adica pentru fiecare caracter adaugat numarul "id"-ului se va auto incrementa. Alte coloane pentru sistemul tau de caractere ar putea fi: nume, model (pentru modelul pedului), health (viata), posx, posy, posz (toate acestea pentru salvarea pozitiei) etc. Asta ar fi basic-ul pentru un character systems. Acum urmeaza crearea acestui tabel: function creeazaTabel() local characters = dbExec( char_db, "CREATE TABLE IF NOT EXISTS characters (id INTEGER PRIMARY KEY AUTOINCREMENT, nume CHAR(50) NOT NULL, model INTEGER NOT NULL, health REAL NOT NULL, posx REAL NOT NULL, posy REAL NOT NULL, posz REAL NOT NULL)") end addEventHandler("onResourceStart", getRootElement(getThisResource()), creeazaTabel) INTEGER = numar intreg (stim ca id-ul trebuie sa fie numar intreg, modelele peds-ilor in MTA sunt numere intregi (exemplu: https://wiki.multitheftauto.com/wiki/Character_Skins ) REAL = in MTA nu exista tipul REAL, ci FLOAT sau DOUBLE, din fericire SQLite poate integra in REAL atat float si double. Pozitia caracterlor in MTA si viata este de tip FLOAT. (exemplu 1003.532622) Pasul 3: Functia de inserare a unui nou caracter Ne bazam pe linia asta de cod: dbExec( char_db, "INSERT INTO characters (nume, model, health, posx, posy, posz) VALUES (?,?,?,?,?,?)", numele, model, health, posx, posy, posz ) Pentru a insera caracterul si al spawna la coordonatele 0, 0, 0 pentru inceput folosim: dbExec( char_db, "INSERT INTO characters (nume, model, health, posx, posy, posz) VALUES (?,?,?,?,?,?)", "Tanti Lucica", idmodel, 1000, 0, 0, 0 ) Pasul 4: Cum actualizam detaliile caracterului dupa ce iese de pe server? Folosesti functia UPDATE ( https://wiki.multitheftauto.com/wiki/DbExec ) dbExec( char_db, "UPDATE `??` SET `??`=?", tableName, columnName, columnValue ) Atentie, poate sa contina erori, l-am scris in graba de pe tableta. Daca gasiti vreo greseala anuntati-ma si voi edita postul. Edited August 7, 2013 by Guest Link to comment
golanu21 Posted August 7, 2013 Share Posted August 7, 2013 Vreau sa fac un script character-system gen cel de la vallhala si nu stiu cum sa fac sa mearga cu SQLite...Putin ajutor va rog! Haide sa o luam logic. Pasul 1: Trebuie sa conectam scriptul nostru la baza de date SQLite. ( https://wiki.multitheftauto.com/wiki/DbConnect ) Exemplu: = dbConnect( "sqlite", ".db" ) In cazul tau sa luam drept exemplu (atentie daca fisierul char.db nu exista acesta va fi creat automat): char_db = dbConnect( "sqlite", "char.db" ) Ca sa conectezi alta resursa externa la baza de date din resursa ta folosesti: char_db = dbConnect( "sqlite", ":numeleresursei/char.db" ) Pasul 2: Ne gandim cam ce tabele ne-ar trebui pentru character-systems. (Tip: Numele tabelelor in MySQL/SQLite trebuie scrise cu litere mici si sa fie la plural. Acesta este standardul in bazele de date.) Numele tabelului nostru va fi "characters". Acum ne gandim cam ce coloane ar trebui sa aibe acest tabel "characters". Sa vedem, avem nevoie de un PRIMARY KEY (cheie primara) care sa identifce fiecare caracter in parte. Asa ca vom adauga coloana "id" cu AUTOINCREMENT (adica pentru fiecare caracter adaugat numarul "id"-ului se va auto incrementa. Alte coloane pentru sistemul tau de caractere ar putea fi: nume, model (pentru modelul pedului), health (viata), posx, posy, posz (toate acestea pentru salvarea pozitiei) etc. Asta ar fi basic-ul pentru un character systems. Acum urmeaza crearea acestui tabel: function creeazaTabel() local characters = dbExec( char_db, "CREATE TABLE IF NOT EXISTS characters (id INT PRIMARY KEY NOT NULL, nume CHAR(50) NOT NULL, model INT NOT NULL, health REAL NOT NULL, posx REAL NOT NULL, posy REAL NOT NULL, posz REAL NOT NULL)") addEventHandler("onResourceStart", getRootElement(getThisResource()), creeazaTabel) INT = numar intreg (stim ca id-ul trebuie sa fie numar intreg, modelele peds-ilor in MTA sunt numere intregi (exemplu: https://wiki.multitheftauto.com/wiki/Character_Skins ) REAL = in MTA nu exista tipul REAL, ci FLOAT sau DOUBLE, din fericire SQLite poate integra in REAL atat float si double. Pozitia caracterlor in MTA si viata este de tip FLOAT. (exemplu 1003.532622) Pasul 3: Functia de inserare a unui nou caracter Ne bazam pe linia asta de cod: dbExec( char_db, "INSERT INTO characters (nume, model, health, posx, posy, posz) VALUES (?,?,?,?,?,?)", numele, model, health, posx, posy, posz ) Pentru a insera caracterul si al spawna la coordonatele 0, 0, 0 pentru inceput folosim: dbExec( char_db, "INSERT INTO characters (nume, model, health, posx, posy, posz) VALUES (?,?,?,?,?,?)", "Tanti Lucica", idmodel, 1000, 0, 0, 0 ) Pasul 4: Cum actualizam detaliile caracterului dupa ce iese de pe server? Folosesti functia UPDATE ( https://wiki.multitheftauto.com/wiki/DbExec ) dbExec( char_db, "UPDATE `??` SET `??`=?", tableName, columnName, columnValue ) Atentie, poate sa contina erori, l-am scris in graba de pe tableta. Daca gasiti vreo greseala anuntati-ma si voi edita postul. chiar mai ajutat si pe mn, ms mult , dar mai am o intrebare , la ce foloseste dbQuery ? Link to comment
Unknown76 Posted August 7, 2013 Author Share Posted August 7, 2013 chiar mai ajutat si pe mn, ms mult , dar mai am o intrebare , la ce foloseste dbQuery ? dbExec este o functie query care nu returneaza un rezultat si executa direct in baza de date. dbQuery este o functie query care returneaza un rezultat dupa apelare. De exemplu daca vrei sa selectezi un caracter din baza de date ai nevoie de returnarea valorilor: Selecteaza caracterele local char = dbQuery ( char_db , "SELECT * FROM characters WHERE account=?", "QuantumZ" ) Pentru a prelucra datele din dbQuery avem nevoie de alte doua functii dbPoll (care insereaza datele in variabile) si dbFree (care elibereaza variabila de date) -- O functie care afiseaza caracterele cu viata <500 local chars = dbQuery ( char_db , "SELECT * FROM characters" ) -- functia returneaza toate caracterele din tabelul characters local result, numrows = dbPoll(chars, -1) -- -1 inseamna sa astepte serverul pana termina de verificat, 0 inseamna instant dar poate da erori si nu recomand if (result and numrows > 0) then -- daca avem un rezultat si numarul de randuri >0 atunci for index, row in pairs(result) do if row['health']<500 then outputChatBox(row['name'].." are mai putin de 500 viata.") end end end dbFree(chars) -- elibereaza conexiunea Link to comment
golanu21 Posted August 7, 2013 Share Posted August 7, 2013 chiar mai ajutat si pe mn, ms mult , dar mai am o intrebare , la ce foloseste dbQuery ? dbExec este o functie query care nu returneaza un rezultat si executa direct in baza de date. dbQuery este o functie query care returneaza un rezultat dupa apelare. De exemplu daca vrei sa selectezi un caracter din baza de date ai nevoie de returnarea valorilor: Selecteaza caracterele local char = dbQuery ( char_db , "SELECT * FROM characters WHERE account=?", "QuantumZ" ) Pentru a prelucra datele din dbQuery avem nevoie de alte doua functii dbPoll (care insereaza datele in variabile) si dbFree (care elibereaza variabila de date) -- O functie care afiseaza caracterele cu viata <500 local chars = dbQuery ( char_db , "SELECT * FROM characters" ) -- functia returneaza toate caracterele din tabelul characters local result, numrows = dbPoll(chars, -1) -- -1 inseamna sa astepte serverul pana termina de verificat, 0 inseamna instant dar poate da erori si nu recomand if (result and numrows > 0) then -- daca avem un rezultat si numarul de randuri >0 atunci for index, row in pairs(result) do if row['health']<500 then outputChatBox(row['name'].." are mai putin de 500 viata.") end end end dbFree(chars) -- elibereaza conexiunea chiar ma ajuta mult , mersi , vreau sa fac un sistem de characters la gamemodeul de zombie EDIT: dbExec, si executeSQLQuery sunt aceleas lucruri ? Link to comment
Axel Posted August 7, 2013 Share Posted August 7, 2013 Nu recomand folosirea SELECT * FROM table (select all from ..) Mai bine specifici ce să selectezi: SELECT name, health FROM characters una la mână îțî returnează exact ce dorești, iar dacă vrei alte date, doar introduci lângă name, health, data .., 2 la mână e mult mai bine organizat, și cel ce se uită la cod, va știi și ce e în baza de date. Link to comment
Unknown76 Posted August 7, 2013 Author Share Posted August 7, 2013 Nu recomand folosirea SELECT * FROM table (select all from ..) Mai bine specifici ce să selectezi: SELECT name, health FROM characters una la mână îțî returnează exact ce dorești, iar dacă vrei alte date, doar introduci lângă name, health, data .., 2 la mână e mult mai bine organizat, și cel ce se uită la cod, va știi și ce e în baza de date. Asa este, aloca mult mai multa memorie pentru SELECT * FROM table dar daca trebuie sa scrii mai mult de 5 coloane eu zic ca ar fi bine folosirea asterixului. Daca un scripter vrea sa stie ce coloane are un tabel interogheaza baza de date cu "SHOW COLUMNS FROM tabel" in phpMyAdmin sau isi face o resursa in Lua. Link to comment
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now