Jump to content

gyrosos14

Members
  • Posts

    11
  • Joined

  • Last visited

gyrosos14's Achievements

Square

Square (6/54)

1

Reputation

  1. Kliens oldal: function toggleLightflash() local veh = getPedOccupiedVehicle(localPlayer); if (veh) then if not (getElementData(veh, "lightFlash:color")) then setElementData(veh, "lightFlash:color", {0, 0, 255}, false); end local isLightFlashing = getElementData(veh, "lightFlash"); if (isLightFlashing) then setVehicleOverrideLights(veh, 0); local lightTimer = getElementData(veh, "lightFlash:timer"); killTimer(lightTimer); setElementData(veh, "lightFlash", false, false); setVehicleLightState(veh, 0, 0); setVehicleLightState(veh, 1, 0); setVehicleHeadLightColor(veh, 255, 255, 255); else setVehicleOverrideLights(veh, 2); setElementData(veh, "lightFlash:state", false, false); local lightFlashTimer = setTimer(function() local flashState = getElementData(veh, "lightFlash:state"); local lightColor = getElementData(veh, "lightFlash:color"); if (lightColor[1] == 255) then lightColor[1], lightColor[2] = 0, 255; else lightColor[1], lightColor[2] = 255, 0; end setVehicleHeadLightColor(veh, lightColor[1], 0, lightColor[2]); if (flashState) then setVehicleLightState(veh, 0, 0); setVehicleLightState(veh, 1, 1); else setVehicleLightState(veh, 0, 1); setVehicleLightState(veh, 1, 0); end setElementData(veh, "lightFlash:color", lightColor, false); setElementData(veh, "lightFlash:state", not flashState, false); end, 150, 0); setElementData(veh, "lightFlash:timer", lightFlashTimer, false); setElementData(veh, "lightFlash", true, false); end end end bindKey("z", "down", toggleLightflash); local x, y = guiGetScreenSize(); local relX, relY = x/1280, y/720; addEvent("drawSirenPanel", true); addEventHandler("drawSirenPanel", localPlayer, function() -- Sziréna típusok : 1 - Tűzoltó 2 - Egyéb megkülönböztető j. haszn. járm. local drawHud = false; if (drawHud) then drawHud = false; else drawHud = true; end if (drawHud) then dxDrawRectangle(x*0.5, y*0.5, relX*200, relY*50, tocolor(0, 0, 0, 150) ); dxDrawText("LoyalMTA - Sziréna panel",x*0.5, y*0.5, x*0.65625, y*0.435, tocolor(255, 255, 255, 255), 1, "arial", "center", "center"); else end end ); Szerver oldal: emergencyVehicles = {[416]=true, [596]=true, [598]=true, [597]=true, [599]=true, [407]=true, [544]=true}; -- Megkülönböztető jelzést használó járművek addEventHandler("onVehicleEnter", root, function(player, seat) vehicle = getPedOccupiedVehicle(player); -- Lekéri a járművet, melybe a player beszállt removeVehicleSirens(vehicle); -- Eltünteti a szirénát a járműről if (removeVehicleSirens) then outputDebugString("[VEHICLE] Sikeres sziréna törlés!", 3); -- Sikeres sziréna törlés else outputDebugString("[ERROR] Sikertelen sziréna törlés!", 1); -- Sikertelen sziréna törlés end if (emergencyVehicles[getElementModel(source)] and seat < 2) then -- Ha a getElementModel emergency jármű ID-jét adja vissza és az ülés az első 2 akkor triggerClientEvent(player, "drawSirenPanel", player); end end );
  2. Azon túl jutottam (végre). Most viszont a debugscript a következőt írta ki: WARNING: vg_accounts\server.lua:72: dbExec failed; (1062) Duplicate entry '0' for key 'PRIMARY'
  3. És ha úgysem jó, akkor mi lehet a probléma? Még nem teszteltem, csak holnap fogom, azért kérdezem..
  4. Vagyis a külön scriptet ha elindítóm / újraindítom, kiírja, hogy sikeres csatlakozás. És mind a 2 script el van indítva
  5. Most nem ad vissza semmit. Debugscriptbe a következőt írja ki : WARNING: vg_accounts\server.lua:60: Bad argument @ 'dbQuery' [Exp]ected db-connection at argument 1, got nil] WARNING: vg_accounts\server.lua:61: Bad argument @ 'dbPoll' [Expected db-query at argument 1, got boolean] Gondolom itt a mysql-hez kötéssel lesz baj nem? (Megpróbáltam hozzádani egy külön változóhoz, hátha, de nem jó ígyse) local con = exports.mysql:connectMysql(); local playerBanned; function checkPlayerBan(player) local serial = getPlayerSerial(player); if (player) then local qh = dbQuery(con, "SELECT * FROM bans WHERE serial=? AND expiration > CURRENT_TIME()", serial); local bans = dbPoll(qh, 500); if (bans) then if (#bans > 0) then playerBanned = true; else playerBanned = false; end else playerBanned = false; end else playerBanned = false; end end addEvent("attemptLogin", true); addEventHandler("attemptLogin", resourceRoot, function (un, pass) local banSql = dbQuery(con, "SELECT * FROM bans WHERE serial=? AND expiration > CURRENT_TIME()", serial); iprint(banSql); if not (playerBanned == false) then local qh = dbQuery(con, "SELECT * FROM accounts WHERE username=? password=?", un, pass); local user = dbPoll(qh, 500); if (user) then if (#user > 0) then if (user[1]["password"] == pass) then setElementData(client, "acc:id", user[1]["id"]); triggerClientEvent(client, "accountServerResponse", resourceRoot, "loginSucces"); spawnPlayer(client, 0, 0, 4, 29); setCameraTarget(client, client); fadeCamera(client, true); else triggerClientEvent(client, "accountServerResponse", resourceRoot, "wrongPass"); end else triggerClientEvent(client, "accountServerResponse", resourceRoot, "noAccount"); end else triggerClientEvent(client, "accountServerResponse", resourceRoot, "unknownError"); end else triggerClientEvent(client, "accountServerResponse", resourceRoot, "playerBanned"); end end ); addEvent("attemptRegister", true); addEventHandler("attemptRegister", resourceRoot, function (un, pass, email) iprint(banSql); if not (playerBanned == false) then local qh = dbQuery(con, "SELECT * FROM accounts WHERE username=? OR email=?", un, email); local user = dbPoll(qh, 500); if (user) then if not (#user > 0) then dbExec(con, "INSERT INTO accounts SET username=?, password=?, email=?", un, pass, email); triggerClientEvent(client, "accountServerResponse", resourceRoot, "registerSucces"); else triggerClientEvent(client, "accountServerResponse", resourceRoot, "existingAccount"); end else triggerClientEvent(client, "accountServerResponse", resourceRoot, "unknownError"); end else triggerClientEvent(client, "accountServerResponse", resourceRoot, "playerBanned"); end end ); Igen, a csatlakozással van valami, beleírtam egy if-et, miszerint ha a con true akkor debugstringként kiírja, és sikertelent írt. Ezek szerint akkor valamit a dbQuery-ben basztam el nem? Mert ugye külön script-re van a connectMysql írva, és ki is írja a chat-re, hogy sikeres csatlakozás.
  6. Ja igen, az if (#bans > 0) then -nél true-ra van állítva, de nem jó
  7. Igen-igen, az megoldódott. Most viszont olyan hiba van, hogy a mysql lekérdezésnél a bans táblából lekéri, hogy a localPlayer serial-ja benne van-e, és mindig true-t ad vissza. Pedig nincs benne semmi Az a rész pedig így néz ki : function isPlayerBanned(player) if (player) then -- Ha a player változó nem FALSE vagy NIL local serial = getPlayerSerial(player); -- A serial helyi változóba lekérdezzük a játékos serial kódját local qh = dbQuery(con, "SELECT * FROM bans WHERE serial=? AND expiration > CURRENT_TIME()", serial); -- A qh (mint Query Handle) változóba beküldjük az adatbázisnak a banok kiválasztását. Ez mindent kiválaszta a ban táblából, ahol egyezik a serial és a lejárati dátum valahol a jövőben lesz. local bans = dbPoll(qh, 500); -- A bans változóba mentve feldolgozzuk és kicsomagoljuk a qh változóban található adatbázis lekérdezés eredményét if (bans) then -- Ha a bans nem FALSE vagy NIL if (#bans > 0) then -- Ha a bans tábla sorainak száma nagyobb mint 0, (tehát van olyan ban erre a serialra ami a jövőben fog lejárni) return false; else -- Egyébként return false; -- A FALSE érték visszaadása end else -- Ha a bans FALSE vagy NIL return false; -- A FALSE érték visszaadása end else -- Ha a player változó FALSE vagy NIL return false; -- A FALSE érték visszaadása end end
  8. function isPlayerBanned(player) if (player) then local serial = getPlayerSerial(player); local qh = dbQuery(con, "SELECT * FROM bans WHERE serial=? AND expiration > CURRENT_TIME()", serial); local bans = dbPoll(qh, 500); if (bans) then if (#bans > 0) then return true; else return false; end else return false; end else return false; end end The script always gives me true, even if i replace that one true with false
  9. Nem szeretném az egész scriptet iderakni, ezért csak azt a részt, ahol írja a debugscript, hogy nem jó. A hibaüzenet pedig a cím, vagyis: attempt to call global 'attemptRegister' (a nil value) -- Kliens function execRegister() local empty = false; for i, data in ipairs(accountData[2]) do if (data == "") then empty = true; break; end end if not (empty) then if (string.len(accountData[2][1]) >= 3) then if (string.len(accountData[2][2]) >= 3) then if (string.len(accountData[2][3]) >= 7) then attemptRegister("attemptRegister", resourceRoot, accountData[2][1], hash("sha512", accountData[2][2]), accountData[2][3]); else serverResponse("shortEmail"); end end else serverResponse("shortPassword"); end else serverResponse("shortUsername"); end if (empty) then serverResponse("emptyFields"); end end -- Szerver addEvent("attemptRegister", true); addEventHandler("attemptRegister", resourceRoot, function (un, pass, email) if not (isPlayerBanned) then local qh = dbQuery(con, "SELECT * FROM accounts WHERE username=? OR email=?", un, email); local user = dbPoll(qh, 500); if (user) then if not (#user > 0) then dbExec(con, "INSERT INTO accounts SET username=?, password=?, email=?", un, pass, email); triggerClientEvent(client, "accountServerResponse", resourceRoot, "registerSucces"); else triggerClientEvent(client, "accountServerResponse", resourceRoot, "existingAccount"); end else triggerClientEvent(client, "accountServerResponse", resourceRoot, "unknownError"); end else triggerClientEvent(client, "accountServerResponse", resourceRoot, "playerBanned"); end end );
  10. A kérdés a következő lenne, hogy birnék az accountData-ba a játékos által beírt szöveget megadni. Benne van a scriptben amit Worthless is csinált (direkt letöltöttem és bemásoltam azt a részt), de úgy sem jó. local sx, sy = guiGetScreenSize(); local relX, relY = sx/1680, sy/1050; local isPanelVisible = true; local panelState = "1"; -- 1 = Bejelentkezés, 2 = Regisztráció, 3 = Karakter létrehozás showCursor(true); setPlayerHudComponentVisible("all", false); showChat(true); local panelPosition = {0.79, 0.25}; local buttonColors = { [1] = tocolor(210, 155, 65, 150); [2] = tocolor(207, 83, 52, 150); }; local headerText = ""; local accountData = { -- Beviteli mezők tartalma [1] = { -- Bejelentkezés [1] = "", -- Felhasználónév [2] = "", -- Jelszó }, [2] = { -- Regisztráció [1] = "", -- Felhasználónév [2] = "", -- Jelszó [3] = "", -- E-Mail }, }; local dataPointer = false; addEventHandler("onClientRender", root, function() dxDrawRectangle( sx*panelPosition[1], sy*panelPosition[2], relX*300, relY*500, tocolor( 0, 0, 0, 150 ) ); dxDrawRectangle( sx*panelPosition[1], sy*panelPosition[2], relX*5, relY*500, tocolor( 210, 155, 65, 255 ) ); dxDrawText("ViolantGaming", sx*(panelPosition[1]+0.08), sy*(panelPosition[2]+0.005), sx*(panelPosition[1]+0.1), sy*(panelPosition[2]+0.05), tocolor( 210, 155, 65, 255 ), relX*2, relY*2, "default-bold", "center"); dxDrawText(headerText, sx*(panelPosition[1]+0.08), sy*(panelPosition[2]+0.03), sx*(panelPosition[1]+0.1), sy*(panelPosition[2]+0.6), tocolor( 255, 255, 255, 255 ), relX*1.5, relY*1.5, "default-bold", "center"); -- Login felület if (panelState == "1") then headerText = "Bejelentkezés"; -- Felhasználónév dxDrawText("Felhasználónév", sx*(panelPosition[1]+0.08), sy*(panelPosition[2]+0.075), sx*(panelPosition[1]+0.1), sy*(panelPosition[2]+0.07), tocolor( 255, 255, 255, 255 ), relX*1.5, relY*1.5, "default-bold", "center"); --dxDrawRectangle( sx*(panelPosition[1]+0.01), sy*(panelPosition[2]+0.2), relX*275, relY*50, tocolor( 255, 255, 255, 255)); dxDrawRectangle( sx*(panelPosition[1]+0.01), sy*(panelPosition[2]+0.1), relX*275, relY*50, tocolor( 95, 95, 95, 150 ) ); -- // Felső mező \\ -- if (panelState == "1") then -- Bejelentkező ablak if (dataPointer == 1) then -- Mező kijelölve dxDrawText(accountData[1][1].."|", sx*(panelPosition[1]+0.01), sy*(panelPosition[2]+0.11), sx*(panelPosition[1]+0.17), sy*(panelPosition[2]+0.9),tocolor( 255, 255, 255, 255 ), relX*1.5, relY*1.5, "default-bold", "center"); else if (accountData == "") then else text = string.rep("*", string.len(accountData[2][2])); dxDrawText(accountData[1][1], sx*(panelPosition[1]+0.01), sy*(panelPosition[2]+0.11), sx*(panelPosition[1]+0.17), sy*(panelPosition[2]+0.9), tocolor( 255, 255, 255, 255 ), relX*1.5, relY*1.5, "default-bold", "center"); end end end dxDrawRectangle( sx*(panelPosition[1]+0.01), sy*(panelPosition[2]+0.2), relX*275, relY*50, tocolor( 95, 95, 95, 150 ) ); dxDrawText("Jelszó", sx*(panelPosition[1]+0.08), sy*(panelPosition[2]+0.175), sx*(panelPosition[1]+0.1), sy*(panelPosition[2]+0.07), tocolor( 255, 255, 255, 255 ), relX*1.5, relY*1.5, "default-bold", "center"); -- // Bejelentkezés : Jelszó \\ -- if (panelState == "1") then -- Regisztrációs ablak local text; if (dataPointer == 2) then -- Mező kijelölve text = string.rep("*", string.len(accountData[1][2])); dxDrawText(accountData[1][2].."|", sx*(panelPosition[1]+0.01), sy*(panelPosition[2]+0.21), sx*(panelPosition[1]+0.17), sy*(panelPosition[2]+0.9), tocolor( 255, 255, 255, 255 ), relX*1.5, relY*1.5, "default-bold", "center"); else if (accountData == "") then else dxDrawText(accountData[1][2], sx*(panelPosition[1]+0.01), sy*(panelPosition[2]+0.21), sx*(panelPosition[1]+0.17), sy*(panelPosition[2]+0.9), tocolor( 255, 255, 255, 255 ), relX*1.5, relY*1.5, "default-bold", "center"); end end end dxDrawRectangle( sx*(panelPosition[1]+0.01), sy*(panelPosition[2]+0.34), relX*275, relY*50, buttonColors[1]); -- Bejelentkező gomb dxDrawRectangle( sx*(panelPosition[1]+0.01), sy*(panelPosition[2]+0.40), relX*275, relY*50, buttonColors[2]); -- Regisztrációs gomb dxDrawText("Bejelentkezés", sx*(panelPosition[1]+0.01), sy*(panelPosition[2]+0.35), sx*(panelPosition[1]+0.17), sy*(panelPosition[2]+0.9), tocolor( 255, 255, 255, 255 ), relX*2, relY*2, "default-bold", "center"); dxDrawText("Regisztráció", sx*(panelPosition[1]+0.01), sy*(panelPosition[2]+0.41), sx*(panelPosition[1]+0.17), sy*(panelPosition[2]+0.9), tocolor( 255, 255, 255, 255 ), relX*2, relY*2, "default-bold", "center"); elseif (panelState == "2") then headerText = "Regisztráció"; -- Felhasználónév dxDrawText("Felhasználónév", sx*(panelPosition[1]+0.08), sy*(panelPosition[2]+0.075), sx*(panelPosition[1]+0.1), sy*(panelPosition[2]+0.07), tocolor( 255, 255, 255, 255 ), relX*1.5, relY*1.5, "default-bold", "center"); dxDrawRectangle( sx*(panelPosition[1]+0.01), sy*(panelPosition[2]+0.1), relX*275, relY*50, tocolor( 95, 95, 95, 150 ) ); -- // Felhasználónév : Regisztráció \\ -- if (panelState == "2") then -- Regisztrációs ablak if (dataPointer == 1) then -- Mező kijelölve dxDrawText(accountData[2][1].."|", sx*(panelPosition[1]+0.01), sy*(panelPosition[2]+0.11), sx*(panelPosition[1]+0.17), sy*(panelPosition[2]+0.9), tocolor( 255, 255, 255, 255 ), relX*1.5, relY*1.5, "default-bold", "center"); else if (accountData == "") then else dxDrawText(accountData[2][1], sx*(panelPosition[1]+0.01), sy*(panelPosition[2]+0.11), sx*(panelPosition[1]+0.17), sy*(panelPosition[2]+0.9), tocolor( 255, 255, 255, 255 ), relX*1.5, relY*1.5, "default-bold", "center"); end end end -- // Regisztrációs ablak : Jelszó \\ -- dxDrawRectangle( sx*(panelPosition[1]+0.01), sy*(panelPosition[2]+0.18), relX*275, relY*50, tocolor( 95, 95, 95, 150 ) ); dxDrawText("Jelszó", sx*(panelPosition[1]+0.08), sy*(panelPosition[2]+0.16), sx*(panelPosition[1]+0.1), sy*(panelPosition[2]+0.07), tocolor( 255, 255, 255, 255 ), relX*1.5, relY*1.5, "default-bold", "center"); if (panelState == "2") then -- Regisztrációs ablak local text; if (dataPointer == 2) then -- Mező kijelölve text = string.rep("*", string.len(accountData[2][2])); dxDrawText(text.."|", sx*(panelPosition[1]+0.01), sy*(panelPosition[2]+0.19), sx*(panelPosition[1]+0.17), sy*(panelPosition[2]+0.9), tocolor( 255, 255, 255, 255 ), relX*1.5, relY*1.5, "default-bold", "center"); else if (accountData == "") then else text = string.rep("*", string.len(accountData[2][2])); dxDrawText(text, sx*(panelPosition[1]+0.01), sy*(panelPosition[2]+0.19), sx*(panelPosition[1]+0.17), sy*(panelPosition[2]+0.9), tocolor( 255, 255, 255, 255 ), relX*1.5, relY*1.5, "default-bold", "center"); end end end dxDrawRectangle( sx*(panelPosition[1]+0.01), sy*(panelPosition[2]+0.26), relX*275, relY*50, tocolor( 95, 95, 95, 150 ) ); dxDrawText("E-Mail", sx*(panelPosition[1]+0.08), sy*(panelPosition[2]+0.24), sx*(panelPosition[1]+0.1), sy*(panelPosition[2]+0.07), tocolor( 255, 255, 255, 255 ), relX*1.5, relY*1.5, "default-bold", "center"); if (panelState == "2") then -- Regisztrációs ablak if (dataPointer == 3) then -- Mező kijelölve dxDrawText(accountData[2][3].."|", sx*(panelPosition[1]+0.01), sy*(panelPosition[2]+0.27), sx*(panelPosition[1]+0.17), sy*(panelPosition[2]+0.9), tocolor( 255, 255, 255, 255 ), relX*1.5, relY*1.5, "default-bold", "center"); else if (accountData == "") then else dxDrawText(accountData[2][3], sx*(panelPosition[1]+0.01), sy*(panelPosition[2]+0.27), sx*(panelPosition[1]+0.17), sy*(panelPosition[2]+0.9), tocolor( 255, 255, 255, 255 ), relX*1.5, relY*1.5, "default-bold", "center"); end end end dxDrawRectangle( sx*(panelPosition[1]+0.01), sy*(panelPosition[2]+0.34), relX*275, relY*50, buttonColors[1]); -- Regisztrációs gomb dxDrawRectangle( sx*(panelPosition[1]+0.01), sy*(panelPosition[2]+0.40), relX*275, relY*50, buttonColors[2]); -- Vissza gomb dxDrawText("Regisztráció", sx*(panelPosition[1]+0.01), sy*(panelPosition[2]+0.35), sx*(panelPosition[1]+0.175), sy*(panelPosition[2]+0.34), tocolor( 255, 255, 255, 255 ), relX*2, relY*2, "default-bold", "center"); dxDrawText("Visszalépés", sx*(panelPosition[1]+0.01), sy*(panelPosition[2]+0.41), sx*(panelPosition[1]+0.175), sy*(panelPosition[2]+0.34), tocolor( 255, 255, 255, 255 ), relX*2, relY*2, "default-bold", "center"); end end); addEventHandler("onClientCursorMove", root, function (cX, cY) if (isPanelVisible) then if ( (cX >= panelPosition[1]+0.01) and (cY >= panelPosition[2]+0.34) and (cX <= panelPosition[1]+0.175) and (cY <= panelPosition[2]+0.39) ) then -- Gombon van a kurzor buttonColors[1] = tocolor(210, 155, 65, 255); else -- Nincs a gombon a kurzor buttonColors[1] = tocolor(210, 155, 65, 150); end if ( (cX >= panelPosition[1]+0.01) and (cY >= panelPosition[2]+0.40) and (cX <= panelPosition[1]+0.175) and (cY <= panelPosition[2]+0.45) ) then -- Gombon van a kurzor buttonColors[2] = tocolor(207, 83, 52, 255); else -- Nincs a gombon a kurzor buttonColors[2] = tocolor(207, 83, 52, 150); end end end); addEventHandler("onClientClick", root, function(button, state) if (isPanelVisible) then local cX, cY = getCursorPosition(); if ( ( button == "left" ) and ( state == "down" ) ) then if (panelState == "1") then if ( (cX >= panelPosition[1]+0.01) and (cY >= panelPosition[2]+0.1) and (cX <= panelPosition[1]+0.175) and (cY <= panelPosition[2]+0.15) ) then dataPointer = 1; end if ( (cX >= panelPosition[1]+0.01) and (cY >= panelPosition[2]+0.2) and (cX <= panelPosition[1]+0.175) and (cY <= panelPosition[2]+0.25) ) then dataPointer = 2; end elseif (panelState == "2") then if ( (cX >= panelPosition[1]+0.01) and (cY >= panelPosition[2]+0.1) and (cX <= panelPosition[1]+0.175) and (cY <= panelPosition[2]+0.15) ) then dataPointer = 1; end if ( (cX >= panelPosition[1]+0.01) and (cY >= panelPosition[2]+0.16) and (cX <= panelPosition[1]+0.175) and (cY <= panelPosition[2]+0.22) ) then dataPointer = 2; end if ( (cX >= panelPosition[1]+0.01) and (cY >= panelPosition[2]+0.27) and (cX <= panelPosition[1]+0.175) and (cY <= panelPosition[2]+0.31) ) then dataPointer = 3; end end if ( (cX >= panelPosition[1]+0.01) and (cY >= panelPosition[2]+0.34) and (cX <= panelPosition[1]+0.175) and (cY <= panelPosition[2]+0.39) ) then if ( panelState == "1" ) then execLogin(); elseif ( panelState == "2" ) then execRegister(); end end if ( (cX >= panelPosition[1]+0.01) and (cY >= panelPosition[2]+0.40) and (cX <= panelPosition[1]+0.175) and (cY <= panelPosition[2]+0.45) ) then if ( panelState == "1" ) then panelState = "2"; elseif ( panelState == "2" ) then panelState = "1"; end end end end end ); addEventHandler("onClientCharacter", resourceRoot, function(char) if (isPanelVisible == true) then if (dataPointer > 0) then accountData[panelState][dataPointer] = accountData[panelState][dataPointer][char] end end end ); function execLogin() outputChatBox("Bejelentkező gomb működik!"); end function execRegister() outputChatBox("Regisztrációs gomb működik!"); end
  11. -- Ez a server oldali script local rigPrice = 50000; function buyMiningRig(player, amount) local money = getPlayerMoney(localPlayer); if (money >= rigPrice) then money - rigPrice outputChatBox("#ffffff[Bitcoin] Sikeresen vettél egy bányászgépet!", 0, 0, 0, true); end end addCommandHandler("buyminingrig", root, buyMiningRig); -- Ez pedig a kliens oldali local maxMiningRigs = 50; local btcPrice = 1500000; local minerToggle = false; local playerBtc = 0; local miningRigs = 0; function mineBtc(howMuch) playerBtc + howMuch; if (minerToggle) then setTimer(mineBtc, 1000, 1, 0.00001); end end function displayBtc() outputChatBox("[Bitcoin] A jelenlegi bitcoinjaid száma:"..playerBtc.. ", és értéke :" ..btcprice/playerBtc); end addCommandHandler("btcamount", root, displayBtc) function toggleMinerOn() if (minerToggle == false) then minerToggle = true; outputChatBox("[Bitcoin] A bányászgép bekapcsolva!"); mineBtc(); elseif (minerToggle == true) then minerToggle = false; outputChatBox("[Bitcoin] A bányászgép kikapcsolva!"); end end addCommandHandler("togglebtc", root, toggleMiner); (A két script ugyan abba a meta-ba van beleírva!) A lényeg annyi lenne, hogy a szerver oldali scriptből hogy tudnék hozzáadni a "miningRigs" változóhoz egy adott mennyiséget. Ha valaki tudna ebbe segíteni, azt megköszönném, legyen bármilyen hosszú a script csak jó legyen.
×
×
  • Create New...