I have a code that makes a gun in the bottom right of the screen, but it stays in a locked place and dont move or anything. Then I found this gun bobbing and swaying code. But it uses an made object not a model. How would I go by adding my model to this code so it will it will be bobbing and swaying.
My model code:
`LOAD IMAGES:
`floor image
load image "grass.bmp",1
`gun 1 texture
load image "colt.bmp",2
`LOAD SOUNDS:
`gun 1 sound
load sound "gun.wav",1
`create gun 1,add texture, lock obect to screen
load object "Colt.3DS",1
yrotate object 1,0
fix object pivot 1
scale object 1,4500,4500,4500
position object 1,9,-9,14
lock object on 1
texture object 1,2
The Code I want to add it to:
`Setup
SYNC ON
SYNC RATE 60
SET DISPLAY MODE 800,600,32
HIDE MOUSE
`Set gun holding-limb position
gunOffsetX AS FLOAT = 15.0
gunOffsetY AS FLOAT = -20.0
gunOffsetZ AS FLOAT = 20.0
`Make main player object and hide it
MAKE OBJECT CUBE 1,10
HIDE OBJECT 1
`Attach a limb and delete the mesh
MAKE MESH FROM OBJECT 1,1
ADD LIMB 1,1,1
DELETE MESH 1
`Make a weapon and attach it to the limb
MAKE OBJECT BOX 2,10,10,100
GLUE OBJECT TO LIMB 2,1,1
`Make matrix to walk on
MAKE MATRIX 1,10000,10000,100,100
`Variables
xPos AS FLOAT
zPos AS FLOAT
speed AS FLOAT = 10.0
xLook AS FLOAT
yAng AS FLOAT
lookSpeed AS FLOAT = 0.2
`The gun bobbing values
gunBobSpeed AS FLOAT = 6.0
gunBobMove AS FLOAT = 3.0
gunBobHeight AS FLOAT = 1.5
gunBobAng AS FLOAT
gunTurnAng AS FLOAT
gunLookAng AS FLOAT
mouseMovementX AS FLOAT
mouseMovementY AS FLOAT
DO
`Store mouse movement
mouseMovementX = MOUSEMOVEX()
mouseMovementY = MOUSEMOVEY()
`Control movement using trig
IF UPKEY()+DOWNKEY()+LEFTKEY()+RIGHTKEY() > 0
IF UPKEY() = 1
INC xPos,SIN(yAng)*speed
INC zPos,COS(yAng)*speed
ENDIF
IF DOWNKEY() = 1
DEC xPos,SIN(yAng)*speed
DEC zPos,COS(yAng)*speed
ENDIF
IF RIGHTKEY() = 1
INC xPos,COS(yAng)*speed
INC zPos,-SIN(yAng)*speed
ENDIF
IF LEFTKEY() = 1
DEC xPos,COS(yAng)*speed
DEC zPos,-SIN(yAng)*speed
ENDIF
`Increase gun-bobbing angle to get gun bobbing
gunBobAng = WRAPVALUE(gunBobAng+gunBobSpeed)
ELSE
`Otherwise slowly change the value to nothing to bring the gun to the centre again
gunBobAng = CURVEANGLE(0,gunBobAng,10)
ENDIF
`Control the gun swaying according to how much the player is turning
gunTurnAng = CURVEANGLE(WRAPVALUE(mouseMovementX),gunTurnAng,10)
gunLookAng = CURVEANGLE(WRAPVALUE(mouseMovementY),gunLookAng,10)
`Position the gun-holding limb and rotate it to give swaying effect
OFFSET LIMB 1,1,gunOffsetX+SIN(gunBobAng)*gunBobMove,gunOffsetY+ABS(COS(gunBobAng))*gunBobHeight,gunOffsetZ
ROTATE LIMB 1,1,gunLookAng,gunTurnAng,0
`Turn player
yAng = WRAPVALUE(yAng + mouseMovementX*lookSpeed)
xLook = WRAPVALUE(xLook + mouseMovementY*lookSpeed)
`Position player object and camera
POSITION OBJECT 1,xPos,100,zPos
ROTATE OBJECT 1,0,yAng,0
PITCH OBJECT DOWN 1,xLook
POSITION CAMERA xPos,100,zPos
ROTATE CAMERA xLook,yAng,0
SYNC
LOOP
I hope you guys understand what im trying to do. It was kinda hard to explain.