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. 1
Munkaerőnek jelentkezés / MTA:SA fejlesztést vàllalok« Dátum: 2022. Január 20. - 14:15:54 »
Üdvözlök mindenkit, Kristóf vagyok, lassan 24 éves.
Az MTA:SA-ban fejlesztést vállalok. Kb 5 éve fejlesztek, voltak közben kihagyások. A NextGamingnek voltam a fejlesztője 3 évig, utána a NexusGamingnek az egyik tulajdonosa és fejlesztője. Kompetenciáim: - lua scriptelés - MySQL adatbázis kezelés - 0-ról tudok scriptelni - Magamat tapasztalt fejlesztőnek kategorizálnám, szerencsére eddig az összes elképzelésemet sikerült megvalósítani úgy, hogy azol elég jól is lettek optimalizálva, teljesítménybarát scriptek. Amit NEM vállalok: Egy RP modot megítni 0-ról. Ennek az oka az időhiány. Egyetemista vagyok jelenleg, nem lenne arra időm és idegrendszerem. Amit vállalok: - Egyedi új scriptek írása - Meglévő scriptek továbbfejlesztése - Dizájnolás - Optimalizáció - Bug javítás Amit még érdemes tudni: - Ezeket anyagi juttatás fejében vállalnám el - Az szabadidőm korlátos, viszont igyekszem az előre kitűzött időpontra teljesíteni a megbízást - Shaderekkel nem dolgoztam még, nem tudom használni azokat, viszont ezen lehet változtatni szükség esetén. - Az eddigi referenciáimról szívesen küldök fényképeket, leírásokat. - További egyeztetéshez keress bátran itt, vagy az emailemen: [email protected] FONTOS! Nyomatékosan kérem az érdeklődőket arra, hogy csak abban az esetben keressenek, ha komoly szándékai vannak és tudják, hogy egy 5000 soros script nem fog elkészülni 3 ezer forintból az esetek túlnyomó részében. 2
Segítségkérés / Re:Mit kellene beírnom a hud rendszerbe hogy fogyjon a stamina?« Dátum: 2020. Augusztus 16. - 12:29:53 »
Szia!
Renderen vizsgáljátok a játékos mozgását, valamitnt sebességét (getElementVelocity). Ha éppen nincs járműben és a sebessége bizonyos tartományban van, akkor csökkentse X-szel a staminát. A lényege igazából ennyi. 3
Segítségkérés / Re:Hogyan tudok szerver oldalról átvinni egy változót kliens oldalra mjd hasznalni?« Dátum: 2020. Augusztus 16. - 12:22:06 »
Szia! Van egy olyan függvény, hogy https://wiki.multitheftauto.com/wiki/DbConnect. Ezzel tudsz csatlakozni. Ezt a csatlakozást mentsd le egy változóba:
-- SZERVER OLDAL -- local conenction = dbConnect([...]) aztán jön az adatbázisból lekérdezés., Ehhez ezt a függvényt használjuk: https://wiki.multitheftauto.com/wiki/DbQuery Ha például van egy "characters" táblád, és abból le akarod kérdezni az XY serialhoz tartozó adatokat, például az "admin" értékét, akkor azt ígcs csinálod meg: function queryFunction(player,cmd,serial) -- a funkció fusson le, és a "player" változóba mentse le azt az játékost, aki beírta a parancsot, a "cmd" változóba a parancs nevét, amit beírt, a "serial" ba a parancs beírása utáni első argumentumot, ami a mi esetnkben a keresett játékos serialja lesz local qh = dbQuery(connection,"SELECT * FROM adatok WHERE serial=?",serial) -- létrehozol egy változót, a qh-t, mint queryHandler, majd abba lekérdezel egy táblát. Az idézőjelek közözzi részleg azt jelenti rendre: jelölj ki mindent az adatok táblából, ahol a serial=?. Itt a következő argumentum kerül az első kérdőjel helyére, azaz az serial. local res = dbPoll(qh,500) -- itt a dbPoll kicsomagolja a táblát a res (mint response) változóba, amit kaptál, a qh-ba lementett táblát. Ha a szerver nem válaszol, 500 miliszekundum után megszakítja a folyamatot. if res then -- ha létezik a tábla if (#res > 0) -- ha a tábla soarinak száma (#res) nagyobb mint nulla for i, value in ipairs(res) do -- menejn végig for ciklussal ennek a táblának a sorain if (value["admin"] >= 1) then -- ha a "value" sornak az "admin" oszlopának az értéke nagyobb, vagy egyenlő mint nulla triggerClientEvent("infoFromServer",root,value["admin"],player) -- triggerelünk egy kliens oldali eventet, aminek most meg kellene hívódnia. a root-ra, azaz minden elementre meghívjuk ezt a triggerelést. Első paraméternek megadjuk neki a "value["admin"]"-t, másodiknak pedig a játékost, aki beírta a parancsot: "player". Most nézzük meg a kliens oldalt. end end end dbFree(qh) -- elengedjük a táblát, már nincs ránk szükségünk rá, ne fogyassza a memóriát end addCommandHandler("query",queryFunction) -- létrehozunk egy parancsot "query" névvel, majd megadjuk, hogy a "queryFunction" függvény fusson le ennek a parancsnak a beírásakor -- KLIENS OLDAL -- addEvent("infoFromServer",true) -- itt létrehozzuk az eventet, amit megtriggereltünk szerveroldalról function infoFromServerHandler (adminLVL, player) -- ugye ráküldtük a functionra triggerelésnél elsőnek az adminszintet, másodjára azt a játékost, aki beírta a parancsot. if localPlayer == player then -- ha a kliens oldali helyi játékos (localplayer) az az a játékos, aki beírta szerver oldalon a parancsot (player). Erre azért van szükség, mert az összes játékosnak meghívódik ez a kliens oldali event, mivel root-tal triggereltünk, vagy például az event root-tal van hozzáadva. -- és itt már tudod használni a változót, amit áthoztunk, például ki tudod írni a chatbe: outputChatBox("A kiválasztott játékos adminszintje:" ..tostring(adminLVL).."!") end addEventHandler("infoFromServer",root,infoFromServerHandler) -- itt hozzáadjuk az infoFromServer eventet. Ez fusson le a "root", azaz összes elementnek, majd hívódjon meg ezen event meghívódásakor a infoFromServerHandler function. Remélem tudtam segíteni. 4
Segítségkérés / Re:Hogyan tudnék egy 3D mozgatás rendszert elkészíteni?« Dátum: 2020. Augusztus 16. - 11:57:43 »
Csináld úgy, hogy ugye tudod a tengelyek végeinek a pizícióját. Lekéred a képernyődön azt a pozit a https://wiki.multitheftauto.com/wiki/GetScreenFromWorldPosition függvénnyel, majd kirajzolsz oda egy gombot. Ha a gombra kattintassz, és a korzurt mozgatod, akkor mozogjon a kuka is. Ehhez vizsgálni kell a kurzor mozgatásnál az utolsó kurzor pozícióját, hogy azóta mennyit változott, így mennyivel növeld vagy csökkentsd a kuka tengely iránti pozícióját.
udtam segíteni. Ha nem, akkor szólj, és egy kicsit részletesebben leírom. 5
Segítségkérés / Re:Cápa rendszer« Dátum: 2020. Augusztus 16. - 02:51:45 »
Szia!
Én nem ismerek erre semmilydn függvényt. Jelen esetben a legjobb ötlet ami eszembe jut, hogy a szàrazföld széleinél pozikat mentesz le, azokat tárolod egy táblábaz. Idöközönként azoktól való távolságot mérsz a játékoshoz képest. Azokat a távokat lemented egy táblába, majd unpack-olod azt a táblát, és megnézed a legközelebbi pontot magadhoz kélest a math.min-nel. Az, hogy ez mennyire pontos, az a pontmennyiségtől függ, amit az első táblában tárolsz. Vagy egy másik extrém megoldás, hogy rajzol egy, vagy akár több hatalmas colSphere-t, ami kb a szárazföld széléig ér pont. Itt vizsgálnád a colshape és közted kévő távolságot, majd ebből a távolságból kivonod a gömb sugarát. Ezt eljátszod az összes ilyen colSphere-rel, majd veszed közülük a legkisebb távolságot. Itt érdemes előtte pl paintben megrajzolni a kört és területenként megkeresni a kör középpontját (megtervezni). Remélem tudtam segíteni. 6
Segítségkérés / Re:kéne egy kis segitség!« Dátum: 2020. Augusztus 16. - 02:43:58 »
Sokkal több információ kellene a frakciók felépítéséről. Senki nem fogja tudni megírni neked így, bár amúgyis kétlem. De azert remélem tudok segíteni:
Hozz létre egy táblát, amelyben lemented a fémdetektort és a szükséges paramétereket: local detectors = { [sorszám] = {objectID, X pozíció, Y pozíció, Z pozíció, a colshape pozija X, annak Y, és Z koordinátái, szélessége, mélysége, magassága}, } Ezután rakjuk le: for i, value in ipairs(detectors) do createObject(value[1], value[2], value[3], value[4]) createColCuboid[value[5],value[6],value[7],value[8],value[10],value[11]) end Ezután vizsgálni kell, hogy belemegy a játékos a colhapeba. onElementColShapeHit függvénnyel. Aki bement, annak lekéred a nevét, majd körítést írsz köré, hogy pl: [RENDŐRSÉG]: Az XY fémdetektor készülék jelet fogott (játékos neve). Aztán for cikkussan végigmész a játékosokon, aztán aki a rendőrség frakiban van, annak elküldöd az üzit. 7
Segítségkérés / Re:Segítségkérés parancs működéséhez.« Dátum: 2020. Augusztus 16. - 02:29:26 »
Szia!
Gondolom szerver oldalon irtad (remélem). Az addCommandHandler visszaad több értéket. Az első érték az az, aki a parancsot beírja. A második a parancs neve, innestől pedig a többi argumentum. Tehát neked a targetPlayer az nem a játékos lesz, hanem a parancs neve, jelen esetben a “goto”. Tehát a functionnak így kellene kinéznie: function gotoPlayer(thePlayer,cmd,targetPlayer) Azonban azonosítani is kellene a játékos név, vagy ID alapján. Az egyik legegyszerűbb megoldás a getPlayerFromPartialName useful function, amit megtalálsz az mta wikin. Ez a function visszaadj a játékost névrészlet alapján (az alap MTA beállításaiban megadott név alapján). Ebben az esetben a játékos elementet változóban tudod tárolni ezzel a functionnal: local theTargetElement = getPlayerFromPartialName(targetPlayer) De előtte a kódba bele kell másolnod az useful functiont, hogy működjön. Ezután a célszemélyt már nem targetPlayerrel, hanem jelen esetben theTargetElementtel azonosíthatod. Remélem segítettem. 8
Segítségkérés / MySQL adatbázisból pozíciók lekérése ciklussal, majd marker létrehozás« Dátum: 2018. Július 04. - 10:35:24 »
Eszrevettem, hogy a createMarkernel a marker tipusanal a “cylinder”-nel egy vesszo odakeveredett, viszont nem ez a (fő) hiba
9
Segítségkérés / MySQL adatbázisból pozíciók lekérése ciklussal, majd marker létrehozás« Dátum: 2018. Július 01. - 10:09:54 »
Sziasztok! MySQL adatbázisba tárolok markereket. Ezeket a markereket egy resource elindulásakor be szeretném tölteni, azonban sikertelenül jártam. Ötlet?
Hibaüzenet a debugscript 3-ban: Error[...]\\server.lua:1: bad argument #1 to \'ipairs\' (table expected, got userdata) Azt vágom, hogy a dbQuery nem egy táblát, hanem egy userdatát ad vissza, viszont ennek tudatában sem tudom megoldani. 10
Segítségkérés / onPlayerVehicleEnter, getElementID probléma.. nem értem« Dátum: 2017. Június 15. - 13:19:04 »
Sokszori átgondolás után végre sikerült! Helyes kód:
|