Sfa7 Posted January 26, 2014 Share Posted January 26, 2014 سلام ي اخوان انا ابي اطلع شاحنه والصق فيها الي وراها ذيك الصندوق بس ابي لما ينفك الصندوق الي ورا الشاحنه يطلع بشات لقد انفك الصندوق يجب الصاقه اتمني فهمتوني Link to comment
K1NG Posted January 26, 2014 Share Posted January 26, 2014 Event: "onTrailerDetach" getVehicleController outputChatBox Link to comment
Sfa7 Posted January 26, 2014 Author Share Posted January 26, 2014 Event: "onTrailerDetach" الحدث هذا كيف اخليه يشتغل لو عندي داتا ؟ ابيه يتحقق اذا كانت عندي داتا اسمها car يسوي الوظيفه هاذي كيف؟ ممكن مثال بسيط لاهنت Link to comment
iPrestege Posted January 26, 2014 Share Posted January 26, 2014 Event: "onTrailerDetach"الحدث هذا كيف اخليه يشتغل لو عندي داتا ؟ ابيه يتحقق اذا كانت عندي داتا اسمها car يسوي الوظيفه هاذي كيف؟ ممكن مثال بسيط لاهنت اذا كانت الداتا للآعـب نفسه استخدم الفنكشن اللي سبق وعطاك ايـاه للـقـائد : getVehicleController() Link to comment
Sfa7 Posted January 26, 2014 Author Share Posted January 26, 2014 انا ابي ماركر اذا لمسته يعطيك شاحنه وفيه وراها الصندوق الي تسحبه واذا انفصل يجيك كلام يقول يجب ان ترجع الصندوق لقد فقدته ككيف ؟ Link to comment
iPrestege Posted January 26, 2014 Share Posted January 26, 2014 انا ابي ماركر اذا لمسته يعطيك شاحنه وفيه وراها الصندوق الي تسحبه واذا انفصل يجيك كلام يقول يجب ان ترجع الصندوق لقد فقدته ككيف ؟ مثآل بسيط و الكود غير كامل فقط مثآل بسيط .. لـ التوضيح .. gVehicle = { gTruck = { }, gTrailer = { }, } local gMarker = createMarker ( x,y,z ) addEventHandler ( 'onMarkerHit',gMarker, function ( gPlayer ) if getElementType ( gPlayer ) == 'player' and not isPedInVehicle ( gPlayer ) then if gVehicle.gTruck [ gPlayer ] and isElement ( gVehicle.gTruck [ gPlayer ] ) then return destroyElement ( gVehicle.gTruck [ gPlayer ] ) end if gVehicle.gTrailer [ gPlayer ] and isElement ( gVehicle.gTrailer [ gPlayer ] ) then return destroyElement ( gVehicle.gTrailer [ gPlayer ] ) end gVehicle.gTruck [ gPlayer ] = createVehicle ( 403,x+math.random ( 1,10 ),y,z ) gVehicle.gTrailer [ gPlayer ] = createVehicle ( 435,0,0,0 ) attachTrailerToVehicle ( gVehicle.gTruck [ gPlayer ],gVehicle.gTrailer [ gPlayer ] ) warpPedIntoVehicle ( gPlayer,gVehicle.gTruck [ gPlayer ] ) outputChatBox ( '* You have get a truck & trailer!!',gPlayer,0,255,0 ) end end ) addEventHandler ( 'onTrailerDetach',root, function ( truck ) local gPlayer = getVehicleController ( truck ) if truck == gVehicle.gTruck [ gPlayer ] and gVehicle.gTrailer [ gPlayer ] and isElement ( gVehicle.gTrailer [ gPlayer ] ) then outputChatBox ( '* The Trailer Was Detached From The Truck!',gPlayer,255,0,0 ) end end ) Link to comment
Sfa7 Posted January 26, 2014 Author Share Posted January 26, 2014 اها فهمت فهمت حلوو شكككرا وماتقصرون وتسلم ي برستيج ع المثال الجميل طيب لو خليت هذا كذا عادي ؟ if truck == gVehicle.gTruck [ gPlayer ] and isElement ( gVehicle.gTrailer [ gPlayer ] ) then لاني شفت تحقق انت مسويه ماله داعي وقلت اختصر شوي واسويه كذا عادي صح ؟ Link to comment
EH10 Posted January 26, 2014 Share Posted January 26, 2014 Event: "onTrailerDetach" getVehicleController outputChatBox * addEventHandler('onTrailerDetach', root, function() Veh = getVehicleController ( source ) outputChatBox('لـقـد أنـفـك الـصـندوق يـجب الصاقة', Veh, 255, 255, 0, true ) end ) .# Link to comment
iPrestege Posted January 26, 2014 Share Posted January 26, 2014 اها فهمت فهمت حلوو شكككرا وماتقصرون وتسلم ي برستيج ع المثال الجميلطيب لو خليت هذا كذا عادي ؟ if truck == gVehicle.gTruck [ gPlayer ] and isElement ( gVehicle.gTrailer [ gPlayer ] ) then لاني شفت تحقق انت مسويه ماله داعي وقلت اختصر شوي واسويه كذا عادي صح ؟ انا تحققت انة الترايلر موجود وانة المنت يفضل تتحقق تفادياً للأخطاء . Link to comment
K1NG Posted January 26, 2014 Share Posted January 26, 2014 انا ابي ماركر اذا لمسته يعطيك شاحنه وفيه وراها الصندوق الي تسحبه واذا انفصل يجيك كلام يقول يجب ان ترجع الصندوق لقد فقدته ككيف ؟ مثآل بسيط و الكود غير كامل فقط مثآل بسيط .. لـ التوضيح .. gVehicle = { gTruck = { }, gTrailer = { }, } local gMarker = createMarker ( x,y,z ) addEventHandler ( 'onMarkerHit',gMarker, function ( gPlayer ) if getElementType ( gPlayer ) == 'player' and not isPedInVehicle ( gPlayer ) then if gVehicle.gTruck [ gPlayer ] and isElement ( gVehicle.gTruck [ gPlayer ] ) then return destroyElement ( gVehicle.gTruck [ gPlayer ] ) end if gVehicle.gTrailer [ gPlayer ] and isElement ( gVehicle.gTrailer [ gPlayer ] ) then return destroyElement ( gVehicle.gTrailer [ gPlayer ] ) end gVehicle.gTruck [ gPlayer ] = createVehicle ( 403,x+math.random ( 1,10 ),y,z ) gVehicle.gTrailer [ gPlayer ] = createVehicle ( 435,0,0,0 ) attachTrailerToVehicle ( gVehicle.gTruck [ gPlayer ],gVehicle.gTrailer [ gPlayer ] ) warpPedIntoVehicle ( gPlayer,gVehicle.gTruck [ gPlayer ] ) outputChatBox ( '* You have get a truck & trailer!!',gPlayer,0,255,0 ) end end ) addEventHandler ( 'onTrailerDetach',root, function ( truck ) local gPlayer = getVehicleController ( truck ) if truck == gVehicle.gTruck [ gPlayer ] and gVehicle.gTrailer [ gPlayer ] and isElement ( gVehicle.gTrailer [ gPlayer ] ) then outputChatBox ( '* The Trailer Was Detached From The Truck!',gPlayer,255,0,0 ) end end ) عندكـ تحققات زايدة مره ومالها داعي ثاني وثالث تحقق بحدث دخول الماركر ليه مسوي ريتيرن وسحب المركبة بنفس الوقت؟ ياتسوي ريتيرن بدون سحب او بالأصل مايحتاج تسوي ريتيرن أساساً + لو انا دخلت اول مرة وكنت داخل الماركر من قبل، اول شي رح يسحب المركبة لانكـ مسوي ريتيرن ثم يوقف الوظيفة + بعدين يوم ادخل المرة الثانية رح يسحب المقطورة ثم يوقف الوظيفة !!! بعدين لين ادخل المرة الثالثة يعطني المركبة مع المقطورة الي طلبها صاحب الموضوع car بالإضافة إلى داتا resourceRoot عن طريق وظيفة "onTrailerDetach" كان يمديكـ تختصر كل تحققاتكـ بحدث + الي هو إذا تم جلب سائق المركبة ام لا؛ لأنه ممكن تنفك المقطورة ومافيه سائق للمركبة "onTrailerDetach" ناقصكـ تحقق بحدث + -- : بالنسبة لصاحب الموضوع، جرب هذا الكود كامل * Server Side: local marker = createMarker ( x, y, z, "type", size, r, g, b, alpha ) local trailerTower = { } local trailer = { } function _destroyElement ( theElm ) if ( isElement ( theElm ) ) then destroyElement ( theElm ) end end addEventHandler ( "onMarkerHit", marker, function ( player ) if ( getElementType ( player ) == "player" ) and not ( isPedInVehicle ( player ) ) then _destroyElement ( trailerTower [ player ] ) _destroyElement ( trailer [ player ] ) local x, y, z = getElementPosition ( player ) trailerTower [ player ] = createVehicle ( 515, x, y, z + 1 ) trailer [ player ] = createVehicle ( 435, x, y + 5, z + 1 ) warpPedIntoVehicle ( player, trailerTower [ player] ) attachTrailerToVehicle ( trailerTower [ player ], trailer [ player ] ) setElementData ( player, "car", true ) end end ) addEventHandler ( "onTrailerDetach", resourceRoot, function ( theTruck ) local player = getVehicleController ( theTruck ) if ( player ) and ( getElementData ( player, "car", true ) ) then outputChatBox ( "يجب ان ترجع الصندوق لقد فقدته", player, 255, 0, 0 ) end end ) addEventHandler ( "onVehicleExplode", resourceRoot, function ( ) destroyElement ( source ) end ) addEventHandler ( "onPlayerQuit", root, function ( ) _destroyElement ( trailerTower [ source ] ) _destroyElement ( trailer [ source ] ) trailerTower [ source ] = nil trailer [ source ] = nil end ) . عوض مكان الأرقمنتات حقت الماركر بأول سطر فقط، الي تحته لاتعدل فيه شي Link to comment
Sfa7 Posted January 26, 2014 Author Share Posted January 26, 2014 اها شككرا ي برستيج ولكن طريقتك شوي فيها لحسه ههههه احس طريقة كينق اسهل واخف شكككرا ويعطيكم الف عافيه ع المساعده وماقصرتو 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