OK
Here is the source...
sync on : hide mouse
set camera range 100,7000
make matrix 1,5000,5000,20,20
randomize matrix 1,70
position matrix 1,-2500,-200,-1500
load sound "scream1.wav",1
load sound "scream2.wav",2
load music "oceans apart.mid",1
loop music 1
load bitmap "Chav.png",1
load image "grass16.bmp",2
load image "hole.bmp",5
get image 1,0,0,299,340
set current bitmap 0
load object "CM.x",2
set object 2,1,1,0
scale object 2,70,70,70
position object 2,0,0,0
ghost object on 2
make object cylinder 3,60
Xrotate object 3,90
fix object pivot 3
scale object 3,50,50,100
color object 3,rgb(100,25,25)
hide object 3
make object plain 1,300,340
texture object 1,1
set object 1,1,0,0,1,0
prepare matrix texture 1,2,1,1
update matrix 1
move camera -500
randomize timer()
set ambient light 100
do
msmy# = mousemovey()
msmx# = mousemovex()
inc xang#,msmy#/5
inc yang#,msmx#/5
position mouse 320,240
if xang# > 20 then xang# = 20
if xang# < -20 then xang# = -20
if yang# > 45 then yang# = 45
if yang# < -45 then yang# = -45
rotate camera wrapvalue(xang#),wrapvalue(yang#),0
if mouseclick() = 1 and firing = 0
firing = 1
timeout = 0
show object 3
position object 3,camera position x(),camera position y(),camera position z()
set object to camera orientation 3
endif
if firing = 1
move object 3,60
inc timeout
if object collision(3,1) = 1
if rnd(1) = 1
play sound 1
else
play sound 2
endif
hide object 3
bloodx = object position x(3) - xpos
if object angle y(1) = 180 then bloodx = 0 - bloodx
bloody = 0-(object position y(3) - ypos)
ang# = atanfull(bloodx,bloody)
dist# = sqrt((bloodx^2)+(bloody^2))
bloodx = sin(ang#-ang)*dist#
bloody = cos(ang#-ang)*dist#
set current bitmap 1
paste image 5,bloodx+143,bloody+163
get image 1,0,0,299,340
set current bitmap 0
texture object 1,1
firing = 0
inc hits
if hits = 10
gosub die
hits = 0
endif
endif
if timeout > 100
hide object 3
firing = 0
endif
endif
if mode = 0
inc count,5
inc xpos,5
Zrotate object 1,wrapvalue(0-count)
Yrotate object 1,0
count = wrapvalue(count)
if count = 0
mode = rnd(3)
endif
endif
if mode = 1
dec count,5
dec xpos,5
Zrotate object 1,wrapvalue(0-count)
Yrotate object 1,0
count = wrapvalue(count)
if count = 0
mode = rnd(2)
endif
endif
if mode = 2
if zpos = 230
mode = 3
else
inc zpos,2
Yrotate object 1,ang
if count2 = 0 then ang = 0
if count2 = 25 then ang = 180
inc count2
if count2 > 49 then count2 = 0
if zpos = 230
count2 = 0
mode = rnd(2)
endif
endif
endif
if mode = 3
if zpos = 0
mode = 2
else
dec zpos,2
Yrotate object 1,ang
if count2 = 0 then ang = 0
if count2 = 25 then ang = 180
inc count2
if count2 > 49 then count2 = 0
if zpos = 0
count2 = 0
mode = rnd(2)
endif
endif
endif
position object 1,xpos,ypos,zpos
if xpos > 600 then mode = 1
if xpos < -600 then mode = 0
ink rgb(255,0,0),0
circle 320,240,25
line 280,240,360,240
line 320,200,320,280
if score = 1
cv$ = " chav."
else
cv$ = " chavs."
endif
text 0,0,"You have killed " + str$(score) + cv$
sync
loop
die:
for a = 1 to 90
falzpos# = sin(a)*170
falypos# = cos(a)*150
position object 1,xpos,falypos#-150,falzpos#+zpos
rotate object 1,a,0,0
sync
next a
rotate object 1,0,0,0
load bitmap "Chav.png",1
load image "Chav.png",1
texture object 1,1
set current bitmap 0
inc score
return
I admit it, no comments at all
Media is attached(it's a bit big
):
There are three types of people, those that can count and those that can't.