Ahmed Araby Posted March 18, 2017 Share Posted March 18, 2017 Table = {} function table.random ( theTable ) return theTable[math.random ( #theTable )] end function() Player1 = table.random(Table) Player2 = table.random(Table) if not Player1 == Player2 then givePlayerMoney(Player1,50000) givePlayerMoney(Player2,50000) end end دلوقتي لو في ٣ للجدول يعطي لل٣ فلوس ليه Link to comment
AHMED MOSTAFA Posted March 18, 2017 Share Posted March 18, 2017 49 minutes ago, Ahmed Araby said: Table = {} function table.random ( theTable ) return theTable[math.random ( #theTable )] end function() Player1 = table.random(Table) Player2 = table.random(Table) if not Player1 == Player2 then givePlayerMoney(Player1,50000) givePlayerMoney(Player2,50000) end end دلوقتي لو في ٣ للجدول يعطي لل٣ فلوس ليه وضح اكثر Link to comment
فاّرس Posted March 18, 2017 Share Posted March 18, 2017 وش تبغى تسوي بالضبط؟ لأني شايف كودك ماله اي فايده؟ Link to comment
Master_MTA Posted March 18, 2017 Share Posted March 18, 2017 (edited) function randomtable ( aTable ) local number={} for k,v in ipairs ( aTable ) do table.insert(number,k) end return math.random ( 0,#number ) end وظيفه صنعتها انا وقالولي في واحد صانع وحده قبلك فما ادري على العموم طريقة الاستخدام كودك بيكون كذا Table = {} function randomtable ( aTable ) local number={} for k,v in ipairs ( aTable ) do table.insert(number,k) end return math.random ( 0,#number ) end addCommandHandler('giverandommoney', function() Player1 = randomtable(Table) Player2 = randomtable(Table) if not Player1 == Player2 then givePlayerMoney(Player1,50000) givePlayerMoney(Player2,50000) end end ) بالتوفيق + تاكد ان في قيم في التيبل اصلا + تو انتبه كودك بيطلعلك user data شفلك طريقه افضل Edited March 18, 2017 by Master_MTA Link to comment
#Soking Posted March 18, 2017 Share Posted March 18, 2017 (edited) 6 minutes ago, Master_MTA said: function randomtable ( aTable ) local number={} for k,v in ipairs ( aTable ) do table.insert(number,k) end return math.random ( 0,#number ) end وظيفه صنعتها انا وقالولي في واحد صانع وحده قبلك فما ادري على العموم طريقة الاستخدام كودك بيكون كذا Table = {} function randomtable ( aTable ) local number={} for k,v in ipairs ( aTable ) do table.insert(number,k) end return math.random ( 0,#number ) end addCommandHandler('giverandommoney', function() Player1 = randomtable(Table) Player2 = randomtable(Table) if not Player1 == Player2 then givePlayerMoney(Player1,50000) givePlayerMoney(Player2,50000) end end ) بالتوفيق + تاكد ان في قيم في التيبل اصلا + تو انتبه كودك بيطلعلك user data شفلك طريقه افضل aTable = { } function aRandom ( Table ) return Table[ math['random'] ( #Table ) ] end function getRandom ( ) if ( #aTable > 1 ) then Player1 , Player2 = aRandom ( aTable ) , aRandom ( aTable ) while ( Player1 == Player2 ) then Player1 = aRandom ( aTable ) end return ( givePlayerMoney ( Player1 , 5000 ) and givePlayerMoney ( Player2 , 5000 ) ) end end Edited March 18, 2017 by #Soking Link to comment
Master_MTA Posted March 18, 2017 Share Posted March 18, 2017 Just now, #Soking said: aTable = { } function aRandom ( Table ) return Table[ math['random'] ( #Table ) ] end function getRandom ( ) if ( aTable > 1 ) then Player1 , Player2 = aRandom ( aTable ) , aRandom ( aTable ) while ( Player1 == Player2 ) then Player1 = aRandom ( aTable ) end return ( givePlayerMoney ( Player1 , 5000 ) and givePlayerMoney ( Player2 , 5000 ) ) end end اتوقع بيطلعله user data بسبب # جربه المفروض هو يخلي جمب الاسم رقم بالتيبل عشان يقدر يجيب اللاعب منه Link to comment
#Soking Posted March 18, 2017 Share Posted March 18, 2017 1 minute ago, Master_MTA said: اتوقع بيطلعله user data بسبب # جربه عدلت شي و ماعتقد بيطلع غلط 2 minutes ago, Master_MTA said: اتوقع بيطلعله user data بسبب # جربه # تجيب طول السلسله او العدد Link to comment
Ahmed Araby Posted March 18, 2017 Author Share Posted March 18, 2017 6 hours ago, #Soking said: عدلت شي و ماعتقد بيطلع غلط # تجيب طول السلسله او العدد 6 hours ago, Master_MTA said: اتوقع بيطلعله user data بسبب # جربه المفروض هو يخلي جمب الاسم رقم بالتيبل عشان يقدر يجيب اللاعب منه function aRandom ( Table ) return Table[ math['random'] ( #Table ) ] end function Random ( ) if ( #Table > 1 ) then Player1 , Player2 = aRandom ( Table ) , aRandom ( Table ) if not ( Player1 == Player2 ) then givePlayerMoney(Player1,5000) givePlayerMoney(Player2,5000) setElementPosition(Player1,0,0,0) setElementPosition(Player2,0,0,0) else Player1 , Player2 = aRandom ( Table ) , aRandom ( Table ) givePlayerMoney(Player1,5000) givePlayerMoney(Player2,5000) setElementPosition(Player1,0,0,0) setElementPosition(Player2,0,0,0) end end end end طيب فين الخطا هنا ؟؟ ليه دلوقتي لو في 4 لاعبين يحط الـ4 لاعبين في المكان الهو الاحداثيات؟ انا عاوز لاعبين 2 بس Link to comment
Ahmed Araby Posted March 18, 2017 Author Share Posted March 18, 2017 10 minutes ago, #Soking said: جربت كودي اه يقول بالدي بج في then ناقص شلت while و حطيت if و ظبطت التحقق بس بردو Link to comment
#Soking Posted March 18, 2017 Share Posted March 18, 2017 خلي كودي بس غير كلمه than في سطر ال while وخليها do Link to comment
SycroX Posted March 19, 2017 Share Posted March 19, 2017 (edited) Players = {} function getRandomPlayers(Table) return Table[math["random"](#Table)] end function giveRandomPlayers() Player1, Player2 = getRandomPlayers(Players), getRandomPlayers(Players) repeat Player1, Player2 = getRandomPlayers(Players), getRandomPlayers(Players) until Player1 ~= Player2 givePlayerMoney(Player1, 1000) givePlayerMoney(Player2, 1000) end Edited March 19, 2017 by #Skrillex Link to comment
Master_MTA Posted March 19, 2017 Share Posted March 19, 2017 6 hours ago, #Skrillex said: Players = {} function getRandomPlayers(Table) return Table[math["random"](#Table)] end function giveRandomPlayers() Player1, Player2 = getRandomPlayers(Players), getRandomPlayers(Players) repeat Player1, Player2 = getRandomPlayers(Players), getRandomPlayers(Players) until Player1 ~= Player2 givePlayerMoney(Player1, 1000) givePlayerMoney(Player2, 1000) end والفايده وشو؟ نفس الكود لكن زيادة سطور وخلاص مع احترامي اتوقع الاخ سوكنق افاده Link to comment
SycroX Posted March 19, 2017 Share Posted March 19, 2017 (edited) رد صاحب الموضوع يقول ان حقو مش شغال + الفرق اني في كودي يعيد عمليه جلب اللاعبين لين ما يصير اللاعب الأول مو نفس التاني + كود سو كينج غلط مستعمل while غلط هوا ما ينفع white code then end ما ينفع هيك يعني -- ذا هيك غلط و سوكينج مستعملو هيك ده مثال بسيط num = 1 while num == 1 then num = num + 1 end -- الصح num = 1 while num == 1 do num = num + 1 end -- الناتج هنا هيكون 2 شفت الفرق :- + repeat until افضل لانو هيكرر العمليه لين يكونو الأتنين مختلفين + الكود التاني الي فيه if هيحتاج يتحط في تايمر عشان يكرر الـتحقق Edited March 19, 2017 by #Skrillex Link to comment
Master_MTA Posted March 19, 2017 Share Posted March 19, 2017 17 minutes ago, #Skrillex said: رد صاحب الموضوع يقول ان حقو مش شغال + الفرق اني في كودي يعيد عمليه جلب اللاعبين لين ما يصير اللاعب الأول مو نفس التاني + كود سو كينج غلط مستعمل while غلط هوا ما ينفع white code then end ما ينفع هيك يعني -- ذا هيك غلط و سوكينج مستعملو هيك ده مثال بسيط num = 1 while num == 1 then num = num + 1 end -- الصح num = 1 while num == 1 do num = num + 1 end -- الناتج هنا هيكون 2 شفت الفرق :- + repeat until افضل لانو هيكرر العمليه لين يكونو الأتنين مختلفين + الكود التاني الي فيه if هيحتاج يتحط في تايمر عشان يكرر الـتحقق الاخ كان حاط كود سليم امس ما شفته اليوم اعذرني اكيد اعرف ذي الاشياء ولا وش رايك Link to comment
Ahmed Araby Posted March 19, 2017 Author Share Posted March 19, 2017 6 minutes ago, Master_MTA said: الاخ كان حاط كود سليم امس ما شفته اليوم اعذرني اكيد اعرف ذي الاشياء ولا وش رايك 25 minutes ago, #Skrillex said: رد صاحب الموضوع يقول ان حقو مش شغال + الفرق اني في كودي يعيد عمليه جلب اللاعبين لين ما يصير اللاعب الأول مو نفس التاني + كود سو كينج غلط مستعمل while غلط هوا ما ينفع white code then end ما ينفع هيك يعني -- ذا هيك غلط و سوكينج مستعملو هيك ده مثال بسيط num = 1 while num == 1 then num = num + 1 end -- الصح num = 1 while num == 1 do num = num + 1 end -- الناتج هنا هيكون 2 شفت الفرق :- + repeat until افضل لانو هيكرر العمليه لين يكونو الأتنين مختلفين + الكود التاني الي فيه if هيحتاج يتحط في تايمر عشان يكرر الـتحقق ي شباب يسحب كل اللاعبين بردو Link to comment
Master_MTA Posted March 19, 2017 Share Posted March 19, 2017 2 minutes ago, Ahmed Araby said: ي شباب يسحب كل اللاعبين بردو هاتلي كود اللي تسوي فيه انزيرت للتيبل Link to comment
Ahmed Araby Posted March 19, 2017 Author Share Posted March 19, 2017 3 minutes ago, Master_MTA said: هاتلي كود اللي تسوي فيه انزيرت للتيبل function AddPlayer(player, Table) if not getPlayerTable(player, Table) then table.insert(Table, player) end end Link to comment
Master_MTA Posted March 19, 2017 Share Posted March 19, 2017 + اتوقع افدتك شف Table = {} function randomtable ( aTable ) local number={} for k,v in ipairs ( aTable ) do table.insert(number,k) end return math.random ( 0,#number ) end addCommandHandler('giverandommoney', function() Player1,Player2 = randomtable(Table) ,randomtable(Table) if not Player1 == Player2 then givePlayerMoney(Player1,50000) else repeat Player1,Player2= randomtable(Table) ,randomtable(Table) until Player1~=Player2 givePlayerMoney(Player2,50000) end end ) جرب اكتب باف 8 giverandommoney Link to comment
#Soking Posted March 19, 2017 Share Posted March 19, 2017 5 hours ago, #Skrillex said: رد صاحب الموضوع يقول ان حقو مش شغال + الفرق اني في كودي يعيد عمليه جلب اللاعبين لين ما يصير اللاعب الأول مو نفس التاني + كود سو كينج غلط مستعمل while غلط هوا ما ينفع white code then end ما ينفع هيك يعني -- ذا هيك غلط و سوكينج مستعملو هيك ده مثال بسيط num = 1 while num == 1 then num = num + 1 end -- الصح num = 1 while num == 1 do num = num + 1 end -- الناتج هنا هيكون 2 شفت الفرق :- + repeat until افضل لانو هيكرر العمليه لين يكونو الأتنين مختلفين + الكود التاني الي فيه if هيحتاج يتحط في تايمر عشان يكرر الـتحقق انا سويت غلطه و عدلتها و قلت له يجرب و انت كودك طويل و مافي تحقق من طول الجدول لو فيه اكثز من ٢ يعني لو في واحد بيكون لوبم تكرر لوب متكرر بدون توقف الا لما واحد يدخل الجدول و يكونو ٢ غير كذا انا مشوي لو الاعبين نفسهم ييسوي راندوم للاعب ثاني #Edit: On ٢٢/٩/١٤٣٧ هـ at 22:48, #Soking said: اذا هي حق الدواره دي ليه الطرح المثال دا بالويكي ليه حطها ؟ function equalTwoRandomPlayersVelocity() if getPlayerCount() < 2 then -- If there's only one player (or no players) this doesn't make sense return false end local randomPlayer1, randomPlayer2 = getRandomPlayer(), getRandomPlayer() -- Get two random players while randomPlayer1 == randomPlayer2 do -- Make sure the two players are different randomPlayer2 = getRandomPlayer() end local speedx, speedy, speedz = getElementVelocity (randomPlayer1) -- Get the velocity of the first random player setElementVelocity(randomPlayer2, speedx, speedy, speedz) -- Copy that velocity to the second random player outputChatBox("Now " .. getPlayerName(randomPlayer2) .. " runs as fast as " .. getPlayerName(randomPlayer1) .. "!", root, 255, 128, 0) return true 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