ميدوح Posted October 22, 2017 Share Posted October 22, 2017 السلام عليكم ورحمة الله وبركاته اخباركم؟ DisplayName ={"Arabic","English","French","German","Korean","Romanian"} theElement = {} function setLanguageText(theElement,...) for n, k in pairs(theElement) do local hFile = fileOpen(DisplayName..".lng", true) local text = tostring(n) _G [ n ] = loadstring (hFile) fileWrite(hFile, text,... ) setElementData (n,"language:gui",...) end end function getLanguageText(text,DisplayName) if getElementData (text,"language:gui") then setLanguageText(text,DisplayName) end return setLanguageText(text,DisplayName) end --Example addEventHandler ("onClientResourceStart",resourceRoot,function() local screenWidth, screenHeight = guiGetScreenSize() local windowWidth, windowHeight = 200,100 local left = screenWidth/2 - windowWidth/2 local top = screenHeight/2 - windowHeight/2 local languagesComboBox = guiCreateComboBox ( left, top, windowWidth,windowHeight, "Languages", false ) for n, k in type("-gui" )do guiComboBoxAddItem ( languageComboBox, guiGetText(getLanguageText(n,"Arabic")) ) guiComboBoxAddItem ( languageComboBox, guiGetText(getLanguageText(n,"English")) ) guiComboBoxAddItem ( languageComboBox, guiGetText(getLanguageText(n,"German")) ) end if guiComboBoxGetSelected(languagesComboBox)then local button = guiCreateButton( 50, 80, 100, 100, "كبار شخصيات", false ) end end) افتح ملف Arabic.lng button = "كبار شخصيات" and English.lng button = "VIP" Link to comment
Abu-Solo Posted October 22, 2017 Share Posted October 22, 2017 (edited) مافهمتك, تبي لما يختار عربي يصير عربي ولما يختار انجليزي يصير انجليزي !. addEventHandler("onClientGUIDoubleClick", root, function () if source == languagesComboBox then local comboboxxx = guiComboBoxGetSelected(languagesComboBox) if comboboxxx == 0 then ---- انجليزي guiSetText(Button,"Text") elseif comboboxxx == 1 then --- عربي guiSetText(Button,"نص") end end end ) واذا هي بـ الالمنت داتا استخدم جلب الالمنت داتا او استخدم الـ useful function Edited October 22, 2017 by Abu-Solo 1 Link to comment
ميدوح Posted October 22, 2017 Author Share Posted October 22, 2017 18 minutes ago, Abu-Solo said: مافهمتك, تبي لما يختار عربي يصير عربي ولما يختار انجليزي يصير انجليزي !. addEventHandler("onClientGUIDoubleClick", root, function () if source == languagesComboBox then local comboboxxx = guiComboBoxGetSelected(languagesComboBox) if comboboxxx == 0 then ---- انجليزي guiSetText(Button,"Text") elseif comboboxxx == 1 then --- عربي guiSetText(Button,"نص") end end end ) ايوة انا ابغى كدا بس سويتها بس ما ابغى سكربت ياريت تعطيني ملف حق كل لغة يعني ملف العربي وملف الانجليزي وكدا كل ملف لحاله تعطيني اياه ياليت Link to comment
Abu-Solo Posted October 22, 2017 Share Posted October 22, 2017 1 hour ago, medo7 said: ايوة انا ابغى كدا بس سويتها بس ما ابغى سكربت ياريت تعطيني ملف حق كل لغة يعني ملف العربي وملف الانجليزي وكدا كل ملف لحاله تعطيني اياه ياليت ماتعرف تترجم؟ استخدم مترجم قوقل, Link to comment
ميدوح Posted October 22, 2017 Author Share Posted October 22, 2017 2 hours ago, Abu-Solo said: ماتعرف تترجم؟ استخدم مترجم قوقل, انا اقصد انه معايا الملف بس مو عارف كيف افتحه دحين انا معايا السكربت بس اللوحة ماتشتغل معايا لما اختار منها لغة Link to comment
Abu-Solo Posted October 23, 2017 Share Posted October 23, 2017 13 hours ago, medo7 said: انا اقصد انه معايا الملف بس مو عارف كيف افتحه دحين انا معايا السكربت بس اللوحة ماتشتغل معايا لما اختار منها لغة جرب تجيب الحدث حق اللغه من المود نفسه getElementData Link to comment
iMr.WiFi..! Posted October 23, 2017 Share Posted October 23, 2017 13 hours ago, medo7 said: انا اقصد انه معايا الملف بس مو عارف كيف افتحه دحين انا معايا السكربت بس اللوحة ماتشتغل معايا لما اختار منها لغة حط جدول بأول سطر كمثال كذا : languages = {} وعند كل ملف سوي كذا كمثال مثلاً داخل ملف اللغة العربية : languages["arabic"] = { } -- example .-. وعشان تعرف الكلمات سوي كذا languages["arabic"] = { button = "كبار الشخصيات" } واذا تبي تجيب اي كلمة سوي كذا local lang = getElementData ( localPlayer, "lang" ) or "arabic" local button = guiCreateButton( 50, 80, 100, 100, languages[arabic]['button'], false ) وعشان يغير اللغة حط الحدث كذا addEventHandler ( "onClientGUIComboBoxAccepted", root, function ( comboBox ) local item = guiComboBoxGetSelected ( Combo ) local text = tostring ( guiComboBoxGetItemText ( Combo , item ) ) if ( text ~= "" ) then setElementData ( localPlayer, "lang", string.lower ( text ) ) end end ) 1 Link to comment
Abdul KariM Posted October 23, 2017 Share Posted October 23, 2017 ترا مايحتاج داتا تقدر تسويها بالمتغيرات 2 Link to comment
Doffy Posted October 23, 2017 Share Posted October 23, 2017 12 minutes ago, Abdul KariM said: ترا مايحتاج داتا تقدر تسويها بالمتغيرات +1 1 Link to comment
</Mr.Tn6eL> Posted October 24, 2017 Share Posted October 24, 2017 (edited) function onDataChange(data) if source == localPlayer and data == "lang" then -- اسم الداتا للغة الاعب local file = File(source:getData "lang" ..".lng", true) local data = file:read(file.size) for var, text in data:gmatch "([%a_][_%w]*)%s*=%s*(\"(.*)\")" do local elem = _G[var] if isElement(elem) then -- وضع النص للعنصر elem.text = text end end end end * بعض العناصر لها وظيفة اخرى لتغير النص مثل القريد ليست * العناصر اللي تصنع بعد تغير الداتا لن يتغير لها * الطريقة قد تستهلك الذاكرة والمعالج اذا كان الملف كبير * قد لاتنفع للعناصر خارج السكربت الحالي * onDataChange ضع حدث تغير الداتا ل وعندي ملاحظات اخرى مدري كيف اشرحها اهم شي الفكرة العامة وصلت Edited October 24, 2017 by </Mr.Tn6eL> 3 Link to comment
ميدوح Posted October 27, 2017 Author Share Posted October 27, 2017 @</Mr.Tn6eL> ^ شكرا لك ظبطت معايا وشكرا لكل اللي ردوا..........................@</Mr.Tn6eL> دحين الملفات دي تمام بس ابغى المجلد حقها وكيف اغير اسم المجلد نفسه ؟ Link to comment
ميدوح Posted October 27, 2017 Author Share Posted October 27, 2017 function createNewResource (resourceName) local newResource = createResource ( tostring ( ":vip/"..resourceName )) -- Create the new resource. addResourceConfig(newResource, "client") triggerClientEvent ( resourceName, "onDataLang", resourceName) end addEventHandler("onResourceStart",getResourceRootElement(),createNewResource) function renameResource(newResource,textLang) -- Renames a resource. renameResource(newResource,textLang) end addEventHandler("onResourceStart", resourceRoot, renameResource) addEvent( "onRenameResource", true ) addEventHandler( "onRenameResource", resourceRoot, renameResource) Link to comment
ميدوح Posted October 28, 2017 Author Share Posted October 28, 2017 (edited) 1 hour ago, said: مجلد ماذا؟ كيف اسوي مجلد ؟ ^ انشاء مجلد جديد Edited October 28, 2017 by medo7 Link to comment
</Mr.Tn6eL> Posted October 29, 2017 Share Posted October 29, 2017 (edited) مافي طريقة محدد لكن اتوقع طريقة تنجح function Folder(folder_name) local file = File.new(folder_name.."/file") if file then file:close() File.delete(folder_name.."/file") end end Edited October 29, 2017 by </Mr.Tn6eL> 1 Link to comment
ميدوح Posted October 30, 2017 Author Share Posted October 30, 2017 On 10/29/2017 at 20:11, </Mr.Tn6eL> said: مافي طريقة محدد لكن اتوقع طريقة تنجح function Folder(folder_name) local file = File.new(folder_name.."/file") if file then file:close() File.delete(folder_name.."/file") end end ممتاز ..، ظبطتت معي متشكر أخي Link to comment
Recommended Posts
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 accountSign in
Already have an account? Sign in here.
Sign In Now