Xeno Posted March 3, 2010 Share Posted March 3, 2010 Iv done markers before when you hit them you teleport somwhere. For some reason i cant put the teleport bit inside the function with the marker in it. I put it in an nuther function and it doesent work, no errors on Debug or anything. Heres my Script function cUFO( player, commandname ) setElementPosition ( player, -1587, 26, 37 ) local UFO = createObject ( 17512, -1326, -67, 110, 180, 0, 0 ) outputChatBox ( "**EVERYONE GET TO SF AIRPORT, IT IS BEING ATTACKED BY UFO'S!**",root,255,100,100 ) local xup = -1430 local yup = 50 local zup = 110 local xup1 = -1394 local yup1 = 107 local zup1 = 110 local xup2 = -1287 local yup2 = -69 local zup2 = 110 local xup3 = -1386 local yup3 = -158 local zup3 = 110 local xup4 = -1587 local yup4 = 26 local zup4 = 1000 setTimer ( moveObject, 2000, 1, UFO, 10000, xup, yup, zup ) setTimer ( moveObject, 15000, 1, UFO, 10000, xup1, yup1, zup1 ) setTimer ( moveObject, 30000, 1, UFO, 10000, xup2, yup2, zup2 ) setTimer ( moveObject, 37000, 1, UFO, 10000, xup3, yup3, zup3 ) setTimer ( moveObject, 45000, 1, UFO, 10000, xup4, yup4, zup4 ) beam = createMarker( 1616, 659, -50, "checkpoint", 5, 0, 255, 0, 150 ) attachElements (beam, UFO, 0, 0, 50, 0, 0, 0) end addCommandHandler ( "UFO", cUFO ) function teleport(player) if getElementType( player ) == "player" and source == beam then setElementPosition(hitPlayer, 4027, -187, 112 ) end end function cUFO( player, commandname ) setElementPosition ( player, -1587, 26, 37 ) local UFO = createObject ( 17512, -1326, -67, 120, 0, 0, 0 ) local xup = -1430 local yup = 50 local zup = 120 local xup1 = -1394 local yup1 = 107 local zup1 = 120 local xup2 = -1287 local yup2 = -69 local zup2 = 120 local xup3 = -1386 local yup3 = -158 local zup3 = 120 local xup4 = -1587 local yup4 = 26 local zup4 = 1000 setTimer ( moveObject, 2000, 1, UFO, 10000, xup, yup, zup ) setTimer ( moveObject, 15000, 1, UFO, 10000, xup1, yup1, zup1 ) setTimer ( moveObject, 30000, 1, UFO, 10000, xup2, yup2, zup2 ) setTimer ( moveObject, 37000, 1, UFO, 10000, xup3, yup3, zup3 ) setTimer ( moveObject, 46000, 1, UFO, 10000, xup4, yup4, zup4 ) end addCommandHandler ( "UFO", cUFO ) Link to comment
Aibo Posted March 4, 2010 Share Posted March 4, 2010 first help people to help you: 1. why you have two event handlers and two functions with the same name? 2. where's the part that calls function teleport(player)? 3. use [lua] tag instead of p.s.: hitPlayer in your teleport function isn't defined, cause i bet it's not a global var Link to comment
Gamesnert Posted March 4, 2010 Share Posted March 4, 2010 For as far as I know, attached marker elements don't trigger onMarkerHit. In fact, you forgot to add the event handler entirely addEventHandler("onMarkerHit",beam,teleport) Link to comment
Xeno Posted March 4, 2010 Author Share Posted March 4, 2010 So basically it wont even work gamesnert? Link to comment
Gamesnert Posted March 4, 2010 Share Posted March 4, 2010 So basically it wont even work gamesnert? Perhaps you should try it first, it might just be me who had a failed test with attached markers about 2 years ago. Link to comment
Xeno Posted March 4, 2010 Author Share Posted March 4, 2010 Ok, could you help me then, i didnt really get at xbost said as im not that well scripter Link to comment
Gamesnert Posted March 4, 2010 Share Posted March 4, 2010 He meant that there are 2 functions which appear to be exactly the same. And both are bound to the same command. He also noticed you aren't calling the teleport function. (god I should learn to read before posting D:) And finally, this is a tip for the use on the forum from him, to use [lua] (or ) instead of just [code]. It makes reading your code yet another bit easier.Anyway, put that event handler I posted before into the cUFO function, just after you create the marker. If onMarkerHit would work with attached markers, it'll work properly. If not, then... It doesn't eh? Link to comment
Xeno Posted March 5, 2010 Author Share Posted March 5, 2010 It says bad argument @ addeventhandler Link to comment
Xeno Posted March 5, 2010 Author Share Posted March 5, 2010 i think iv neally fixed it, this is it local beam = createMarker( 1616, 659, -50, "checkpoint", 5, 0, 255, 0, 150 ) function cUFO( player, commandname ) setElementPosition ( player, -1587, 26, 37 ) local UFO = createObject ( 17512, -1326, -67, 110, 180, 0, 0 ) outputChatBox ( "** EVERYONE GET TO SF AIRPORT, IT IS BEING ATTACKED BY UFO'S! **",root,255,100,100 ) local xup = -1430 local yup = 50 local zup = 110 local xup1 = -1394 local yup1 = 107 local zup1 = 110 local xup2 = -1287 local yup2 = -69 local zup2 = 110 local xup3 = -1386 local yup3 = -158 local zup3 = 110 local xup4 = -1587 local yup4 = 26 local zup4 = 1000 setTimer ( moveObject, 2000, 1, UFO, 10000, xup, yup, zup ) setTimer ( moveObject, 15000, 1, UFO, 10000, xup1, yup1, zup1 ) setTimer ( moveObject, 30000, 1, UFO, 10000, xup2, yup2, zup2 ) setTimer ( moveObject, 37000, 1, UFO, 10000, xup3, yup3, zup3 ) setTimer ( moveObject, 45000, 1, UFO, 10000, xup4, yup4, zup4 ) attachElements (beam, UFO, 0, 0, 50, 0, 0, 0) end addCommandHandler ( "UFOsf", cUFO ) function teleport(player) if (source == beam) then setElementPosition(player, 4027, -187, 112 ) end end addEventHandler("onMarkerHit", beam, teleport) 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