Jump to content

setVehicleHandling Expected number


Recommended Posts

function setChipVehicle(player, vehicle, handlings, name, money)
	if isElement(vehicle) then
		if getPlayerMoney(player) >= tonumber(money) then
			if type(handlings) == "string" then
				local strArray = {}
				for token in string.gmatch(handlings, "[^%s]+") do
					table.insert(strArray,token)
				end
				local i = 2
				
				outputChatBox("#1E90FF[Механик] #FFFFFFВы успешно установили чип '"..name.."' за "..money.." р.", player, 255, 255, 255, true)
				takePlayerMoney(player, money)
				
				setElementData(vehicle, "stageNum1", 0)
				setElementData(vehicle, "stageNum2", 0)
				setElementData(vehicle, "stageNum3", 0)

				for k,v in pairs(handlingNamesTable) do
					setVehicleHandling(vehicle, v, strArray[i])
					if v == "modelFlags" or v == "handlingFlags" then
						setVehicleHandling(vehicle, v, tonumber("0x"..strArray[i]))
					elseif v == "driveType" then
						if strArray[i] == "4" then
							setVehicleHandling(vehicle, v, "awd")
						end
					end
					i = i + 1
				end 
			elseif type(handlings) == "table" then
				for k,v in pairs(handlings) do
				end
			end
		else
            outputChatBox("#1E90FF[Механик] #FFFFFFУ вас недостаточно средств!", player, 255, 255, 255, true)
		end
	end
end
addEvent("setChipVehicle",true)
addEventHandler("setChipVehicle",root,setChipVehicle)

ругается на строку setVehicleHandling(vehicle, v, strArray). Помогите пожалуйста

Link to comment
  • Scripting Moderators

Для помощи по скриптам есть подфорум 'Скриптинг', перенёс тему туда. Просьба использовать именно его.
Здесь быстро не понять, в чём проблема. Вообще желательно оставлять полную строку с ошибкой, дабы другие пользователи не гадали, в чём дело.
Могу предложить заняться отладкой, выводить сообщения с информацией и смотреть, в каком месте проблема с кодом.
На вики есть пример: https://wiki.multitheftauto.com/index.php?title=RU/Debugging

 

Edited by Sarrum
Link to comment
function setChipVehicle(player, vehicle, handlings, name, money)
	if isElement(vehicle) then
		if getPlayerMoney(player) >= tonumber(money) then
			if type(handlings) == "string" then
				local strArray = {}
				for token in string.gmatch(handlings, "[^%s]+") do
					table.insert(strArray,token)
				end
				local i = 2
				
				outputChatBox("#1E90FF[Механик] #FFFFFFВы успешно установили чип '"..name.."' за "..money.." р.", player, 255, 255, 255, true)
				takePlayerMoney(player, money)
				
				setElementData(vehicle, "stageNum1", 0)
				setElementData(vehicle, "stageNum2", 0)
				setElementData(vehicle, "stageNum3", 0)

				for k,v in pairs(handlingNamesTable) do
					setVehicleHandling(vehicle, v, strArray[i])
					if v == "modelFlags" or v == "handlingFlags" then
						setVehicleHandling(vehicle, v, tonumber("0x"..strArray[i]))
					elseif v == "driveType" then
						if strArray[i] == "4" then
							setVehicleHandling(vehicle, v, "awd")
						end
					end
					i = i + 1
				end 
			elseif type(handlings) == "table" then
				for k,v in pairs(handlings) do
				end
			end
		else
            outputChatBox("#1E90FF[Механик] #FFFFFFУ вас недостаточно средств!", player, 255, 255, 255, true)
		end
	end
end
addEvent("setChipVehicle",true)
addEventHandler("setChipVehicle",root,setChipVehicle)

 

Link to comment
  • Scripting Moderators

Объединил 2 темы в одну. Не создавайте новые для старого/похожего вопроса/проблемы.
Предупреждение появляется при попытке преобразовать неконвертируемую строку в число.
Ничего нового не отвечу, займитесь отладкой кода. Вряд ли кто-то из форумчан знает, что передаётся в аргументы этой функции-обработчика.

Link to comment
9 hours ago, Sarrum said:

Объединил 2 темы в одну. Не создавайте новые для старого/похожего вопроса/проблемы.
Предупреждение появляется при попытке преобразовать неконвертируемую строку в число.
Ничего нового не отвечу, займитесь отладкой кода. Вряд ли кто-то из форумчан знает, что передаётся в аргументы этой функции-обработчика.

а вы спойлер смотрели хоть? я там ссылку на изображение скинул там и есть отладка кода.

Link to comment
  • Scripting Moderators
9 hours ago, Createprojectmd said:

а вы спойлер смотрели хоть? я там ссылку на изображение скинул там и есть отладка кода.

В коде выше нет изменений, он не отличается от старого. Если речь про '3' в чате, вывод мог быть и от другого ресурса.
Сделайте сообщения информативней и используйте iprint, выводя значения переменных в дебаг-консоль, включая строку, на которую ругается в дебаге.

Link to comment

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 account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...