Ongelmat ovat seuraavat:
-Miten luoda vaihteet?
-Miten luoda ERITTÄIN hidas kiihtyminen autoille?
-Miten laskea kierrokset (kokeilin ite ja kävi niin ilkeesti että joka kerta kun tuli maaliviivalle niin kierrosksia oli yksi ja kun siirtyi
pois maaliviivalta kierroksia oli taas nolla ) ?
Tässä sitten se koodi:
Code: Select all
SCREEN 1024,768,0,cbFullscreen
FrameLimit 40
ruoho = MakeObjectFloor ()
nurmikko = LoadImage ("Media\grass.bmp")
PaintObject ruoho, nurmikko
kartta = LoadMap("media\auto8.til","media\tileset.bmp")
PlayObject kartta,0,0,1
auto1 = LoadObject("media\car2.bmp",360)
auto2 = LoadObject("media\car2.bmp",360)
RotateObject auto1,0
RotateObject auto2,0
PositionObject auto2,-100,530
PositionObject auto1,-17,610
kamera1=MakeImage(510,768)
kamera2=MakeImage(510,768)
SetupCollision auto1, auto2, 2,2,1
SetupCollision auto2, auto1, 2,2,1
SetupCollision auto2, kartta, 1,4,2
SetupCollision auto1, kartta, 1,4,2
Repeat
Select GetMap(3,ObjectX(auto2),ObjectY(auto2))
Case 1: p2kierrokset=1 And p2kierrokset=2 And p2kierrokset=3
EndSelect
Select GetMap(3,ObjectX(auto1),ObjectY(auto1))
Case 1: p1kierrokset=1
EndSelect
kl = 0
If takavauhti<0.5 Then takavauhti=0
If takavauhti<10 And DownKey() Then
takavauhti+1
Else
takavauhti-1
EndIf
If vauhti<15 And UpKey() Then
vauhti+1
Else
vauhti-1
EndIf
If nopeus<15 And KeyDown(cbkeyW) Then
nopeus+1
Else
nopeus-1
EndIf
If takavauhti+1 Then kl+takavauhti
If nopeus<2 And KeyDown(cbkeyS) Then MoveObject auto2,-10
If vauhti<2 And DownKey() Then MoveObject auto1,-10
If vauhti+1 Then kl+vauhti
If kl>5 Then kl=5
If vauhti<0.5 Then vauhti=0
If kl>3 And LeftKey() Then MoveObject auto1, 0,5
If kl>3 And RightKey() Then MoveObject auto1, 0,-5
If LeftKey() Then TurnObject auto1, kl
If RightKey() Then TurnObject auto1, -kl
MoveObject auto1, vauhti
//---------------------------------------------------------------------//
If nopeus+1 Then kl+nopeus
If kl>5 Then kl=5
If takanopeus<10 And KeyDown(cbkeyS) Then
takavauhti+1
Else
takavauhti-1
EndIf
If takanopeus<0.5 Then takanopeus=0
If takanopeus+1 Then kl+takanopeus
If nopeus<0.5 Then nopeus=0
If kl>3 And KeyDown(cbkeyA) Then MoveObject auto2, 0,5
If kl>3 And KeyDown(cbkeyD) Then MoveObject auto2, 0,-5
If KeyDown(cbkeyA) Then TurnObject auto2, kl
If KeyDown(cbkeyD) Then TurnObject auto2, -kl
MoveObject auto2, nopeus
Function camera(img,x,y)
l=ImageWidth(img)
k=ImageHeight(img)
UpdateGame
DrawToImage img
ClsColor cbblack
Cls
PositionCamera x,y
PositionCamera CameraX()+((ScreenWidth()-l)/2),CameraY()-((ScreenHeight()-k)/2)
DrawGame
DrawToScreen
EndFunction
camera(kamera1,ObjectX(auto1),ObjectY(auto1))
camera(kamera2,ObjectX(auto2),ObjectY(auto2))
DrawImage kamera1,0,0
DrawImage kamera2,510,0
Color cbRed
Text 0,30," pelaajien välimatka: "+Distance2(auto1,auto2)
Text 0,30, "kierrokset" +p1kierrokset +p2kierrokset
DrawScreen
Forever
teksti:
AddText "(Ei tietoa.)"
AddText " "
AddText "Palaa valikkoon painamalla ''L''"
Repeat
If KeyHit (cbkeyL) Then Goto valikko
DrawScreen
Forever
En ole varma toimiiko tuo lataus .