variablePiloni = {};
function variablePiloni.prerequisitesPresent(specializations) return true; end;
function variablePiloni:load(xmlFile) end;
function variablePiloni:delete() end;
function variablePiloni:loadFromAttributesAndNodes(xmlFile, key, resetVehicles)
	local currentPiloni = getXMLInt(xmlFile, key .. "#currentPiloni"); if currentPiloni ~= nil then self:setcurrentPiloni(currentPiloni-1); end;
	return BaseMission.VEHICLE_LOAD_OK; end;
function variablePiloni:getSaveAttributesAndNodes(nodeIdent) local attributes = 'currentPiloni="' .. self.currentPiloni .. '"'; return attributes; end;
function variablePiloni:mouseEvent(posX, posY, isDown, isUp, button) end;
function variablePiloni:keyEvent(unicode, sym, modifier, isDown) end;
function variablePiloni:update(dt) if g_currentMission.player ~= nil and g_currentMission.player.isEntered then
	local px, py, pz = getWorldTranslation(g_currentMission.player.rootNode); local tx, ty, tz = getWorldTranslation(self.components[1].node);
	if Utils.vector3Length(px-tx, py-ty, pz-tz) < 3 then if InputBinding.hasEvent(InputBinding.change) then
		if self.currentPiloni == 1 and not self:getIsAnimationPlaying("piloni") then self:setcurrentPiloni(2);
		elseif self.currentPiloni == 3 and not self:getIsAnimationPlaying("piloni") and ((self.fillLevel < 2 and self.currentBalle == 1) or (self.fillLevel < 3 and self.currentBalle == 2) or self.currentBalle == 0) or self.currentBalle == -1 then self:setcurrentPiloni(0); end; end;
	if self.currentPiloni == 1 and not self:getIsAnimationPlaying("piloni") then g_currentMission:addHelpButtonText(g_i18n:getText("piloniUp"), InputBinding.change);
	elseif self.currentPiloni == 3 and not self:getIsAnimationPlaying("piloni") and (self.fillLevel < 2 and self.currentBalle == 1) or (self.fillLevel < 3 and self.currentBalle == 2) or self.currentBalle == 0 or self.currentBalle == -1 then g_currentMission:addHelpButtonText(g_i18n:getText("piloniDown"), InputBinding.change); end; end; end; end;
function variablePiloni:updateTick(dt)
	if self.currentPiloni == 0 then	self:playAnimation("piloni", -1, nil, true); self.currentPiloni = 1;
	elseif self.currentPiloni == 2 then	self:playAnimation("piloni", 1, nil, true); self.currentPiloni = 3; end; end;
function variablePiloni:onAttach(attacherVehicle, jointDescIndex) end;
function variablePiloni:onDetach() end;
function variablePiloni:draw() end;