Zaloguj się by uzyskać pełen dostęp. Nie masz jeszcze konta? Założ je już teraz w kilka sekund.

Wysłany: 2018-05-10, 03:56


Vxen







Wiek: 27
Na forum: 4086 dni
Posty: 293

Piwa: 1299

Respekt: 130,5
Respekt: 130,5

W panelu logowania zrobi?em lataj?c? kamer? dzi?ki smoothMoveCamera, no i po zalogowaniu kamera stoi w ostanim miejscu i nie przechodzi na gracza... jak temu zaradzi??

[ Dodano: 2018-05-10, 05:03 ]
local sm = {}
sm.moov 0
sm.object1,sm.object2 nil,nil
 
local function removeCamHandler()
    if(sm.moov == 1)then
        sm.moov 0
    end
end
 
local function camRender()
    if (sm.moov == 1then
        local x1,y1,z1 getElementPosition(sm.object1)
        local x2,y2,z2 getElementPosition(sm.object2)
        setCameraMatrix(x1,y1,z1,x2,y2,z2)
    end
end
addEventHandler("onClientPreRender",root,camRender)
 
function smoothMoveCamera(x1,y1,z1,x1t,y1t,z1t,x2,y2,z2,x2t,y2t,z2t,time)
    if(sm.moov == 1)then return false end
    sm.object1 createObject(1337,x1,y1,z1)
    sm.object2 createObject(1337,x1t,y1t,z1t)
    setElementAlpha(sm.object1,0)
    setElementAlpha(sm.object2,0)
    setObjectScale(sm.object1,0.01)
    setObjectScale(sm.object2,0.01)
    moveObject(sm.object1,time,x2,y2,z2,0,0,0,"InOutQuad")
    moveObject(sm.object2,time,x2t,y2t,z2t,0,0,0,"InOutQuad")
    sm.moov 1
    setTimer(removeCamHandler,time,1)
    setTimer(destroyElement,time,1,sm.object1)
    setTimer(destroyElement,time,1,sm.object2)
    return true
end

local swsh guiGetScreenSize()
local w= (sw/1680), (sh/1050)



local gui = {
    login guiCreateEdit(0.45*w0.35*h0.15*w0.04*h"msmsmsm"true),
    pass guiCreateEdit(0.45*w0.41*h0.15*w0.04*h"12345"true),
}



function renderDX()
    dxDrawRectangle(620*w332*h417*w332*htocolor(000180), false)
    dxDrawLine(620*w500*h1037*w500*htocolor(255255255127), 1false)
    dxDrawLine(620*w580*h1037*w580*htocolor(255255255127), 1false)
    dxDrawText("Zaloguj si?"750*w531*h890*w553*htocolor(255255255255), 2.20"default-bold""center""center"falsefalsefalsefalsefalse)
    dxDrawText("Zarejestruj si?"750*w597*h890*w636*htocolor(255255255255), 2.20"default-bold""center""center"falsefalsefalsefalsefalse)
    dxDrawText("Login:"527*w491*h839*w260*htocolor(255255255255), 1.00"default-bold""center""center"falsefalsefalsefalsefalse)
    dxDrawText("Has?o:"527*w455*h839*w420*htocolor(255255255255), 1.00"default-bold""center""center"falsefalsefalsefalsefalse)
    dxDrawImage(550*w50*h539*w400*h,"files/logo.png"000tocolor(255255255255), true) 
    
    dxDrawRectangle(475*w530*h415*w53*htocolor(0255255180), false)

    dxDrawRectangle(475*w583*h415*w53*htocolor(255255255180), false)
end



addEventHandler("onClientResourceStart"resourceRoot, function()
    showGUI(true)
    fadeCamera(true)
    guiEditSetMasked(gui.passtrue)
    smoothMoveCamera (-1527.97180, -259.8828114.34688, -1555.83667, -203.4572019.37344, -1661.17383, -168.6818819.37344, -1632.46838, -138.4301919.373448000)

end)



addEvent("closePanel"true)
addEventHandler("closePanel"resourceRoot, function()
    showGUI(false)
end)



addEventHandler("onClientClick"root, function(btn,state)
    local login guiGetText(gui.login)
    local pass guiGetText(gui.pass)
    if guiGetVisible(gui.login) and guiGetVisible(gui.passthen
        if btn == "left" and state == "up" then
            if isMouseInPosition(475*w530*h415*w53*hthen
                triggerServerEvent("tryLogin"resourceRootloginpass)
            elseif isMouseInPosition(475*w583*h415*w53*hthen
                if #login >= 3 and #pass >= 3 then
                    triggerServerEvent("tryRegister"resourceRootloginpass)
                else
                    outputChatBox("* Login i/lub has?o musz? mie? minimalnie 3 znaki!")
                end
            end
        end
    end
end)



function showGUI(value)
    if value then
        showCursor(true)
        setPlayerHudComponentVisible("all"false)
        playSound("files/intro.mp3")
        addEventHandler("onClientRender"rootrenderDX)
        guiSetVisible(gui.logintrue)
        guiSetVisible(gui.passtrue)

    else
        showCursor(false)
        setPlayerHudComponentVisible("all"true)
        destroyElement(s)
        removeEventHandler("onClientRender"rootrenderDX)
        guiSetVisible(gui.loginfalse)
        guiSetVisible(gui.passfalse)        
    end
end



function isMouseInPosition(x,y,width,height)
    if not isCursorShowing() then return false end
    
    local sx,sy guiGetScreenSize()
    local cx,cy getCursorPosition()
    local cx,cy = (cx sx), (cy sy)
    if (cx >= and cx <= width) and (cy >= and cy <= heightthen
        return true
    else
        return false
    end
end


[ Dodano: 2018-05-10, 05:04 ]
s-lua
addEventHandler("onResourceStart"resourceRoot, function()
    local baza "logo.res"
    local host "127.0.0.1"
    local user "root"
    local pass ""

    db dbConnect("mysql""dbname="..baza..";host="..hostuserpass"share=1") -- Po??czenie z serwerem MySQL.
end)

function blockChatMessage()
    cancelEvent()
end
addEventHandler"onPlayerChat"getRootElement(), blockChatMessage )

addEvent("tryRegister"true)
addEventHandler("tryRegister"resourceRoot, function(login,pass)
    local q dbQuery(db"SELECT login FROM users WHERE login=?"login)
    local w dbPoll(q, -1)
    if and #w > 0 then
        outputChatBox("* Istnieje ju? konto o podanym nicku!"client)
    else
        outputChatBox("* Rejestrujesz si? pomy?lnie!"client)
        dbExec(db"INSERT INTO users SET login=?, pass=?, skin=137, pieniadze=800, health=100, posx=2252.31, posy=-91.91, posz=26.48, rotx=90"loginmd5(pass))
    end
end)

addEvent("tryLogin"true)
addEventHandler("tryLogin"resourceRoot, function(login,pass)
    local q dbQuery(db"SELECT * FROM users WHERE login=? AND pass=?"loginmd5(pass), getPlayerIP(client))
    local w dbPoll(q, -1)
    if and #w > 0 then
            outputChatBox("Witaj na Social Track Role Play!"client)
            removeEventHandler("onPlayerChat"getRootElement(), blockChatMessage)
       triggerClientEvent(client"closePanel"resourceRoot)
       setCameraTarget(clientclient)
       setPlayerName(clientw[1].login)
       setPlayerMoney(clientw[1].pieniadze)
       setElementHealth(sourcew[1].health)
       setElementFrozen(client,false)
       setPedArmor(clientw[1].armor)
       setElementModel(clientw[1].skin)
       setElementPosition(clientw[1].posxw[1].posyw[1].posz)
       dbExec(db"UPDATE users SET serial=?, playerIP=?"getPlayerSerial(client), getPlayerIP(client))
    else
        outputChatBox("Podany login lub has?o s? nieprawid?owe! #FFFFFFSpr?buj jeszcze raz."client25500true)
    end
end)
--onPlayer
--onPlayerLogout
--onPlayerQuit
--getElementHealth
addEventHandler("onPlayerQuit",root,function()
    local login getPlayerName(source)
    local pieniadze getPlayerMoney(source)
    local health getElementHealth(source)
    local skin getElementModel(source)
    local x,y,getElementPosition(source)
    local armor getPedArmor(source)
    dbExec(db,"UPDATE users SET pieniadze=?, health=?, skin = ?, posx=?, posy=?, posz=?, armor=? WHERE login=?",pieniadzehealthskinxyzarmorlogin)
end)



Postaw piwo autorowi tego posta
 

 
Wysłany: 2018-05-10, 16:09


Xrent

-






Wiek: 21
Na forum: 3047 dni
Posty: 230
Nick w MP: Pazdam

Piwa: 535

Respekt: 295,3
Respekt: 295,3Respekt: 295,3Respekt: 295,3

Ostrzeżeń: 60%

Więcej informacji znajdziesz w Wikipedii MTA:

setCameraTarget
je?li, dobrze rozumiem.
Bo u mnie te? mam cameraTarget no i po kamerze od razu spawnuje u ciebie z tego co widze te? jest ale chyba w z?ym miejscu jak b?d? pc poprawi?.
 addEvent("closePanel"true)
addEventHandler("closePanel"resourceRoot, function()
    showGUI(false)
end
w ko?cowej fazie logowania daj setCameraTarget. Dok?adnie, nie wiem bo na tel jestem daj w end login ev w c side spr?buj bo mo?e w side cos nie dziala. Ja mam w c side i dziala.

Postaw piwo autorowi tego posta
 

 
Tagi: czemu :: kamera :: staje :: miejscu :: zalogowaniu
Anonymous





Na forum: 245 dni
Posty: 1



Anonymous Koniecznie zajrzyj na:






Skocz do:  
Wyświetl posty z ostatnich:   
GTAONLINE.PL » JĘZYKI PROGRAMOWANIA » LUA Ten temat jest zablokowany bez możliwości zmiany postów lub pisania odpowiedzi

Nie możesz pisać nowych tematów
Nie możesz odpowiadać w tematach
Nie możesz zmieniać swoich postów
Nie możesz usuwać swoich postów
Nie możesz głosować w ankietach
Dodaj temat do Ulubionych
Wersja do druku