Jump to content

Leaderboard

Popular Content

Showing content with the highest reputation on 27/05/17 in all areas

  1. local scrX, scrY = guiGetScreenSize() local hudS = {} hudS.bgX = scrX - 300 -- X position of background hudS.bgY = 20 -- Y position of background hudS.bgW = 128 -- background width (img size in pixels) hudS.bgH = 128 -- background height (img size in pixels) hudS.fX = scrX - 275 -- X position of fill hudS.fY = 51 -- Y position of fill hudS.fW = 78 -- fill width (img size in pixels) hudS.fH = 66 -- fill height (img size in pixels) addEventHandler("onClientResourceStart", resourceRoot, function() addEventHandler("onClientRender", root, function() dxDrawImage(hudS.bgX, hudS.bgY, hudS.bgW, hudS.bgH, "heart_bg.png") local currHeight = hudS.fH / 100 * getElementHealth(localPlayer) dxDrawImageSection(hudS.fX, hudS.fY, hudS.fW, currHeight, 0, 0, hudS.fW, currHeight, "heart_fill.png") end) end) https://i.imgur.com/z2qzSA8.png http://imgur.com/6gOIw5i Change the images and width/height, X/Y positions.
    2 points
  2. Es triste ver como una simple pregunta/debate puede llegar a convertirse en algo tan feo como una pelea. Quiero dejar claro el siguiente punto El motivo del post era ver si es factible crear un servidor en MTA, El motivo nunca fue ver quien tiene mejor rol, que servidor es el mejor o quien es superior. No entiendo cual es la manía de criticar los unos a los otros, esperaba que gente que tuviera criterio propio opinara en el tema y no que se convirtiera en un debate de niños sobre quien sabe rolear mejor, ¿Acaso ya no se puede hacer nada acá sin que termine en pelea? Realmente no entiendo que pasa con la Comunidad hispana de MTA. En vez de ayudar unos a otros o de incitar a la creación de más servidores para traer mas gente al juego lo único que hacen es debatir sobre quien tiene el mejor servidor, sobre quien tiene el mejor rol o sobre quien es superior a quien y eso, bajo ningún punto de vista está bien. Viendo los temas de el subforo Archivado en Español me doy cuenta que la mayoría de temas terminan en peleas o cerrados por insultos, ¿Eso es la Comunidad de MTA? ¿Personas que no tienen tolerancia a nada ni a nadie? Es cierto que todas las personas tenemos nuestras diferencias, pero esto no es motivo para que arruinen la poca comunidad que queda (Si es que así puede llamarse) Realmente me voy decepcionado, Pensé que pedir ayuda aquí en el foro iba a ser una buena idea y al contrario, de lo único que me doy cuenta es que MTA si está muriendo, y es gracias a sus propios usuarios, a esos usuarios que solo se dedican a menospreciar, a esos usuarios que se creen dueños del juego, a esos usuarios que en vez de de apoyar a la creación de nuevos servidores hacen lo posible para que estos no se lleven a cabo ¿A que le temen?. Si ofendí a alguien con algo que dije/publique lo invito a mandarme un Mensaje, para arreglar la situación. Mi Objetivo nunca fue ofender ni iniciar una pelea. Muchas gracias a las personas que comentaron acerca del tema principal, un gran abrazo
    2 points
  3. aBlip , aCounter = { } , { } function createFlashingBlip ( Player , iCon , xPos , yPos , Number ) if ( getElementType ( Player ) == 'player' and type ( iCon ) == 'number' and type ( xPos ) == 'number' and type ( yPos ) == 'number' and type ( Number ) == 'number' ) then aBlip [ Player ] , aCounter [ Player ] = nil , 0 setTimer ( function ( Player ) setTimer ( function ( Player ) if ( isElement ( aBlip [ Player ] ) ) then destroyElement ( aBlip [ Player ] ) aCounter [ Player ] = aCounter [ Player ] + 1 if ( aCounter [ Player ] == 20 ) then aBlip [ Player ] = createBlip ( xPos , yPos , 0 , iCon ) setElementData ( aBlip [ Player ] , 'Owner' , Player ) setElementData ( aBlip [ Player ] , 'Number' , Number ) end end end , 50 , 1 , Player ) aBlip [ Player ] = createBlip ( xPos , yPos , 0 , iCon ) end , 200 , 20 , Player ) end ------------- ----------- ---- function getFlashingBlip ( Player , iCon , Number ) if ( getElementType ( Player ) == 'player' and type ( iCon ) == 'number' and type ( Number ) == 'number' ) then for _ , v in ipairs ( getElementsByType ( 'blip' ) ) do local Owner , aNumber = getElementData ( v , 'Owner' ) , getElementData ( v , 'Number' ) if ( getBlipIcon ( v ) == iCon and Owner == Player and aNumber == Number ) then return v end end end return false end سلام عليكم اليوم اطرح لكم وظيفتين بمناسبه حلول شهر رمضان الكريم , بالبدايه كل عام وانتم بخير , واسف لو في اخطاء ( جوال )- المهم الفكره أنها تسوي لك بليب ( علامه ) تختفي و تظهر بسرعه بغرض لفت نظر الاعب لهأ Server Side ولكل علامه تسوي لها رقم معين عشان تستدعي العلامه عبرهأ مثل مأ تلاحظون في xPos , yPos مأفي z لآنه مأله أهميه للعلآمه , المهم createFlashingBlip ( Player , iCon , xPos , yPos , Number ) الاعب و اي دي العلامه و الاحدثيات و الرقم الخاص عشان تستدعي العلامه و عشان تستدعيها مثلا destroyElement ( getFlashingBlip ( Player , iCon , Number ) ) و تعبي الباينات أترككم للتجربه يا ليت اي خطء او بق خبروني
    2 points
  4. أدري , انتبهت له , عالمعموم مشكور
    1 point
  5. قبل كم يوم ساعدت واحد بنفس طلبك ابحث وتلاقية اسم الي طلب w7sH دور بالمواضيع حقته
    1 point
  6. ههههه العفو توقعت +_+ بالتوفيق يعسل
    1 point
  7. حياك الله موفق ي قلبي
    1 point
  8. Mirando un poco los servidores con más jugadores ahora mismo, parecería que los roleplays, pero eso no significa que sea lo que vaya a crecer más rápido como servidor, si no que pueda ser porque son los servidores que empezaron antes, y su comunidad ya esta acostumbrada a entrar específicamente ahí. También veo algún que otro DayZ o DM, a la gente en los Freeroams les gusta pelear con armas de vez en cuando, asi que entiendo por que esos gamemodes tendrían jugadores, pero a final de cuentas muchas personas solo se quedan si las cosas son fáciles de conseguir. Luego, hacer un Freeroam es como tirar un dado, porque nadie va a entrar si esta vacío, es aburrido estar en un mundo libre vacío, aunque si le pones (y sin animo de ofender a ningún dueño de ningún freeroam con lo siguiente) "Anime argentina mexico nicaragua skins autos al piso drift ( ͡° ͜ʖ ͡°)" puede que entre mucha más gente. En ninguno tienes más garantía de éxito, pero diría que te inclines más por el que creas que se puede hacer perfectamente con las limitaciones que tenemos. Por ejemplo, al añadir zombies en dayz, tienes la limitación de que los zombies van a ser simples y no tendran mecánicas muy complejas.
    1 point
  9. 1 point
  10. 1 point
  11. 1 point
  12. function Je(player) if getElementType(player) == "player" and getElementData(player, "Group") == "[Admin]" then if doesPedHaveJetPack (player) then removePedJetPack (player) else givePedJetPack(player) end end end bindKey(player,"J","down",Je)
    1 point
  13. عدله هههه وعندك وعنده اند زيادة ._.
    1 point
  14. @#Soking مفروض تسوي حدث اول مايموت الاعب واول مايخرج وتحذف العلامة منه بالتوفيق
    1 point
  15. لا بس ناقص إيند لسطر خمسة آسف مب اربعة ض بالتوفيق
    1 point
  16. والله الحياة اشغلتنا شوي عن اللعبة وعالمها والحين بإذن الله بنرجع من جديد
    1 point
  17. ممكن يسوي حدث كل ما يموت واحد من التيم يتحقق من عدذ اللاعبين الباقيين واذا وصل 0 يطلع رسالة انه الفريق خسر والفائز الفريق الآخر
    1 point
  18. يحط هيك بالميتا ويستعمل الوظائف اللي عطيته اياها انا وحدها ماتكفي ヽ( ´¬`)ノ
    1 point
  19. ولكم باك بالعسل ورمضان مبارك علينا وعليكم باذن الله يقلبي
    1 point
  20. وينك مختفي كل عام وانتم بخير جميعا
    1 point
  21. :))) Cat de cretin ma crezi?
    1 point
  22. createBlip ( -1657.838, 1210.947, 6.5, 55, 2, 0, 0, 0, 255, 0, 99999.0, getRootElement( ) ) local vehDB = dbConnect( 'sqlite', 'Vehicles System - Database.db' ) dbExec( vehDB, ' CREATE TABLE IF NOT EXISTS `VehiclesSystem_Players` (pSerial, vehID, vehName, vehPrice, Subscription) ' ) --dbExec( vehDB, ' DROP TABLE `VehiclesSystem_Players` ' ) vehPers = { }; vehview = { }; function refreshMyList( ) local check = dbQuery( vehDB, ' SELECT * FROM `VehiclesSystem_Players` WHERE pSerial=?',tostring(getPlayerSerial(source)) ); local results = dbPoll( check, -1 ) if ( type( results ) == 'table' and #results == 0 or not results ) then triggerClientEvent( root, 'VehiclesSystem;emptyMyList', root ) return end triggerClientEvent( root, 'VehiclesSystem;putMyVehicles', root, results ) end addEvent( 'refreshMyListS', true ) addEventHandler( 'refreshMyListS', root, refreshMyList ) function viewVehiclex( ID, x, y, z, state ) if ( state == 'close' ) then if ( isElement( vehview[source] ) ) then destroyElement( vehview[source] ) end elseif ( state == 'view' ) then if ( isElement( vehview[source] ) ) then if ( getElementModel( vehview[source] ) ) == ID then return end destroyElement( vehview[source] ) end vehview[source] = createVehicle( ID, x, y, z + 0.2, 0, 0, 10 ) setElementDimension( vehview[source], getElementData( root, 'vehiclesSystem;dimension' ) or 1 ) setElementDimension( source, getElementData( root, 'vehiclesSystem;dimension' ) or 1 ) setElementData( root, 'vehiclesSystem;dimension', getElementData( root, 'vehiclesSystem;dimension' ) + 1 or 1 ) end end addEvent( 'VehiclesSystem;createViewVehicle', true ) addEventHandler( 'VehiclesSystem;createViewVehicle', root, viewVehiclex ) addEvent( 'VehiclesSystem;destroyPersonalVehicle', true ) addEventHandler( 'VehiclesSystem;destroyPersonalVehicle', root, function( ) if ( isElement( vehPers[source] ) ) then destroyElement( vehPers[source] ) end end ) addEvent( 'VehiclesSystem;createRentVehicle', true ) addEventHandler( 'VehiclesSystem;createRentVehicle', root, function( ID, vehName ) if ( isElement( vehPers[source] ) ) then destroyElement( vehPers[source] ) end vehPers[source] = createVehicle( ID, -1633.87439, 1208.09277, 7.03906 + 1, -0, 0, 224.5189666748 ) fadeCamera( source, false ) setTimer( fadeCamera, 1500, 1, source, true ) takePlayerMoney( source, 10000 ) setElementDimension( vehPers[source], 0 ) setElementDimension( source, 0 ) setTimer( warpPedIntoVehicle, 1500, 1, source, vehPers[source] ) setTimer( destroyElement, 300000, 1, vehPers[source] ) setTimer( function( ) outputChatBox( '#FFFFFFWarning, Your subscription has been ended #FF0000!', source, 255, 255, 255, true ) end, 300000, 1 ) triggerClientEvent( source, 'VehiclesSystem;gridListAddRent', source, ID, vehName ) end ) addEvent( 'VehiclesSystem;lock/unlockPersonalVehicle', true ) addEventHandler( 'VehiclesSystem;lock/unlockPersonalVehicle', root, function( ) if ( not isElement( vehPers[source] ) ) then outputChatBox( '#FFFFFFError, You don\'t have vehicle #FF0000!', source, 255, 255, 255, true ) return end if ( isVehicleLocked( vehPers[source] ) == true ) then setVehicleLocked( vehPers[source], false ) outputChatBox( '#FFFFFFSuccess, Your vehicle has been unlocked #2BFF00!', source, 255, 255, 255, true ) else setVehicleLocked( vehPers[source], true ) outputChatBox( '#FFFFFFSuccess, Your vehicle has been locked #2BFF00!', source, 255, 255, 255, true ) end end ) addEvent( 'VehiclesSystem;off/onPersonalVehicle', true ) addEventHandler( 'VehiclesSystem;off/onPersonalVehicle', root, function( ) if ( not isElement( vehPers[source] ) ) then outputChatBox( '#FFFFFFError, You don\'t have vehicle #FF0000!', source, 255, 255, 255, true ) return end if ( getVehicleEngineState( vehPers[source] ) == true ) then setVehicleEngineState( vehPers[source], false ) outputChatBox( '#FFFFFFSuccess, Your vehicle has been turned off #2BFF00!', source, 255, 255, 255, true ) else setVehicleEngineState( vehPers[source], true ) outputChatBox( '#FFFFFFSuccess, Your vehicle has been turned on #2BFF00!', source, 255, 255, 255, true ) end end ) addEvent( 'VehiclesSystem;off/onLightsPersonalVehicle', true ) addEventHandler( 'VehiclesSystem;off/onLightsPersonalVehicle', root, function( ) if ( not isElement( vehPers[source] ) ) then outputChatBox( '#FFFFFFError, You don\'t have vehicle #FF0000!', source, 255, 255, 255, true ) return end if ( getVehicleLightState( vehPers[source], 0 ) == 0 and getVehicleLightState( vehPers[source], 1 ) == 0 ) then setVehicleLightState( vehPers[source], 0, 1 ) setVehicleLightState( vehPers[source], 1, 1 ) setVehicleLightState( vehPers[source], 2, 1 ) setVehicleLightState( vehPers[source], 3, 1 ) outputChatBox( '#2BFF00*#FFFF00 Vehicles System #2BFF00 : #FFFFFFSuccess, Your vehicle lights turned off #2BFF00!', source, 255, 255, 255, true ) else setVehicleLightState( vehPers[source], 0, 0 ) setVehicleLightState( vehPers[source], 1, 0 ) setVehicleLightState( vehPers[source], 2, 0 ) setVehicleLightState( vehPers[source], 3, 0 ) outputChatBox( '#2BFF00*#FFFF00 Vehicles System #2BFF00 : #FFFFFFSuccess, Your vehicle lights turned on #2BFF00!', source, 255, 255, 255, true ) end end ) addEvent( 'VehiclesSystem;sellMyPersonalVehicle', true ) addEventHandler( 'VehiclesSystem;sellMyPersonalVehicle', root, function( ID, price ) local check = dbQuery( vehDB, ' SELECT * FROM `VehiclesSystem_Players` WHERE pSerial = ? AND vehID = ? ', getPlayerSerial( source ), ID ) local results = dbPoll( check, -1 ) if ( type( results ) == 'table' and #results == 0 or not results ) then outputChatBox( '#FFFFFFError, This vehicle is not permanently for you, You cannot sell it #FF0000!', source, 255, 255, 255, true ) return end if ( isElement( vehPers[source] ) ) then destroyElement( vehPers[source] ) end dbExec( vehDB, ' DELETE FROM `VehiclesSystem_Players` WHERE pSerial = ? AND vehID = ? ', getPlayerSerial( source ), ID ) refreshMyList( ) givePlayerMoney( source, price ) outputChatBox( '#FFFFFFSuccess, Your vehicle has been sold successfully #2BFF00!', source, 255, 255, 255, true ) end ) addEvent( 'VehiclesSystem;createPersonalVehicle', true ) addEventHandler( 'VehiclesSystem;createPersonalVehicle', root, function( ID ) local x, y, z = getElementPosition( source ) if ( isElement( vehPers[source] ) ) then destroyElement( vehPers[source] ) end vehPers[source] = createVehicle( ID, x + 2, y + 2, z + 1 ) if ( getElementData( source, 'VehiclesSystem;WarpToVehicle' ) == 'Enabled' ) then warpPedIntoVehicle( source, vehPers[source] ) setElementData( vehPers[source], 'myPersVehicle', getPlayerName( source ) ) end end ) addEvent( 'VehiclesSystem;buyCurrentCar', true ) addEventHandler( 'VehiclesSystem;buyCurrentCar', root, function( ID, Name, Price ) local check = dbQuery( vehDB, ' SELECT * FROM `VehiclesSystem_Players` WHERE pSerial = ? AND vehID = ? ', getPlayerSerial( source ), ID ) local results = dbPoll( check, -1 ) if ( type( results ) == 'table' and #results == 0 or not results ) then dbExec( vehDB, ' INSERT INTO `VehiclesSystem_Players` VALUES(?,?,?,?,?) ', getPlayerSerial( source ), tonumber(ID), Name, Price, 'Permanent Subscription' ) vehPers[source] = createVehicle( ID, -1633.87439, 1208.09277, 7.03906 + 1, -0, 0, 224.5189666748 ) warpPedIntoVehicle( source, vehPers[source] ) takePlayerMoney( source, Price ) setTimer(setCameraTarget, 1500, 1, source ) setElementDimension( vehPers[source], 0 ) setElementDimension( source, 0 ) fadeCamera( source, false ) setTimer( fadeCamera, 1500, 1, source, true ) triggerClientEvent( source, 'VehiclesSystem;hideBuyWindow', source ) viewVehiclex( nil, nil, nil, nil, 'close' ) refreshMyList( ) else outputChatBox( '#FFFFFFError, This vehicle is already exists in your list #FF0000!', source, 255, 255, 255, true ) return end end ) ------------------------ --vehicle controls serverside-- function openDoor(door, position) local vehicle = getPedOccupiedVehicle(source) if getPedOccupiedVehicleSeat(source) == 0 then if door == 0 then if position==0 then setVehicleDoorOpenRatio(vehicle, 0, 0, 0.5) end if position==100 then setVehicleDoorOpenRatio(vehicle, 0, 1, 0.5) end if position>0 and position<100 then setVehicleDoorOpenRatio(vehicle, 0, position/100, 0.5) end end if door == 1 then if position==0 then setVehicleDoorOpenRatio(vehicle, 1, 0, 0.5) end if position==100 then setVehicleDoorOpenRatio(vehicle, 1, 1, 0.5) end if position>0 and position<100 then setVehicleDoorOpenRatio(vehicle, 1, position/100, 0.5) end end if door == 2 then if position==0 then setVehicleDoorOpenRatio(vehicle, 2, 0, 0.5) end if position==100 then setVehicleDoorOpenRatio(vehicle, 2, 1, 0.5) end if position>0 and position<100 then setVehicleDoorOpenRatio(vehicle, 2, position/100, 0.5) end end if door == 3 then if position==0 then setVehicleDoorOpenRatio(vehicle, 3, 0, 0.5) end if position==100 then setVehicleDoorOpenRatio(vehicle, 3, 1, 0.5) end if position>0 and position<100 then setVehicleDoorOpenRatio(vehicle, 3, position/100, 0.5) end end if door == 4 then if position==0 then setVehicleDoorOpenRatio(vehicle, 4, 0, 0.5) end if position==100 then setVehicleDoorOpenRatio(vehicle, 4, 1, 0.5) end if position>0 and position<100 then setVehicleDoorOpenRatio(vehicle, 4, position/100, 0.5) end end if door == 5 then if position==0 then setVehicleDoorOpenRatio(vehicle, 5, 0, 0.5) end if position==100 then setVehicleDoorOpenRatio(vehicle, 5, 1, 0.5) end if position>0 and position<100 then setVehicleDoorOpenRatio(vehicle, 5, position/100, 0.5) end end end end addEvent("moveThis:~", true) addEventHandler("moveThis:~", getRootElement(), openDoor) Server side
    1 point
  23. سؤال التحميل الوهمي مو كذا ؟ ذا مثال download="false" مو كذا التحميل الوهمي ؟ <script src="server.lua" type="server" download="false" />
    1 point
  24. ارحب كور وحشني كتيرأ نورت المنتدي .. #
    1 point
  25. هلا هلا , ولكم باك .. نكمل على المود الحصري حقنا ولا نسيته ؟
    1 point
  26. ٢. createTeam setTeamFriendlyFire "onMarkerHit" setPlayerTeam بالنسبة لاذا مافي شرطة هيك شي ... انصحك تحط اللاعبين بجدول عشان تقدر تجيبهم تحقق لما تبدأ المهمة من عدد اللاعبين اللي حرامية وشرطة وطبق مثل ماقلت انت
    1 point
  27. Useful-Function: DxDrawloading اذا تبيه تحميل وهمي في عندك هذا اليوزفل فانكشن ، يختصر عليك كل شي ماعليك الا انك تنسخ السورس كود الموجود وتلصقه في المود حقك ، وتستخدم الفانكشن عند الحدث الي تبغيه .
    1 point
  28. 1 point
  29. Sorry, yes. I've figured it out. Apologies to @Jayceon, your code was perfect, I just copied it incorrectly. Thank you.
    1 point
  30. انا جربت 5 ويندوز Xp 7 8 8.1 10 وافضل واحد فيهم الى الان 10 وما يحتاج جهاز قوي ولا شي بالعكس 8.1 اكثر ويندوز تعبني تعليق وقرف لكن ويندوز 10 بسيط وسهل الاستخدام كما انه يجمع بين نظامين ويندوز 8.1 +وينوز 7 وهو الافضل في نظري يعني يدمج بين الواجهتين لويندوز 7 و 8.1
    1 point
  31. وانت بخير ، اخي ، رمضان كريم خطا رمضان مبارك صح لان الله يعطي من فضله لا رمضان
    1 point
  32. ¿Estabamos hablando sobre si mta está muerto o de quién rolea mejor?
    1 point
  33. You have a virus. https://forum.multitheftauto.com/topic/64715-install-anti-virus/ EDIT: Mod note (knownledgebase since this is the first result) - true problem: VF #2 errors like yours are mostly a result of corrupted DLL files in the MTA installation folder (usually "Program Files > MTA San Andreas 1.5 > MTA") or a corrupted MTA launcher executable. Because files like this are MTA data files, they will cause you to be kicked if damaged, as MTA continuously checks their integrity. It was externally modified by something, which is why it's assumed that your PC is infected with a virus, as viruses are often capable of locating and modifying files, for example random exe or dll files; it can inject its malicious code to them (on the binary file level) or modify the memory of said file while MTA is running, which also results in this kick. MTA checks the integrity of all data files on startup and kicks you if it's not 100% original or is being actively manipulated by a rogue process running in the background. Solution: Run a full antivirus scan, then re-install MTA from https://nightly.multitheftauto.com/?mtasa-1.5-rc-latest so that the data file is restored to original (which is neccesary, even after taking steps) and, if you did, don't again touch or replace DLL files in the MTA installation directory. If you only re-install MTA without taking the other neccesary steps, it may work once or not at all, as the rogue process or virus that had previously damaged MTA data file(s) may do so instantly or whenever it decides to. For this reason it's important to make sure that thing (probably a virus..) is gone from your PC entirely, before repairing your MTA installation. Note: if anyone who is reading this is unable to fix their problem, feel free to open a new topic in this section (Client support) as MTA staff is able to dedode the parameters of a kick to see which MTA data file is affected and causing your problem. If no antivirus/antimalware scan is able to find it on your PC, then we may also offer to help by having you send us the file we say is affected, so that we can compare it to the original and look which segments (data added by virus) are mismatching, in an effort to identify the virus in question as the modifications often leave a mark of that. This case-by-case analysis allows you to then search for a virus scanner capable (or tool specialised in) removing said threat from your PC. Besides manual analysis, you can also try uploading the file we tell you is affected (or if we didn't tell you, all your DLL data files from the MTA install folder) to http://virustotal.com and see if it detects any identifyable virus, as the file should be infected. You can then, also, look for a virus scanner said to be capable of removing that threat from your PC. Here is one success story from an user that analysed the culprit file causing his VF #2 error: https://forum.multitheftauto.com/topic/101585-you-are-kicked-from-the-game-vf2-28070000/ Example error code details: VF #2 23070000 means that "bass_fx.dll" from your MTA San Andreas > MTA installation folder, has been corrupted (on the binary file level). However as I explained, you cannot really resolve this by restoring only the affected file, without also making sure it will not simply get re-corrupted by the thing on your PC that originally did it.
    1 point
  34. وكمان اقدر اشيلها لو المود مشفر _chat = outputChatBox function outputChatBox(msg, ...) if msg == "هنا تحط الكلام او الحقوق" then return false end return _chat(msg, ...) end بس لو كان مبرمج متمكن يخسي يلغي الحقوق
    1 point
  35. ايفنت حلو, بس تقدر تسويه بطريقه افضل منها انك تقدر تستخدمها كلاينت وسيرفر ومنها انك تبتعد عن التحقق بكل فريم ويمكن تكون أدق local fType = "client" _setPlayerMoney = setPlayerMoney _givePlayerMoney = givePlayerMoney _takePlayerMoney = takePlayerMoney function setPlayerMoney(...) local args = {...} local plr,money = (fType == "server") and args[1] or localPlayer, (fType == "server") and arg[2] or arg[1] triggerEvent("on".. (fType == "client" and "Client" or "") .."PlayerMoneyChanged",plr,money,money) return _setPlayerMoney(...) end function givePlayerMoney(...) local args = {...} local plr,money = (fType == "server") and args[1] or localPlayer, (fType == "server") and arg[2] or arg[1] triggerEvent("on".. (fType == "client" and "Client" or "") .."PlayerMoneyChanged",plr,money,getPlayerMoney(plr)+money) return _givePlayerMoney(...) end function takePlayerMoney(...) local args = {...} local plr,money = (fType == "server") and args[1] or localPlayer, (fType == "server") and arg[2] or arg[1] triggerEvent("on".. (fType == "client" and "Client" or "") .."PlayerMoneyChanged",plr,money,getPlayerMoney(plr)-money) return _takePlayerMoney(...) end
    1 point
  36. وضيفة جميلة دبولة , ورينا ابداعاتك
    1 point
  37. NOTE : هذا مو فنكشن لكنه ايفينت وما لقيت مواضيع وما يلزم موضوع جديد مشان ايفنت فقلت اطرححه هنا --------------------------- onClientPlayerMoneyChange ClientSide event الايفينت يتنفذ لما تتغير فلوس الاعب المحلي فيه Parameters _________________________________________________________ int OldMoney, int NewMoney • OldMoney : الفلوس اللي كانت مع الاعب قبل التغيير • NewMoney : الفلوس اللي مع الاعب بعد التغيير Source _________________________________________________________ (المصدرهو الاعب المحلي (اللي تغيرت فلوسه Source Code _________________________________________________________ local EventPlayerMoney = getPlayerMoney(localPlayer) addEventHandler("onClientRender", root, function () if EventPlayerMoney ~= getPlayerMoney(localPlayer) then triggerEvent("onClientPlayerMoneyChange", localPlayer, tonumber(EventPlayerMoney), tonumber(getPlayerMoney(localPlayer))) EventPlayerMoney = getPlayerMoney(localPlayer) end end ) addEvent "onClientPlayerMoneyChange" Example _________________________________________________________ المثال ذا يتحقق كل مرة لما تتغير فلوسه اذا كانت فوق 8000 ويطلع نص بلشات VehiclePrice = 8000 addEventHandler("onClientPlayerMoneyChange", root, function (OldMoney, NewMoney) if NewMoney >= VehiclePrice then outputChatBox("Now you can buy the vehicle !", 0, 255, 0) elseif OldMoney < VehiclePrice then outputChatBox("get more money to buy the vehicle", 255, 0, 0) end end )
    1 point
×
×
  • Create New...