Jump to content

تمت الافادة طلب | ماتركس بزر معين


Recommended Posts

  • Replies 73
  • Created
  • Last Reply

Top Posters In This Topic

هذا مثال,

x,y = guiGetScreenSize() 
  
shLogin = guiCreateStaticImage(x + 23,y + 349, 301, 44, "login.png", true ) 
  
function Update() 
    x,y,z,x2,y2,z2 = getCameraMatrix() 
        setCameraMatrix(x+1,y,z,x2,y2,z2) 
end 
  
addEventHandler('onClientGUIClick',shLogin, 
function() 
    addEventHandler('onClientRender',root,Update) 
    end,false 
) 
Link to comment

عجزت في وش بالضبط؟

لأني ما اشوف صعوبه ؟

حط بس احداثيات !-_-

وهذا مثال ,

local sm = {} 
sm.moov = 0 
sm.object1, sm.object2 = nil, nil 
  
local function removeCamHandler () 
    if(sm.moov == 1) then 
        sm.moov = 0 
        removeEventHandler ( "onClientPreRender", getRootElement(), camRender ) 
    end 
end 
  
local function camRender () 
    local x1, y1, z1 = getElementPosition ( sm.object1 ) 
    local x2, y2, z2 = getElementPosition ( sm.object2 ) 
    setCameraMatrix ( x1, y1, z1, x2, y2, z2 ) 
end 
  
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" ) 
  
    addEventHandler ( "onClientPreRender", getRootElement(), camRender ) 
    sm.moov = 1 
    setTimer ( removeCamHandler, time, 1 ) 
    setTimer ( destroyElement, time, 1, sm.object1 ) 
    setTimer ( destroyElement, time, 1, sm.object2 ) 
    return true 
end 
  
x,y = guiGetScreenSize() 
  
shLogin = guiCreateStaticImage(x + 23,y + 349, 301, 44, "login.png", true ) 
  
addEventHandler('onClientGUIClick',shLogin, 
function() 
    smoothMoveCamera(1791.33056,926.23474,42.28994,1791.33056,926.23474,42.28994,1788.45043,1044.94250,28.5875396,1788.45043,1044.94250,28.5875396,3000) 
    end,false 
) 
Link to comment

هذا مثال مثل اللي تبيه بالضبط

  
x,y = guiGetScreenSize() 
  
function centerWindow(center_window) 
    local screenW,screenH=guiGetScreenSize() 
    local windowW,windowH=guiGetSize(center_window,false) 
    local x,y = (screenW-windowW)/2,(screenH-windowH)/2 
    guiSetPosition(center_window,x,y,false) 
end 
  
function cameraMoveSoft(camPosX, camPosY, camPosZ, newCamPosX, newCamPosY, newCamPosZ, camLookX, camLookY, camLookZ, newCamLookX, newCamLookY, newCamLookZ, typeCameraMove) 
local x = 0 
local y = 0 
  
function moveCamera() 
x = x + 0.00011 
y = y + 0.1000 
local cameraX, cameraY, cameraZ = interpolateBetween(camPosX, camPosY, camPosZ, newCamPosX, newCamPosY, newCamPosZ, x, "Linear") 
local lookX, lookY, lookZ = interpolateBetween(camLookX, camLookY, camLookZ, newCamLookX, newCamLookY, newCamLookZ, y, "Linear") 
setCameraMatrix(cameraX, cameraY, cameraZ, lookX, lookY, lookZ) 
if cameraX == newCamPosX and cameraY == newCamPosY and cameraZ == newCamPosZ and lookX == newCamLookX and lookY == newCamLookY and lookZ == newCamLookZ then 
removeEventHandler("onClientRender", getRootElement(), moveCamera) 
end 
end 
addEventHandler("onClientRender", getRootElement(), moveCamera) 
end 
  
shLogin = guiCreateStaticImage(x + 23,y + 349, 301, 44, "window.png", true ) 
centerWindow(shLogin) 
guiSetVisible(shLogin,true) 
showCursor(true) 
  
  
  
addEventHandler('onClientGUIClick',shLogin, 
function() 
    cameraMoveSoft(x,y,z, -2681,2122, 100, 0, 0, 0, 0, 20, 0, "Linear") 
    setTimer(function() removeEventHandler("onClientRender", getRootElement(), moveCamera) end,10000,1) 
    showCursor(false) 
    end,false 
) 
  

طبعا اول ما تضغط على الصورة راح يحرك الكاميرا على حسب الاحداثيات اللي انت حاطها في cameraMoveSoft اللي بسطر 37

مثال سهل وبسيط ^_^

Link to comment

ما ظبط المود فيه اخطاء

انا المود حقي في ثلاث ازرار ريجستر ونو لو ان (دخول زائر) الزرين اختفوا وزر لوغين ظل مثل ما هو ويوم اضغط على لوغين الماوس ما يجيني

وش الحل هذا الكلنت حقي

:cry::cry::cry::cry::cry::cry::cry::cry:

  
wdwLogin_Pannel = {}
tabPannel_Main = {}
tab_Login = {}
tab_Register = {}
 
function open_log_reg_pannel()
if not(isElement(wdwLogin_Pannel)) then
     
    showChat(false)
   
    x,y = guiGetScreenSize()
   
    local sWidth,sHeight = guiGetScreenSize()
    local Width,Height = 350,350
    local X = (sWidth/2) - (Width/2)
    local Y = (sHeight/2) - (Height/2)
   
   
    Image = guiCreateStaticImage( 0, 0, 1920, 1200, "login_bg.jpeg", false )
    guiSetEnabled (Image, false)
   
 
    shLogin = guiCreateStaticImage( X + 23, Y + 349, 301, 44, "login.png", false )
    addEventHandler("onClientGUIClick",shLogin,onClickBtnLogin)
    addEventHandler( "onClientMouseEnter",shLogin,LoginSH)
    addEventHandler("onClientMouseLeave",shLogin,SErem)
   
 
x,y = guiGetScreenSize()
 
function centerWindow(center_window)
    local screenW,screenH=guiGetScreenSize()
    local windowW,windowH=guiGetSize(center_window,false)
    local x,y = (screenW-windowW)/2,(screenH-windowH)/2
    guiSetPosition(center_window,x,y,false)
end
 
function cameraMoveSoft(camPosX, camPosY, camPosZ, newCamPosX, newCamPosY, newCamPosZ, camLookX, camLookY, camLookZ, newCamLookX, newCamLookY, newCamLookZ, typeCameraMove)
local x = 0
local y = 0
 
function moveCamera()
x = x + 0.00011
y = y + 0.1000
local cameraX, cameraY, cameraZ = interpolateBetween(camPosX, camPosY, camPosZ, newCamPosX, newCamPosY, newCamPosZ, x, "Linear")
local lookX, lookY, lookZ = interpolateBetween(camLookX, camLookY, camLookZ, newCamLookX, newCamLookY, newCamLookZ, y, "Linear")
setCameraMatrix(cameraX, cameraY, cameraZ, lookX, lookY, lookZ)
if cameraX == newCamPosX and cameraY == newCamPosY and cameraZ == newCamPosZ and lookX == newCamLookX and lookY == newCamLookY and lookZ == newCamLookZ then
removeEventHandler("onClientRender", getRootElement(), moveCamera)
end
end
addEventHandler("onClientRender", getRootElement(), moveCamera)
end
 
shLogin = guiCreateStaticImage(x + 23,y + 349, 301, 44, "Window.png", true )
centerWindow(shLogin)
guiSetVisible(shLogin,true)
showCursor(true)
 
 
 
addEventHandler('onClientGUIClick',shLogin,
function()
    cameraMoveSoft(x,y,z, -2681,2122, 100, 0, 0, 0, 0, 20, 0, "Linear")
    setTimer(function() removeEventHandler("onClientRender", getRootElement(), moveCamera) end,10000,1)
    showCursor(false)
    end,false
)
 
    Login_img = guiCreateStaticImage( X, Y + 120, 350, 350, "login_window.png", false )
    guiSetEnabled (Login_img, false)
 
    edit_Login = guiCreateEdit(X + 20,Y + 205,250,35,"",false)
    edit_password = guiCreateEdit(X + 20,Y + 280,250,35,"",false)
    guiEditSetMaxLength ( edit_Login,25)
    guiEditSetMaxLength ( edit_password,25)
    guiEditSetMasked ( edit_password, true )
   
    lbl_about_legth = guiCreateLabel(142,42,184,18,"",false)
    guiLabelSetColor(lbl_about_legth,253,255,68)
    guiLabelSetVerticalAlign(lbl_about_legth,"center")
    guiLabelSetHorizontalAlign(lbl_about_legth,"center",false)
   
    checkbox_save = guiCreateCheckBox(X + 175,Y + 260,100,20,"(Remember me!)",false,false)
    guiSetFont(checkbox_save,"default-small")
   
   
    login_tab_error_msg = guiCreateLabel(X,Y + 310,364,31,"Error_login_tab",false)
    guiLabelSetColor(login_tab_error_msg,255,0,0)
    guiLabelSetVerticalAlign(login_tab_error_msg,"center")
    guiLabelSetHorizontalAlign(login_tab_error_msg,"center",false)
    guiSetFont(login_tab_error_msg,"default-bold-small")
 
       
    shGuest = guiCreateStaticImage( X + 23, Y + 401, 143, 45, "guest.png", false ) -- A gomb
    addEventHandler("onClientGUIClick",shGuest,onClickGuest)
    addEventHandler( "onClientMouseEnter",shGuest,GuestSH)
    addEventHandler("onClientMouseLeave",shGuest,SErem)
   
    lbl_reg_top_info = guiCreateLabel(X - 70,Y + 380,500,30,"Fill out all fields. Do no't use: (\"!@#$\"%'^&*()\")",false)
    guiLabelSetColor(lbl_reg_top_info,255,234,55)
    guiLabelSetVerticalAlign(lbl_reg_top_info,"center")
    guiLabelSetHorizontalAlign(lbl_reg_top_info,"center",false)
    guiSetVisible(lbl_reg_top_info,false)
   
    edit_account_name = guiCreateEdit(X + 20,Y + 210,250,35,"",false)
    guiEditSetMaxLength ( edit_account_name,25)
    guiSetVisible(edit_account_name,false)
   
    edit__reg_tab_password = guiCreateEdit(X + 20,Y + 275,250,35,"",false)
    guiEditSetMaxLength ( edit__reg_tab_password,25)
    guiEditSetMasked ( edit__reg_tab_password, true )
    guiSetVisible(edit__reg_tab_password,false)
   
   
    edit__reg_tab_Repassword = guiCreateEdit(X + 20,Y + 345,250,35,"",false)
    guiEditSetMaxLength ( edit__reg_tab_Repassword,25)
    guiEditSetMasked ( edit__reg_tab_Repassword, true )
    guiSetVisible(edit__reg_tab_Repassword,false)
    guiSetEnabled (edit__reg_tab_Repassword, true) 
   
   
    shRegister = guiCreateStaticImage( X + 182, Y + 401, 143, 45, "register.png", false )
    addEventHandler("onClientGUIClick",shRegister,OnBtnRegister)
    addEventHandler( "onClientMouseEnter",shRegister,RegisterSH)
    addEventHandler("onClientMouseLeave",shRegister,SErem)
   
 
    shRegister2 = guiCreateStaticImage( X + 23, Y + 409, 301, 44, "register2.png", false )
    addEventHandler("onClientGUIClick",shRegister2,onClickBtnRegister)
    addEventHandler( "onClientMouseEnter",shRegister2,Register2SH)
    addEventHandler("onClientMouseLeave",shRegister2,SErem)
   
    guiSetVisible(shRegister2,false)
   
    reg_tab_error_msg = guiCreateLabel(X,Y + 310,364,31,"Error_reg_ttab",false)
    guiLabelSetColor(reg_tab_error_msg,255,20,0)
    guiLabelSetVerticalAlign(reg_tab_error_msg,"center")
    guiLabelSetHorizontalAlign(reg_tab_error_msg,"center",false)
    guiSetFont(reg_tab_error_msg,"default-bold-small")
   
 
    showCursor(true)
 
    guiSetText(reg_tab_error_msg, "")
    guiSetText(login_tab_error_msg, "")
   
   
    local username, password = loadLoginFromXML()
   
    if not( username == "" or password == "") then
        guiCheckBoxSetSelected ( checkbox_save, true )
        guiSetText ( edit_Login, tostring(username))
        guiSetText ( edit_password, tostring(password))
    else
        guiCheckBoxSetSelected ( checkbox_save, false )
        guiSetText ( edit_Login, tostring(username))
        guiSetText ( edit_password, tostring(password))
    end
    end
   
end
 
function LoginSH ()
    guiStaticImageLoadImage(shLogin, "sh.png" )
end
 
function RegisterSH ()
    guiStaticImageLoadImage(shRegister, "shr.png" )
end
 
function Register2SH ()
    guiStaticImageLoadImage(shRegister2, "shr2.png" )
end
 
function GuestSH ()
    guiStaticImageLoadImage(shGuest, "shg.png" )
end
 
function SErem ()
guiStaticImageLoadImage(shLogin, "login.png" )
guiStaticImageLoadImage(shRegister, "register.png" )
guiStaticImageLoadImage(shGuest, "guest.png" )
guiStaticImageLoadImage(shRegister2, "register2.png" )
end
 
function start_cl_resource()
    open_log_reg_pannel()
end
addEventHandler("onClientResourceStart",getResourceRootElement(getThisResource()),start_cl_resource)
 
 
function loadLoginFromXML()
    local xml_save_log_File = xmlLoadFile ("files/xml/userdata.xml")
    if not xml_save_log_File then
        xml_save_log_File = xmlCreateFile("files/xml/userdata.xml", "login")
    end
    local usernameNode = xmlFindChild (xml_save_log_File, "username", 0)
    local passwordNode = xmlFindChild (xml_save_log_File, "password", 0)
    if usernameNode and passwordNode then
        return xmlNodeGetValue(usernameNode), xmlNodeGetValue(passwordNode)
    else
        return "", ""
    end
    xmlUnloadFile ( xml_save_log_File )
end
 
 
function saveLoginToXML(username, password)
    local xml_save_log_File = xmlLoadFile ("files/xml/userdata.xml")
    if not xml_save_log_File then
        xml_save_log_File = xmlCreateFile("files/xml/userdata.xml", "login")
    end
    if (username ~= "") then
        local usernameNode = xmlFindChild (xml_save_log_File, "username", 0)
        if not usernameNode then
            usernameNode = xmlCreateChild(xml_save_log_File, "username")
        end
        xmlNodeSetValue (usernameNode, tostring(username))
    end
    if (password ~= "") then
        local passwordNode = xmlFindChild (xml_save_log_File, "password", 0)
        if not passwordNode then
            passwordNode = xmlCreateChild(xml_save_log_File, "password")
        end    
        xmlNodeSetValue (passwordNode, tostring(password))
    end
    xmlSaveFile(xml_save_log_File)
    xmlUnloadFile (xml_save_log_File)
end
addEvent("saveLoginToXML", true)
addEventHandler("saveLoginToXML", getRootElement(), saveLoginToXML)
 
 
 
function resetSaveXML()
        local xml_save_log_File = xmlLoadFile ("files/xml/userdata.xml")
        if not xml_save_log_File then
            xml_save_log_File = xmlCreateFile("files/xml/userdata.xml", "login")
        end
        if (username ~= "") then
            local usernameNode = xmlFindChild (xml_save_log_File, "username", 0)
            if not usernameNode then
                usernameNode = xmlCreateChild(xml_save_log_File, "username")
            end
        end
        if (password ~= "") then
            local passwordNode = xmlFindChild (xml_save_log_File, "password", 0)
            if not passwordNode then
                passwordNode =
Link to comment
function cameraMoveSoft(camPosX, camPosY, camPosZ, newCamPosX, newCamPosY, newCamPosZ, camLookX, camLookY, camLookZ, newCamLookX, newCamLookY, newCamLookZ, typeCameraMove) 
local x = 0 
local y = 0 
  
function moveCamera() 
x = x + 0.00011 
y = y + 0.1000 
local cameraX, cameraY, cameraZ = interpolateBetween(camPosX, camPosY, camPosZ, newCamPosX, newCamPosY, newCamPosZ, x, "Linear") 
local lookX, lookY, lookZ = interpolateBetween(camLookX, camLookY, camLookZ, newCamLookX, newCamLookY, newCamLookZ, y, "Linear") 
setCameraMatrix(cameraX, cameraY, cameraZ, lookX, lookY, lookZ) 
if cameraX == newCamPosX and cameraY == newCamPosY and cameraZ == newCamPosZ and lookX == newCamLookX and lookY == newCamLookY and lookZ == newCamLookZ then 
  
  

ممكن تعطيني مثل مثال الويكي

مثلا

1x ,1y ,1z = احداثيات موقع الكميرة

يعني ابي توضيج :lol:

Link to comment

اخوي انت لا تحرك في ذول الكودات شي .. :mrgreen:

  
function cameraMoveSoft(camPosX, camPosY, camPosZ, newCamPosX, newCamPosY, newCamPosZ, camLookX, camLookY, camLookZ, newCamLookX, newCamLookY, newCamLookZ, typeCameraMove) 
local x = 0 
local y = 0 
  
function moveCamera() 
x = x + 0.00011 
y = y + 0.1000 
local cameraX, cameraY, cameraZ = interpolateBetween(camPosX, camPosY, camPosZ, newCamPosX, newCamPosY, newCamPosZ, x, "Linear") 
local lookX, lookY, lookZ = interpolateBetween(camLookX, camLookY, camLookZ, newCamLookX, newCamLookY, newCamLookZ, y, "Linear") 
setCameraMatrix(cameraX, cameraY, cameraZ, lookX, lookY, lookZ) 
if cameraX == newCamPosX and cameraY == newCamPosY and cameraZ == newCamPosZ and lookX == newCamLookX and lookY == newCamLookY and lookZ == newCamLookZ then 
removeEventHandler("onClientRender", getRootElement(), moveCamera) 
end 
end 
addEventHandler("onClientRender", getRootElement(), moveCamera) 
end 
  

اللي عليك بس تعدل على :

  
addEventHandler('onClientGUIClick',shLogin, 
function() 
    cameraMoveSoft(x,y,z, -2681,2122, 100, 0, 0, 0, 0, 20, 0, "Linear") 
    setTimer(function() removeEventHandler("onClientRender", getRootElement(), moveCamera) end,10000,1) 
    showCursor(false) 
    end,false 
) 
  

x,y,z غيرها الى الاحداثيات اللي تبيها

Link to comment
1.x,y = guiGetScreenSize() 
2.  
3.shLogin = guiCreateStaticImage(x + 23,y + 349, 301, 44, "login.png", true ) 
4.  
5.function Update() 
6.    x,y,z,x2,y2,z2 = getCameraMatrix() 
7.        setCameraMatrix(x+1,y,z,x2,y2,z2) 
8.end 
9.  
10.addEventHandler('onClientGUIClick',shLogin, 
11.function() 
12.    addEventHandler('onClientRender',root,Update) 
13.    end,false 
14.) 

ياخي الواحد مايتعلم بسرعه ..@

سطر 6 حط احدثيات بداية ضغط login

وتحت انتهاء الاحدثيات

مثل ماقال ذا باست ...@

كودي هذا ما راح توقف الشاشه راح يظل يمشي ذذ,

واظن قد قلت له لكن الشكوى لله,

عجزت في وش بالضبط؟

لأني ما اشوف صعوبه ؟

حط بس احداثيات !-_-

وهذا مثال ,

local sm = {} 
sm.moov = 0 
sm.object1, sm.object2 = nil, nil 
  
local function removeCamHandler () 
    if(sm.moov == 1) then 
        sm.moov = 0 
        removeEventHandler ( "onClientPreRender", getRootElement(), camRender ) 
    end 
end 
  
local function camRender () 
    local x1, y1, z1 = getElementPosition ( sm.object1 ) 
    local x2, y2, z2 = getElementPosition ( sm.object2 ) 
    setCameraMatrix ( x1, y1, z1, x2, y2, z2 ) 
end 
  
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" ) 
  
    addEventHandler ( "onClientPreRender", getRootElement(), camRender ) 
    sm.moov = 1 
    setTimer ( removeCamHandler, time, 1 ) 
    setTimer ( destroyElement, time, 1, sm.object1 ) 
    setTimer ( destroyElement, time, 1, sm.object2 ) 
    return true 
end 
  
x,y = guiGetScreenSize() 
  
shLogin = guiCreateStaticImage(x + 23,y + 349, 301, 44, "login.png", true ) 
  
addEventHandler('onClientGUIClick',shLogin, 
function() 
    smoothMoveCamera(1791.33056,926.23474,42.28994,1791.33056,926.23474,42.28994,1788.45043,1044.94250,28.5875396,1788.45043,1044.94250,28.5875396,3000) 
    end,false 
) 

واظن لو دخل الويكي وشطف السينتاكس,

bool smoothMoveCamera ( float x1, float y1, float z1, float x1t, float y1t, float z1t, float x2, float y2, float z2, float x2t, float y2t, float z2t, int time ) 

x1, y1, z1: The camera's start position.

x1t, y1t, z1t: The camera's start look at.

x2, y2, z2: The camera's end position.

x2t, y2t, z2t: The camera's end look at.

time: The speed of the camera's movement.

كان فهم , ولكن كوبي بست -_-

Link to comment

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 account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    • No registered users viewing this page.

×
×
  • Create New...