Adde Posted April 7, 2013 Share Posted April 7, 2013 This gatemaker from community got a problem on latest version of mta, i don´t know how to fix it but I hope someone can! debug: WARNING: [gameplay]/gatemaker/gateloader.lua:85: Bad argument @ "moveobject" [Expected easing-type at argument 9, got number "0" ] server.lua Editor = {} Gate = {} Gate2 = {} Precision = {} status = {} coll = {} coll2 = {} coll3 = {} coll4 = {} -- this script mod is (no longer) PRIVATE -- - Deject3d function startBuilding(playerSource, commandName, objectid) if not objectid then outputChatBox("usage: /addgate objectid teamname", playerSource) end team = getTeamName(getPlayerTeam(playerSource)) if team == false then team = "" end for i = 1,20 do if Editor[i] == playerSource then destroyElement(Gate[i]) Gate[i] = null Editor[i] = null Precision[i] = null end if Editor[i] == null then Editor[i] = playerSource -- set Editor[i] to who made the object --creating object -v local x,y,z = getElementPosition(playerSource) object = createObject ( objectid, x + 3,y + 3,z) interior = getElementInterior ( playerSource ) setElementInterior(object,interior) --created object -^ Gate[i] = object -- added object identifier to the array, corresponds to who created it Precision[i] = .5 -- default precision bindKey(playerSource, "i", "down", moveIt) bindKey(playerSource, "j", "down", moveIt) bindKey(playerSource, "k", "down", moveIt) bindKey(playerSource, "l", "down", moveIt) bindKey(playerSource, "mouse_wheel_up", "down", moveIt) bindKey(playerSource, "mouse_wheel_down", "down", moveIt) bindKey(playerSource, "pgup", "down", moveIt) bindKey(playerSource, "pgdn", "down", moveIt) bindKey(playerSource, "u", "down", moveIt) bindKey(playerSource, "o", "down", moveIt) bindKey(playerSource, "[", "down", moveIt) bindKey(playerSource, "]", "down", moveIt) bindKey(playerSource, "enter", "down", nextPosition ,objectid, team) bindKey(playerSource, "delete", "down", removeIt, playerSource) break -- done adding our object and who created it to the arrays... stop the loop end end end function nextPosition(playerSource, key, keyState, objectid, team) unbindKey ( playerSource, "i" ) unbindKey ( playerSource, "j" ) unbindKey ( playerSource, "k" ) unbindKey ( playerSource, "l" ) unbindKey ( playerSource, "pgup" ) unbindKey ( playerSource, "pgdn" ) unbindKey ( playerSource, "mouse_wheel_down") unbindKey ( playerSource, "mouse_wheel_up" ) unbindKey ( playerSource, "enter" ) unbindKey ( playerSource, "delete" ) unbindKey ( playerSource, "u" ) unbindKey ( playerSource, "o" ) unbindKey ( playerSource, "[" ) unbindKey ( playerSource, "]" ) outputDebugString("object 1 set. object 2 controlled. ID: " .. objectid .." team: " .. team .. "") for i = 1,20 do if Editor[i] == playerSource then --creating object -v local x,y,z = getElementPosition(Gate[i]) local rx,ry,rz= getObjectRotation(Gate[i]) object = createObject ( objectid, x,y,z,rx,ry,rz) interior = getElementInterior ( playerSource ) setElementInterior(object,interior) --created object -^ Gate2[i] = object -- added object identifier to the array, corresponds to who created it Precision[i] = .5 -- default precision bindKey(playerSource, "i", "down", moveIt2) bindKey(playerSource, "j", "down", moveIt2) bindKey(playerSource, "k", "down", moveIt2) bindKey(playerSource, "l", "down", moveIt2) bindKey(playerSource, "mouse_wheel_up", "down", moveIt2) bindKey(playerSource, "mouse_wheel_down", "down", moveIt2) bindKey(playerSource, "pgup", "down", moveIt2) bindKey(playerSource, "pgdn", "down", moveIt2) bindKey(playerSource, "u", "down", moveIt2) bindKey(playerSource, "o", "down", moveIt2) bindKey(playerSource, "[", "down", moveIt2) bindKey(playerSource, "]", "down", moveIt2) bindKey(playerSource, "enter", "down", collisionObject, team, objectID) bindKey(playerSource, "delete", "down", removeIt, playerSource) break -- done adding our object and who created it to the arrays... stop the loop end end end function changePrecision(playerSource,commandName,value) if value then for i = 1,20 do if Editor[i] == playerSource then Precision[i] = value outputChatBox("Sensitivity set to: " .. value .. "", playerSource) break end end end end function moveIt(source, key, keyState) for i = 1,20 do if Editor[i] == source then object = Gate[i] prec = Precision[i] break end end if key == "i" then x,y,z = getElementPosition(object) setElementPosition ( object, x,y + prec,z ) end if key =="j" then x,y,z = getElementPosition(object) setElementPosition ( object, x - prec,y,z ) end if key =="l" then x,y,z = getElementPosition(object) setElementPosition ( object, x + prec,y,z ) end if key =="k" then x,y,z = getElementPosition(object) setElementPosition ( object, x,y - prec,z ) end if key =="pgup" then x,y,z = getElementPosition(object) setElementPosition ( object, x,y,z + prec ) end if key =="pgdn" then x,y,z = getElementPosition(object) setElementPosition ( object, x,y ,z - prec ) end -- rotation -- if key =="mouse_wheel_up" then rx,ry,rz = getObjectRotation(object) setObjectRotation ( object, rx,ry,rz - prec * 5) end if key =="mouse_wheel_down" then rx,ry,rz = getObjectRotation(object) setObjectRotation ( object, rx,ry,rz + prec * 5) end if key =="u" then rx,ry,rz = getObjectRotation(object) setObjectRotation ( object, rx,ry - prec*10,rz) end if key =="o" then rx,ry,rz = getObjectRotation(object) setObjectRotation ( object, rx,ry + prec*10,rz) end if key =="[" then rx,ry,rz = getObjectRotation(object) setObjectRotation ( object, rx- prec*10,ry,rz) end if key =="]" then rx,ry,rz = getObjectRotation(object) setObjectRotation ( object, rx+ prec*10,ry,rz) end end function moveIt2(source, key, keyState) for i = 1,20 do if Editor[i] == source then object = Gate2[i] prec = Precision[i] break end end if key == "i" then x,y,z = getElementPosition(object) setElementPosition ( object, x,y + prec,z ) end if key =="j" then x,y,z = getElementPosition(object) setElementPosition ( object, x - prec,y,z ) end if key =="l" then x,y,z = getElementPosition(object) setElementPosition ( object, x + prec,y,z ) end if key =="k" then x,y,z = getElementPosition(object) setElementPosition ( object, x,y - prec,z ) end if key =="pgup" then x,y,z = getElementPosition(object) setElementPosition ( object, x,y,z + prec ) end if key =="pgdn" then x,y,z = getElementPosition(object) setElementPosition ( object, x,y ,z - prec ) end -- rotation -- if key =="mouse_wheel_up" then rx,ry,rz = getObjectRotation(object) setObjectRotation ( object, rx,ry,rz - prec * 5) end if key =="mouse_wheel_down" then rx,ry,rz = getObjectRotation(object) setObjectRotation ( object, rx,ry,rz + prec * 5) end if key =="u" then rx,ry,rz = getObjectRotation(object) setObjectRotation ( object, rx,ry - prec*10,rz) end if key =="o" then rx,ry,rz = getObjectRotation(object) setObjectRotation ( object, rx,ry + prec*10,rz) end if key =="[" then rx,ry,rz = getObjectRotation(object) setObjectRotation ( object, rx- prec*10,ry,rz) end if key =="]" then rx,ry,rz = getObjectRotation(object) setObjectRotation ( object, rx+ prec*10,ry,rz) end Link to comment
Adde Posted April 7, 2013 Author Share Posted April 7, 2013 Nope, I just reinstalled mta and added it again. Link to comment
Castillo Posted April 7, 2013 Share Posted April 7, 2013 Well, that script is defining the moveTo position twice, try removing "x, y, z" from moveObject, and leave moveToX, moveToY, moveToZ only. Link to comment
Adde Posted April 7, 2013 Author Share Posted April 7, 2013 Same problem but ":85:Bad argument @ "moveobject" [Expected number at argument 3, got nil ]" Link to comment
Castillo Posted April 7, 2013 Share Posted April 7, 2013 Try this then: moveObject ( gateList[index], 3000, x,y,z, rx,ry,rz ) Link to comment
Adde Posted April 7, 2013 Author Share Posted April 7, 2013 It works, but also not. It rotates all way back and changes position of the rotation after every time i open and close, lol. When I restart gatemaker the gate is set to the right position. 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