Lukota!

Voit pyytää apua ohjelmointiongelmiin täältä.
Post Reply
martti
Newcomer
Posts: 27
Joined: Mon Aug 31, 2009 6:21 pm

Lukota!

Post by martti » Mon Aug 31, 2009 7:04 pm

Tarvittisin hieman apua autopelissä.

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 :roll:) ?

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 :? .
Attachments
auto8.rar
Tässä sitten se tilemappi.
(323 Bytes) Downloaded 86 times
Last edited by martti on Fri Nov 27, 2009 10:16 pm, edited 3 times in total.
OpenTTD

Projektit:
  • Land of guy's 10.0%
ylimääräistä:
---------------------------- ...kyläkaupunkiin.

(11v)

Re: Apua autopeliin.

Post by (11v) » Mon Aug 31, 2009 9:11 pm

Voisit laittaa ne kuva tiedostot mukaan.
EDIT:

Ahh, sori en huomannut :oops:


Apua löytyisi Cb kirjaston malleista kai, itse olen aika uusi =)

martti
Newcomer
Posts: 27
Joined: Mon Aug 31, 2009 6:21 pm

Re: Apua autopeliin.

Post by martti » Mon Aug 31, 2009 9:30 pm

Katsoin sieltä jo aikaisemmin ja löysin tuon kamera function.
OpenTTD

Projektit:
  • Land of guy's 10.0%
ylimääräistä:
---------------------------- ...kyläkaupunkiin.

User avatar
Tuxi
Active Member
Posts: 189
Joined: Wed Jan 21, 2009 11:25 pm
Contact:

Re: Apua autopeliin.

Post by Tuxi » Mon Aug 31, 2009 9:44 pm

Kannattaisi varmaan tehdä niin, että pistää radalle väliaikapisteitä. Maalviiva lasketaan myös väliaikapisteeksi. Sitten kun on ajanut kaikkiean väliaikapisteiden ohi, kierroslaskuria kasvatetaan yhdellä. Kannattaa tehdä myös niin, että väliaikapisteet täytyy ajaa tietyssä järjestyksessä. Valiaikapisteet voi tallettaa vaikka tilemapin Data-kerrokseen.
Projektit:
Jotain pientä (Ehkä vähän suurempaakin)

-Tuxi- (myös Tuxi4321)

martti
Newcomer
Posts: 27
Joined: Mon Aug 31, 2009 6:21 pm

Re: Apua autopeliin.

Post by martti » Mon Aug 31, 2009 9:48 pm

Ok kiittos kokeilenpa nyt heti.
OpenTTD

Projektit:
  • Land of guy's 10.0%
ylimääräistä:
---------------------------- ...kyläkaupunkiin.

martti
Newcomer
Posts: 27
Joined: Mon Aug 31, 2009 6:21 pm

Re: Apua autopeliin.

Post by martti » Mon Aug 31, 2009 9:58 pm

Tässä nyt se muokattu.
auto8.1.rar
uusi versio siitä kartasta, nyt siinä on ne väliaikapisteet (niiden datat: 2,3,4&5)
(344 Bytes) Downloaded 107 times
OpenTTD

Projektit:
  • Land of guy's 10.0%
ylimääräistä:
---------------------------- ...kyläkaupunkiin.

Post Reply