Ü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 - KrisT

Oldalak: [1] 2 3 ... 8
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
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
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
Eszrevettem, hogy a createMarkernel a marker tipusanal a “cylinder”-nel egy vesszo odakeveredett, viszont nem ez a (fő) hiba

9
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?
 

for i, marker in ipairs(dbQuery(connection,\"SELECT * FROM houses WHERE id=?\",i)) do
local res = dbPoll(marker,700)
if (res) then
   if(#res > 0) then
      for _, roll in pairs(res) do
         createMarker(roll[\"x\"], roll[\"y\"], roll[\"z\"], \"cylinder,\",1.2,0,255,0,170)
      end
   end
end
dbFree(marker)
end

 
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:
 

  1.    

          function makeveh(thePlayer, command, vehicleModel)
       


  2.    

              kocsiid = vehicleModel
       


  3.    

              local x, y, z = getElementPosition(thePlayer)
       


  4.    

              x = x + 2
       


  5.    

              y = y + 1
       


  6.    

              local letrehozottJarmu = createVehicle(tonumber(vehicleModel),x,y,z)
       


  7.    

              if (letrehozottJarmu == false) then
       


  8.    

                  outputChatBox(\"#808080/makeveh #C0C0C0[VehicleID]\", thePlayer,255,255,0,true)
       


  9.    

              else
       


  10.    

                  local playerID = getElementID(thePlayer)
       


  11.    

                  local dimID = getElementDimension(thePlayer)
       


  12.    

                  local vehID = getElementID(letrehozottJarmu)
       


  13.    

                  setElementDimension(letrehozottJarmu,dimID)
       


  14.    

                  outputChatBox(\"#FFFFFFSikeresen létrehoztad a járműved! ID: #FF0000 \"..kocsiid, thePlayer,255,255,0,true)
       


  15.    

              end
       


  16.    

          end
       


  17.    

          addCommandHandler(\"makeveh\",makeveh)
       


Zárható!

11
Segítségkérés / onPlayerVehicleEnter, getElementID probléma.. nem értem
« Dátum: 2017. Június 15. - 12:56:36 »
Az addEventHandleres problémára rájöttem. Szimplán annyi volt a probléma, hogy a function argumentumaitól eltérő paramétert kellett megadni az outputChatBox-ba.
 

  1.    

          function kocsiIDje(vehicleID,seat,thePlayer)
       


  2.    

              local vehID = getElementID(vehicleID)
       


  3.    

              outputChatBox(\"Kocsi IDje: \"..vehID,source)
       


  4.    

          end
       


  5.    

          addEventHandler(\"onPlayerVehicleEnter\",getRootElement(),kocsiIDje
       


 
 
Így működik.
 
Azonban a másik probléma még mindig fenn áll. Meggyőződésem az, hogy nem tudom hogyan azonosítani a létrehozott járművet, és az azonosítóját továbbadni.

12
Segítségkérés / onPlayerVehicleEnter, getElementID probléma.. nem értem
« Dátum: 2017. Június 14. - 18:37:39 »
Idézetet írta: thegergo02 date=1497453726


   
      1. Nem kap játékost, elöszőr getPlayerFromName.
   
   
      2. Hirtelen mqst nem tudom
   
   
      //telo
   


function kocsiIDje(kocsiID,seat,jatekos)
    local kocsibanulo = getPlayerFromName(jatekos)
    local vehID = getElementID(kocsiID)
    outputChatBox(\"Kocsi IDje: \"..vehID,kocsibanulo)
end
addEventHandler(\"onPlayerVehicleEnter\",getRootElement(),kocsiIDje) 
 
Átírtam erre, de még mindig semmi :/
 
Idézetet írta: AlexSwamp date=1497453754


   
      Ez play módhoz lenne vagy esetleg valami olyan módhoz, ahol van a járműnek id-je valamilyen elementDatában tárolva? Második hibánál, ha jól tippelem akkor a setElementDimensionnál az első érték legyen a letrehozottJarmu. 
   
   
      
       
   
   
       
   


Ez csak egy kezdetleges saját szerveremhez egy script. A kocsiknak nem adtam ID-t, nem tudom, hogy szükséges-e, vagy alapból van nekik.
 
A létrehozottJarmu-s megoldas sem mukodik :/ kód:
 
function makeveh(thePlayer, command, vehicleModel)
    kocsiid = vehicleModel
    local x, y, z = getElementPosition(thePlayer)
    x = x + 2
    y = y + 1
    local letrehozottJarmu = createVehicle(tonumber(vehicleModel),x,y,z)
    if (letrehozottJarmu == false) then 
        outputChatBox(\"#808080/makeveh #C0C0C0[VehicleID]\", thePlayer,255,255,0,true)
    else 
        local dimID = getElementDimension(thePlayer)
        local vehID = getElementID(tonumber(letrehozottJarmu))
        setElementDimension(tonumber(letrehozottJarmu),tonumber(dimID))
        outputChatBox(\"#FFFFFFSikeresen létrehoztad a járműved! ID: #FF0000 \"..kocsiid, thePlayer,255,255,0,true)
    end
end
addCommandHandler(\"makeveh\",makeveh)
 
 

13
Segítségkérés / onPlayerVehicleEnter, getElementID probléma.. nem értem
« Dátum: 2017. Június 14. - 00:07:10 »
Sziasztok! Nem tudok egy eventhandlert létrehozni.. És nem értem, hogy mi nem működik. A műsodik hibám pedig, hogy egy /makeveh parancsban szeretnék egy olyat, hogy átírja a kocsi dimenzióját az enyémre. 
 
Hibaüzenet az onEn
 
\"Kepkivagasfba02.png\"
 
A 127-es sor az outputChatBox-os rész
 
Kód:
 

  1.    

          function kocsiIDje(kocsiID,seat,jatekos)
       


  2.    

              local vehID = getElementID(kocsiID)
       


  3.    

              outputChatBox(\"Kocsi IDje: \"..vehID,jatekos)
       


  4.    

          end
       


  5.    

          addEventHandler(\"onPlayerVehicleEnter\",getRootElement(),kocsiIDje)
       


A  /makeveh-es probléma:
 
Az egész parancs végig lefut, működik, csak a dimenziót nem írja át a kocsiét, és nem tudom, h mi a para.
 
Hibaüzenet:
 
\"ezakepmar.png\"
 
 
 
Kód:
 

  1.    

          function makeveh(thePlayer, command, vehicleModel)
       


  2.    

              kocsiid = vehicleModel
       


  3.    

              local x, y, z = getElementPosition(thePlayer)
       


  4.    

              x = x + 2
       


  5.    

              y = y + 1
       


  6.    

              local letrehozottJarmu = createVehicle(tonumber(vehicleModel),x,y,z)
       


  7.    

              if (letrehozottJarmu == false) then
       


  8.    

                  outputChatBox(\"#808080/makeveh #C0C0C0[VehicleID]\", thePlayer,255,255,0,true)
       


  9.    

              else
       


  10.    

                  local dimID = getElementDimension(thePlayer)
       


  11.    

                  local vehID = getElementID(tonumber(letrehozottJarmu))
       


  12.    

                  setElementDimension(tonumber(vehID),tonumber(dimID))
       


  13.    

                  outputChatBox(\"#FFFFFFSikeresen létrehoztad a járműved! ID: #FF0000 \"..kocsiid, thePlayer,255,255,0,true)
       


  14.    

              end
       


  15.    

          end
       


  16.    

          addCommandHandler(\"makeveh\",makeveh)
       


A hibaüzenet a 11 és a 12. sorra írja.
 
Mi lehet a helyes kód és a hiba oka?

14
Segítségkérés / /setdim /givemoney ALAP parancsok
« Dátum: 2017. Június 13. - 20:41:06 »
Köszi, már működik! :) 

15
Segítségkérés / /setdim /givemoney ALAP parancsok
« Dátum: 2017. Június 13. - 20:26:58 »
A parancs meghívásakor a szerverlog ezt írja hibaként: 
 
\"hibakod.png\"
 
\"hibasscript.png\"

Oldalak: [1] 2 3 ... 8
SimplePortal 2.3.7 © 2008-2024, SimplePortal