Guest User

Untitled

a guest
Jan 31st, 2013
161
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 1.89 KB | None | 0 0
  1. local cowOn = nil
  2. local offset = 0
  3. local offsetY = 8
  4. local upY = nil
  5. local upX = nil
  6. local maxOffset = 8
  7.  
  8. function mooBitch()
  9.     if cowOn then
  10.         destroyElement(cow)
  11.         destroyElement(eyeLeft)
  12.         destroyElement(eyeRight)
  13.         destroyElement(mooSound)
  14.         cowOn = nil
  15.         removeEventHandler ( "onClientRender", root, moveCow )
  16.     else
  17.         cow = createObject ( 16442, 0, 0, 0 )
  18.         eyeLeft = createMarker ( 0, 0, 0, "corona", 0.2, 255,0,0, 160)
  19.         eyeRight = createMarker ( 0, 0, 0, "corona", 0.2, 255,0,0, 160)
  20.         mooSound = playSound3D ( "moo.mp3", 0, 0, 0, true )
  21.         setSoundMaxDistance( mooSound, 50 )
  22.         attachElements(eyeLeft, cow, 0.8, 0.1, 0.45)
  23.         attachElements(eyeRight, cow, 0.8, -0.1, 0.45)
  24.         attachElements(mooSound, cow, 0, 0, 0)
  25.         setObjectScale ( cow, 0.4 )
  26.         setElementCollisionsEnabled ( cow, false)
  27.         cowOn = true
  28.         addEventHandler ( "onClientRender", root, moveCow )
  29.     end
  30. end
  31. addCommandHandler("moo", mooBitch)
  32.  
  33. function moveCow()
  34.     if upX then
  35.         offset = offset+0.1
  36.         if offset > maxOffset then
  37.             upX = nil
  38.         end
  39.     else
  40.         offset = offset-0.1
  41.         if offset < -maxOffset then
  42.             upX = true
  43.         end
  44.     end
  45.    
  46.     if upY then
  47.         offsetY = offsetY+0.1
  48.         if offsetY > maxOffset then
  49.             upY = nil
  50.         end
  51.     else
  52.         offsetY = offsetY-0.1
  53.         if offsetY < -maxOffset then
  54.             upY = true
  55.         end
  56.     end
  57.    
  58.     local xB,yB,zB = getElementPosition(localPlayer)
  59.     setElementPosition(cow, xB-offset , yB+offsetY , zB + 1.5)
  60.     local xA,yA,zA = getElementPosition(cow)
  61.     local cowROT = ( -math.deg(math.atan2(xA-yA,xB-yB)) ) + 90
  62.     setElementRotation(cow, 0, 0, cowROT)
  63.    
  64.     local targetX, targetY, targetZ = getPedBonePosition ( localPlayer, 6 )
  65.     local eyeXL,eyeYL,eyeZL = getElementPosition(eyeLeft)
  66.     dxDrawLine3D (eyeXL,eyeYL,eyeZL,targetX,targetY,targetZ,tocolor(255,0,0,150))
  67.    
  68.     local eyeXR,eyeYR,eyeZR = getElementPosition(eyeRight)
  69.     dxDrawLine3D (eyeXR,eyeYR,eyeZR,targetX,targetY,targetZ,tocolor(255,0,0,150))
  70. end
Advertisement
Add Comment
Please, Sign In to add comment