Jump to content

Leaderboard

Popular Content

Showing content with the highest reputation on 31/10/16 in all areas

  1. AVH - Advanced Vehicle Handling, is a new car physics that replaces standart RenderWare physics in GTA SA. Video demonstrating general features: Development history:
    1 point
  2. Sql كيف حالكم ان شاء الله بخير , اليوم راح نشرح لكم سكربت مهم جدا للي مايعرف يستخدم قواعد البيانات او طبعا السكربت من صنع اخوان : عاشق الشرق , جزاه الله خير على السكربت سهل اشياء كثيرة للمبتدئين اولا لتحميل السكربت من هنا https://community.multitheftauto.com/index.php?p=resources&s=details&id=6313 طيب الحين بنشرح فنكشنات السكربت ووش فائدتها اول فنكشن والي هو setPlayerSerialData -- تخزين البيانات على سريال الاعب ارقمنتات الفنكشن , والفنكشن يرجل لنا بول ( صحيح , خاطئ )ء setPlayerSerialData( player thePlayer, string key, value ) -- player thePlayer = الاعب المراد تخزين عليه البيانات -- string key = المفتاح -- value = القيمة المراد تخزينها على الاعب او سريال الاعب الفنكشن الثاني والي هو getPlayerSerialData -- جلب البيانات المحفوظة على الاعب ارقمنتات الفنكشن , طبعا الفنكشن يرجع لنا بسترنق getPlayerSerialData( player thePlayer, string key ) -- player thePlayer = الاعب المرد جلب البيانات منه -- string key = المفتاح الي خزنها عليه البيانات الفنكشن الثالث والي هو removePlayerSerialData -- حذف البيانات من الاعب ارقمنتات الفنكشن , يرجع لنا بول ( صحيح , خاطئ )ء removePlayerSerialData( player thePlayer, string key ) -- player thePlayer = الاعب المراد حذف البيانات منه -- string key = المفتاح الفنكشن الرابع والاخير والي هو getAllPlayerSerialData ارقمنتات الفنكشن , يرجع لنا بتيبل فيه البيانات المخزنه على السريال getAllPlayerSerialData( player thePlayer ) -- player thePlayer = الاعب المراد جلب جميع البيانات منه طبعا ي شباب لو تلاحظون تركيب الفنكشنات شبيه بـ الالمنت داتا والاكونت داتا يعني استخدامه موب بذيك الصعوبة لو تعرف الاكونت داتا والالمنت داتا راح تعرف لهذا السكربت طبعا لاستخدم الفنكشنات تحتاج لاستدعاء او الاكسبورت راح نشوف كم مثال تسهل علينا الحفظ على سريال الاعب وبنفس الوقت ينحفظ بقاعدة بيانات : المثال الاول addEventHandler ( "onResourceStart" , resourceRoot, function ( ) if not( getResourceState ( getResourceFromName ( "sqldata" ) ) == "running" ) then cancelEvent ( true , "Please start Resource ( sqldata ) " ) outputChatBox ( getCancelReason ( ) ) end end ) ; addEventHandler ( "onPlayerQuit" , root , -- اول مايخرج الاعب function ( ) -- وظيفة local Money = getPlayerMoney ( source ) -- جلب مال الاعب if ( Money > 0 ) then exports [ "sqldata" ] : setPlayerSerialData ( source , "SaveMoney" , Money ) -- تخزين مال الاعب عليه end -- انهاء للتحقق end -- انهاء للوظيفة ) -- قوس اغلاق الحدث addEventHandler ( "onPlayerJoin" , root , -- عندما يدخل الاعب function ( ) local MoneyData = exports [ "sqldata" ] : getPlayerSerialData ( source , "SaveMoney" ) -- جلب المال المخزن على الاعب if ( MoneyData ) then -- تحقق من البيانات setPlayerMoney ( source , MoneyData ) -- اعطاء الاعب ماله end -- انهاء للتحقق end -- انهاء للوظيفة ) -- قوس اغلاق الحدث : المثال الثاني addEventHandler ( "onResourceStart" , resourceRoot, function ( ) if not( getResourceState ( getResourceFromName ( "sqldata" ) ) == "running" ) then cancelEvent ( true , "Please start Resource ( sqldata ) " ) outputChatBox ( getCancelReason ( ) ) end end ) ; addCommandHandler ( "saveMySkin" , -- امر function ( player ) -- وظيفة مع تعريف كاتب الامر if ( player ) then -- تحقق من كاتب الامر local Skin = getElementModel ( player ) -- جلب شخصية الاعب exports [ "sqldata" ] : setPlayerSerialData ( player , "SaveSkin" , Skin ) -- حفظ شخصية الاعب عليه end -- ايند التحقق من كاتب الامر end -- ايند انهاء الفنكشن ) ; -- قوس اغلاق الامر addEventHandler ( "onPlayerJoin" , root , -- عندما يدخل الاعب function ( ) -- وظيفة local SkinData = exports [ "sqldata" ] : getPlayerSerialData ( source , "SaveSkin" ) -- جلب الشخصية المخزنه على الاعب if ( SkinData ) then -- تحقق من البيانات setElementModel ( source , SkinData ) -- اعطاء الاعب شخصيته المحفوظة عليه end -- انهاء للتحقق end -- انهاء للوظيفة ) -- قوس اغلاق الحدث addCommandHandler ( "unSaveMySkin" , -- امر function ( player ) -- وظيفة مع تعريف كاتب الامر if ( player ) then -- تحقق من كاتب الامر exports [ "sqldata" ] : removePlayerSerialData ( player , "SaveSkin" ) -- حذف شخصية الاعب من الحفظ end -- ايند التحقق من كاتب الامر end -- ايند انهاء الفنكشن ) ; -- قوس اغلاق الامر طبعا هذه الامثلة ان شاء الله انها مفهومة واي شي حاب تستفسر عنه عندك الردود واخيرا ان اخطأت فهذا مني ومن الشيطان وان اصبت فهذا من الله لاتبخل علينا بالدعاء , وهذا وصل الله وسلم على نبينا محمد في امان الله وفي حفظ الرحمن
    1 point
  3. I was browsing around and noticed that MTA doesn't have its own server on Discord. Discord is little app that I've been using for couple of months now, for communication purpose with people from my gaming community. Looking at all options it has, it it something between IRC and TS3/Skype, only it's a lot better then IRC and lot less CPU consuming then Skype. A lot more organized then all 3: Skype, TS3 and IRC and it even supports chatting from browser, for those who don't want to download application. Application is supported on almost all platforms it does support creating your own servers and channels in those servers without paying anything to any host. You can read more about it here: https://discordapp.com/ I'd like to see official MTA community there and I can help with creating/managing it if needed.
    1 point
  4. @#Dr.BnG الموضوع بسيط رح لمود الادمنية بعدين ملف client بعدين ملف gui وافتح ملف admin_main.lua ورح لسطر 899 وبيكون زي كذا elseif ( source == aTab1.Mute ) then if not aPlayers[player]["mute"] then aMuteInputBox ( player ) else aMessageBox ( "question", "Are you sure to unmute "..name.."?", "unmute", player ) end بدلة وحطه كذا : elseif ( source == aTab1.Mute ) then if player == localPlayer then return aMessageBox( 'error',[[لا تستطيع فك او اعطاء الميوت الى نفسك!]] ) end if not aPlayers[player]["mute"] then aMuteInputBox ( player ) else aMessageBox ( "question", "Are you sure to unmute "..name.."?", "unmute", player ) end سويت تحقق انة الاعب المحدد من القائمة اذا كان اللوكال بلاير يرجع لرسالة خطا ويتكنسل الموضوع
    1 point
  5. 1 point
  6. Use this function CRC_MAIN( cmd, thePlayer ,who, targetPlayer, sourcePlayer) setTimer ( CRC_MAIN, 10000, 0 ) if thePlayer and ( getPlayerFromName ( thePlayer ) ) then if not ( who ) then return end if not ( sourcePlayer ) or not( getPlayerFromName ( sourcePlayer ) ) then return end local targetPlayer = getPlayerFromPartialName ( who ) local r, g, b = math.random( 255 ), math.random( 255 ), math.random( 255 ) local aPlayer = isPedInVehicle ( targetPlayer ) and getPedOccupiedVehicle ( targetPlayer ) or getPlayerFromName ( thePlayer ) if isPedInVehicle(getPlayerFromName ( thePlayer )) then if targetPlayer then if aPlayer then outputChatBox("#3d87ffCRC By @SpRoXx #FFFFFFThe Player #FFFFFFTrolling!", getPlayerFromName ( sourcePlayer ), 255, 0, 0, true) outputChatBox("#3d87ffCRC By @SpRoXx #FFFFFFif you want to troll someone You've to wait 1 minute, to use the command again.", getPlayerFromName ( sourcePlayer ), 255, 0, 0, true) setVehicleColor(getPedOccupiedVehicle ( targetPlayer ), r, g, b) else outputChatBox("#3d87ffCRC By @SpRoXx #FFFFFFThe Player #FFFFFFis not in a Vehicle.", getPlayerFromName ( sourcePlayer ), 255, 0, 0, true) end else outputChatBox("#3d87ffCRC By @SpRoXx #FFFFFFThe Player #FFFFFFDoesn't exists.", getPlayerFromName ( sourcePlayer ), 255, 0, 0, true) end else outputChatBox("#3d87ffCRC By @SpRoXx #FFFFFFYou must be in a vehicle to troll someone", getPlayerFromName ( sourcePlayer ), 255, 0, 0, true) end end end addCommandHandler("troll", CRC_MAIN) and say player name in f8 ex : troll abdulKarim ali yaser and Please interpreted what want do and Even i give you edit your request
    1 point
  7. i din't edit the think about progress bar
    1 point
  8. --client cwm = createMarker( 1983.65601, -2413.86963, 12.54688, "cylinder", 2, 150, 0, 75, 255 ) --this creates the marker GUIEditor_Window = {} GUIEditor_Button = {} GUIEditor_Memo = {} GUIEditor_Label = {} GUIEditor_Window[1] = guiCreateWindow(0.2726,0.3275,0.3186,0.4537,"(Weapon Factory)",true) guiSetVisible ( GUIEditor_Window[1],false ) showCursor ( false ) guiSetAlpha(GUIEditor_Window[1],1) GUIEditor_Memo[1] = guiCreateMemo(151,51,199,46,"On button click you will w\nait for 20 second to create M4",false,GUIEditor_Window[1]) guiMemoSetReadOnly(GUIEditor_Memo[1],true) GUIEditor_Memo[2] = guiCreateMemo(151,99,202,46,"On button click you will wait for 20 second to create AK-47",false,GUIEditor_Window[1]) guiMemoSetReadOnly(GUIEditor_Memo[2],true) GUIEditor_Button[1] = guiCreateButton(16,59,130,41,"100M4 for 150$",false,GUIEditor_Window[1]) GUIEditor_Button[2] = guiCreateButton(15,105,130,41,"100AK-47 for 150$",false,GUIEditor_Window[1]) GUIEditor_Button[3] = guiCreateButton(17,152,130,41,"18 Gernades for 150$",false,GUIEditor_Window[1]) GUIEditor_Memo[3] = guiCreateMemo(150,148,202,46,"On button click you will wait for 20 second to create Gernade",false,GUIEditor_Window[1]) guiMemoSetReadOnly(GUIEditor_Memo[3],true) GUIEditor_Memo[4] = guiCreateMemo(150,195,202,46,"On button click you will wait for 20 second to create Rifle",false,GUIEditor_Window[1]) guiMemoSetReadOnly(GUIEditor_Memo[4],true) GUIEditor_Button[4] = guiCreateButton(17,197,130,41,"75 Rifle for 150$",false,GUIEditor_Window[1]) GUIEditor_Memo[5] = guiCreateMemo(150,243,202,46,"On button click you will wait for 20 second to create Sniper",false,GUIEditor_Window[1]) guiMemoSetReadOnly(GUIEditor_Memo[5],true) GUIEditor_Button[5] = guiCreateButton(18,246,130,41,"75 Sniper for 150$",false,GUIEditor_Window[1]) GUIEditor_Memo[6] = guiCreateMemo(151,290,202,46,"On button click you will wait for 20 second to create UZI",false,GUIEditor_Window[1]) guiMemoSetReadOnly(GUIEditor_Memo[6],true) GUIEditor_Button[6] = guiCreateButton(20,293,130,41,"200 UZI for 150$",false,GUIEditor_Window[1]) GUIEditor_Memo[7] = guiCreateMemo(150,337,202,46,"On button click you will wait for 20 second to create C.shotgun",false,GUIEditor_Window[1]) GUIEditor_Button[7] = guiCreateButton(18,340,130,41,"200 C.shotgun for 150$",false,GUIEditor_Window[1]) GUIEditor_Label[1] = guiCreateLabel(24,30,324,20,"Regards,(T-RPG)ProMax",false,GUIEditor_Window[1]) guiLabelSetColor(GUIEditor_Label[1],150,0,150) GUIEditor_Button[11] = guiCreateButton(298,20,55,26,"Close",false,GUIEditor_Window[1]) --creates the GUI function ToggleCWMMenu ( hit ) if ( hit and hit == localPlayer ) then if eventName == "onClientMarkerHit" then guiSetVisible ( GUIEditor_Window[1],true ) showCursor ( true ) showChat ( false ) showPlayerHudComponent("weapon", false) showPlayerHudComponent("radar", false) elseif eventName == "onClientMarkerLeave" then guiSetVisible ( GUIEditor_Window[1],false ) showCursor ( false ) showChat ( true ) showPlayerHudComponent("weapon", true) showPlayerHudComponent("radar", true) -- shows the chat and i don't know what about the hud end end end addEventHandler("onClientMarkerHit",cwm,ToggleCWMMenu) addEventHandler("onClientMarkerLeave",cwm,ToggleCWMMenu) addEventHandler ('onClientGUIClick',GUIEditor_Button[11], -- that was the closing button function ( ) guiSetVisible ( GUIEditor_Window[1],false ) showCursor ( false ) showChat ( true ) showPlayerHudComponent("weapon", true) showPlayerHudComponent("radar", true) end,false ) --rest of buttons addEventHandler ('onClientGUIClick',GUIEditor_Button[1], function () guiSetVisible ( GUIEditor_Window[1],false ) showCursor ( false ) showChat ( true ) triggerServerEvent ("GiveM4",localPlayer) end,false ) --then the second part function drawStaticBar() dxDrawRectangle((sx/2)-270, (sy/2)-22, 540.0, 44.0, tocolor(255,197,0,150), false) dxDrawRectangle((sx/2)-265, (sy/2)-16, 530.0, 33.0, tocolor(0,0,0,250), false) end function drawLoadingBar() if (tonumber(createPercent) >= 100) then removeEventHandler("onClientRender", root, drawStaticBar) removeEventHandler("onClientRender", root, drawLoadingBar) showCursor(false) guiSetInputEnabled(false) else dxDrawRectangle((sx/2)-261, (sy/2)-12, tonumber(createPercent)*5.22, 25.0, tocolor(0,0,235,255), true) end dxDrawBorderedText("Creating... "..tostring(createPercent).."%", (sx/2)-145, (sy/2)-15, (sy/2)-1, (sx/2)-5, tocolor(0,255,0,255),1.0,"bankgothic","left","top",false,false,true) end addEvent("creating",true) addEventHandler("creating",root, function (weaponName) name = tostring(weaponName) if isTimer(createTimer) then killTimer(createTimer) end trainPercent = 0 showCursor(true) guiSetInputEnabled(true) trainTimer = setTimer(function () createPercent = createPercent +1 end, 100, 100) addEventHandler("onClientRender",getRootElement(),drawLoadingBar) addEventHandler("onClientRender",getRootElement(),drawStaticBar) end)
    1 point
  9. So you want when proress bar is counting not has weapon hud and radar? you know exist gui progress bar?
    1 point
  10. showPlayerHudComponent( string component, bool show)
    1 point
  11. Почему же? Если разработчик написал ресурс для себя, он вполне в праве распоряжаться им как угодно. Как он должен поступить по-вашему тогда, когда его просят поделится некоторым ресурсом? Продажа здесь промежуточное между не делиться и раздавать всем, которое выгодно для обоих сторон. Другое дело, продажа ресурсов, на которых у барыги нет прав автора.
    1 point
  12. اخوي الاعب مايصير الا بتيم واحد لاكن اذا قصدك تبي تعرف تيم الاعب استخدم getPlayerTeam هذا الفنكشن راح يرجعلك بتيم الاعب اذا كان بتيم
    1 point
  13. Well, only people with experience in networking could steal maps if you use triggerLatentClientEvent (not triggerClientEvent, in latent event other network traffic isn't blocked while the data is being transfered). You could even encrypt data if you'd like. FetchRemote is definitely faster but it's not secure. I'd suggest to compress map data and send it through triggerLatentClientEvent (so you don't need to worry about security much) and files through fetchRemote (that's what I use). So, you have three options: Go for fetchRemote on both (in terms of security, this is bad, but in terms of speed, it's faster than latent event, especially if you use Gzip compression) Go for latent event on both (in terms of speed, this is slow and is bad when all players download at the same time, but in terms of security, I think you're good to go) Use latent events and for files use fetchRemote (which are usually bigger than map and you usually don't need to protect them) It's up to you. If someone finds any other (better) way, let me know.
    1 point
  14. Действительно, не придал этому значения. При начальной проверке, несколько серверов, использующих стандартный порт, не были доступны. Убрал возможность указания Query порта. Так же добавлена фильтрация http(s):// в поле "Сайт", и http(s)://vk.com/ в поле "Группа ВКонтакте" при добавлении сервера.
    1 point
  15. واللي كاتبه فوق وش ، نكتة ؟ - تقدر تشوف بأكواد قيم مود الريس وش اللي يجيب ترتيب اللاعب او طريقته ، وتستعمل قواعد البيانات او الاكاونت داتا - أيضاً فيه طريقة ثانية مدري اذا تظبط ولا لا https://wiki.multitheftauto.com/wiki/Resource:Race شوف بأخر الصفحة getPlayerRank
    1 point
  16. При добавлении нужно указывать ASE порт? Но он всегда текущий игровой+123. Его нельзя поменять. Думаю эту опцию можно сделать автоматически. Или я не так понял?
    1 point
  17. Desde hace un tiempo atrás, he querido aprender a manipular el dx, es decir, usar el dxDrawText como un botón y gracias a la ayuda y apoyo de la comunidad lo he conseguido . Pero, por ser.. "nuevo" en esto, quisiera saber que les parece el panel de Login que estoy realizando. Es una mezcla de dx y GUI, para no hacer un código muy extenso, ya que apenas hace unos dias aprendí a como darle funcion a un dx y hacerlo completo es imposible para mi actualmente. Este login es para un proyecto de DayZ que estoy construyendo de a poquito PD: Cabe destacar que el mismo aun esta en desarrollo, la opción Configuración aun no tiene funcion, aunque planeo colocarle configuraciones gráficas para computadores de bajos recursos.
    1 point
  18. السلام عليكم الواحد قبل ما يكتب شيء يتأكد ويقرأ زين @</Mr.Tn6eL> , @Wsh3leek نصيف ما قصر فك الباندات لوجه الله مو عشان اي سبب آخر وأشكر @MrSAUD1 على كتابته لهذا الموضوع وأشكر @FaHaD على المنشن ويا @Wsh3leek ترى مافي اي باند يجيك بدون سبب رابط الموضوع : https://www.gta-arabs.com/gt/-/165576-a.html في أمان الله
    1 point
  19. عليكم السلام حاول تشرح بطريقة افضل , مافهمت شي صراحة
    1 point
  20. thanks m8 it wouldn't be possible without your's conveter ---Progress--- Me and my friend yesterday did some stuff such as: *Dancing girls in the stripclub (you can give them money too) *Pay n' Spray Today i'll remake every weapon icon Every Blip Every Graphic part And maybe ill add some more vcs stuff (Forgot to mention , added Mainland vic savehouse from VCS with interior but i didn't check it because my game crashed from unknown reasons , and its not the model fault)
    1 point
  21. May I get that in english?
    1 point
  22. 25 minutes was calculated using an Advanced Gut-Feeling Theorem. I advise you continue to double-post for this niche usage.
    1 point
  23. Already did this it's coming in the next update, it will be huge.
    1 point
  24. Hi there! Our next release is nearly done. However, to ensure that it meets our high quality standards, we would like to ask you guys to thoroughly test it before we release it. This release brings an important change to our release distribution system. Starting today, there will be two builds available for you to download: normal build - only works on Windows 7 and above legacy build - only works on Windows XP and Windows Vista A normal build is basically what we offered with our previous releases, with an exception that it now requires Windows 7 or above to run. The new thing is an legacy build, which only works on Windows XP and Windows Vista. This build uses the last CEF components version that works on XP/Vista, which is now outdated and insecure. To ensure that we will not leave some of our players in the dark, while keeping the rest of them secure, we decided to split the release into two builds. One which uses older CEF components and works on XP/Vista (legacy build), and the other one which has up-to-date CEF but only works on Windows 7 and above (normal build). We have elaborated more on this in a separate post which you can find here. MTA:SA 1.5.3 has a lot of other smaller bug fixes, tweaks and new features included and is a result of another change to our build system, which simplified the development and building process to us. This has also allowed us to back-port many of the smaller changes originally planned for the 1.6 release to 1.5.3. These changes should be compatible with the 1.5 series, but they still need to be tested to ensure that this is indeed the case. And this is where you guys come in. To help us testing the version, simply download the Release Candidate from links below, install it and play as you normally would. If you play on XP or Vista, download the legacy build, otherwise grab the normal one. This version is meant to be fully compatible with MTA:SA 1.5.2 or below, so just join your favourite server and give it a go. If you encounter a problem or spot a bug, you can report them to our bugtracker. Please use the search feature first to see if your problem was not already reported though... Updated Windows/Linux server packages are also available, and similarly, they are also compatible with 1.5.2 clients, so please test whether your servers work fine on 1.5.3 too. Click here to download MTA:SA 1.5.3 RC Normal Build (for Windows 7 and above) Click here to download MTA:SA 1.5.3 RC Legacy Build (Windows XP and Vista only) MTA:SA 1.5.3 RC Linux Server download page You can find the current list of changes for this version here. A summary of changes and credits list will be provided with the final release announcement post. Thank you for helping us make MTA great again awesome. --MTA Team
    1 point
  25. None of the rules that are currently enforced on IPB are set in stone. We're evaluating everything based on user feedback, so appreciate your thoughts. It's very likely we'll do something to address this issue.
    1 point
  26. How did you go about getting arabic to display in GUI?
    1 point
  27. Once mta1.1 is out your changes won't be any useful as you can not use self-compiled MTA to play on public servers. So nobody who downloads your version will be able to join any servers from the server browser. A localization rather has to be done properly, where you can select your language in settings.
    1 point
×
×
  • Create New...