Xperia Posted July 6, 2013 Author Share Posted July 6, 2013 ¿Como puedo pegar al player al vehiculo? Link to comment
BorderLine Posted July 6, 2013 Share Posted July 6, 2013 podrias usar el script de Glue que viene con un comando aparte del bind llamado "glue" usa executeCommandHandler O sino creo que attatchElement Link to comment
Xperia Posted July 7, 2013 Author Share Posted July 7, 2013 function freeze1(source) executeCommandHandler("glue") setElementFrozen( source, true ) setPedAnimation( source, "ped", "ARRESTgun",0,false,false,false) toggleControl ( source, "jump", false ) toggleControl ( source, "forwards", false ) toggleControl ( source, "backwards", false ) toggleControl ( source, "left", false ) toggleControl ( source, "right", false ) toggleControl ( source, "sprint", false ) toggleControl ( source, "walk", false ) toggleControl ( source, "fire", false ) end addEventHandler("onMarkerHit",marker1,freeze1) Me da error en el primer argumento de toogleControl. Link to comment
BorderLine Posted July 7, 2013 Share Posted July 7, 2013 en la funcion onMarkerHit, source es el marcador que toca el player. nose si confunda la funcion al defnir hitelement con source, de todas maneras cambiala function freeze1(hitElement) executeCommandHandler("glue", hitElement) setElementFrozen( hitElement, true ) setPedAnimation( hitElement, "ped", "ARRESTgun",0,false,false,false) toggleControl ( hitElement, "jump", false ) toggleControl ( hitElement, "forwards", false ) toggleControl ( hitElement, "backwards", false ) toggleControl ( hitElement, "left", false ) toggleControl ( hitElement, "right", false ) toggleControl ( hitElement, "sprint", false ) toggleControl ( hitElement, "walk", false ) toggleControl ( hitElement, "fire", false ) end addEventHandler("onMarkerHit",marker1,freeze1) Link to comment
Xperia Posted July 7, 2013 Author Share Posted July 7, 2013 en la funcion onMarkerHit, source es el marcador que toca el player. nose si confunda la funcion al defnir hitelement con source, de todas maneras cambiala function freeze1(hitElement) executeCommandHandler("glue", hitElement) setElementFrozen( hitElement, true ) setPedAnimation( hitElement, "ped", "ARRESTgun",0,false,false,false) toggleControl ( hitElement, "jump", false ) toggleControl ( hitElement, "forwards", false ) toggleControl ( hitElement, "backwards", false ) toggleControl ( hitElement, "left", false ) toggleControl ( hitElement, "right", false ) toggleControl ( hitElement, "sprint", false ) toggleControl ( hitElement, "walk", false ) toggleControl ( hitElement, "fire", false ) end addEventHandler("onMarkerHit",marker1,freeze1) Me sigue dando error. Link to comment
Xperia Posted July 7, 2013 Author Share Posted July 7, 2013 Lo tenes como Server? Si. Link to comment
NodZen Posted July 7, 2013 Share Posted July 7, 2013 Nosé entonces, probá sacarle el hitElement de la funcion. Link to comment
Xperia Posted July 7, 2013 Author Share Posted July 7, 2013 Nada.Aqui el script: Client: marker1 = createMarker(0,0,0,"arrow",0.5,0,0,0,0) addEvent("onEnterPlayerVeh",true) addEventHandler("onEnterPlayerVeh",root, function(w) if ( getElementModel( source ) == 470 ) then w = createWeapon ("minigun", 0, 0, 0 ) end end ) addEvent("onPlayerFireInVeh",true) addEventHandler("onPlayerFireInVeh",root, function() if isElementWithinMarker(localPlayer, marker1) then setWeaponState ( w, "firing") end end ) addEvent("onPlayerStopFireInVeh",true) addEventHandler("onPlayerStopFireInVeh",root, function() if isElementWithinMarker(localPlayer, marker1) then setWeaponState ( w, "ready") end end ) Server: marker1 = createMarker(0,0,0,"arrow",0.5,0,0,0,0) function glueElements(w) triggerClientEvent("onEnterPlayerVeh",root,w) attachElements ( w, source, 0, 0.5, 1.48, 0, 5, 90) attachElements( marker1,source, 0, -0.5, 0.89, 0, 0, 0) setElementAlpha(w,255) end addEventHandler("onVehicleEnter",getRootElement(),glueElements) function checkVeh1() triggerClientEvent("onPlayerFireInVeh",getRootElement(),w) end function checkVeh2() triggerClientEvent("onPlayerStopFireInVeh",getRootElement(),w) end function freeze1(hitElement) executeCommandHandler("glue",hitElement) setElementFrozen( hitElement, true ) setPedAnimation( hitElement, "ped", "ARRESTgun",0,false,false,false) toggleControl ( hitElement, "jump", false ) toggleControl ( hitElement, "forwards", false ) toggleControl ( hitElement, "left", false ) toggleControl ( hitElement, "right", false ) toggleControl ( hitElement, "sprint", false ) toggleControl ( hitElement, "walk", false ) toggleControl ( hitElement, "fire", false ) end addEventHandler("onMarkerHit",marker1,freeze1) function unfreeze1(source) executeCommandHandler("unglue") setPedAnimation( source, false ) setElementFrozen( source, false ) toggleControl ( source, "jump", true ) toggleControl ( source, "forwards", true ) toggleControl ( source, "backwards", true ) toggleControl ( source, "left", true ) toggleControl ( source, "right", true ) toggleControl ( source, "sprint", true ) toggleControl ( source, "walk", true ) toggleControl ( source, "fire", true ) end function binds(player) bindKey(player,"mouse1","down",checkVeh1) bindKey(player,"mouse1","up",checkVeh2) bindKey(player,"enter","down",unfreeze1) end addEventHandler("onResourceStart",getRootElement(),binds) Link to comment
BorderLine Posted July 7, 2013 Share Posted July 7, 2013 sige tirandote error al msimo argumento? Link to comment
Sasu Posted July 8, 2013 Share Posted July 8, 2013 --Client addEvent("onEnterPlayerVeh",true) addEventHandler("onEnterPlayerVeh",root, function(veh) if ( getElementModel( veh ) == 470 ) then w = createWeapon ("minigun", 0, 0, 0 ) attachElements ( w, veh, 0, 0, 1.38, 0, 30, 90) end end ) addEvent("onPlayerFireInVeh",true) addEventHandler("onPlayerFireInVeh",root, function() setWeaponState ( w, "firing") end ) addEvent("onPlayerStopFireInVeh",true) addEventHandler("onPlayerStopFireInVeh",root, function() setWeaponState ( w, "ready") end ) --Server marker1 = createMarker(0,0,0,"arrow",1,0,0,0,0) function glueElements(w) triggerClientEvent("onEnterPlayerVeh",root, source) attachElements ( w, source, 0, 0.5, 1.48, 0, 5, 90) attachElements( marker1,source, 0, 0, 2) setElementAlpha(w, 255) end addEventHandler("onVehicleEnter",getRootElement(),glueElements) function checkVeh1(source) if isElementWithinMarker(source, marker1) then triggerClientEvent("onPlayerFireInVeh", root) end end function checkVeh2(source) if isElementWithinMarker(source, marker1) then triggerClientEvent("onPlayerStopFireInVeh", root) end end function freeze1(hitElement) if getElementType(hitElement) == "player" then executeCommandHandler("glue", hitElement) setElementFrozen( hitElement, true ) setPedAnimation( hitElement, "ped", "ARRESTgun",0,false,false,false) toggleControl ( hitElement, "jump", false ) toggleControl ( hitElement, "forwards", false ) toggleControl ( hitElement, "left", false ) toggleControl ( hitElement, "right", false ) toggleControl ( hitElement, "sprint", false ) toggleControl ( hitElement, "walk", false ) toggleControl ( hitElement, "fire", false ) end end addEventHandler("onMarkerHit",marker1,freeze1) function unfreeze1(source) executeCommandHandler("unglue", source) setPedAnimation( source, false ) setElementFrozen( source, false ) toggleControl ( source, "jump", true ) toggleControl ( source, "forwards", true ) toggleControl ( source, "backwards", true ) toggleControl ( source, "left", true ) toggleControl ( source, "right", true ) toggleControl ( source, "sprint", true ) toggleControl ( source, "walk", true ) toggleControl ( source, "fire", true ) end function binds() for _, player in ipairs(getElementsByType("player")) do bindKey(player,"mouse1","down",checkVeh1, player) bindKey(player,"mouse1","up",checkVeh2, player) bindKey(player,"enter","down",unfreeze1, player) end end addEventHandler("onResourceStart",getRootElement(),binds) function bindJoin() bindKey(source,"mouse1","down",checkVeh1, source) bindKey(source,"mouse1","up",checkVeh2, source) bindKey(source,"enter","down",unfreeze1, source) end addEventHandler("onPlayerJoin", root, bindJoin) Nota: Dentro de ese lua, te dice que parte es client y que parte es server. Cuidado. Link to comment
Xperia Posted July 8, 2013 Author Share Posted July 8, 2013 Ahora el problema es que el player no rota en la misma rotacion que el auto.¿Con las siguientes funciones podria hacer que siguiera la rotacion? getVehicleRotation setPlayerRotation ¿Y para que vuelva a la rotacion normal que funcion uso? Link to comment
Recommended Posts