Advertisement
Guest User

Untitled

a guest
Aug 7th, 2017
81
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. .draw_road
  2.    
  3.     ;-Set up the frame
  4.     X# = sx2 ;posicion de la carretera (centrada pro defecto)
  5.     DX# = 0 ;para mover horizontalmente la perspectiva
  6.     HalfWidth# = (screeny * 0.75) ;era 30;ancho por defecto de la carretea en Z0? a partir de aki empieza la carretera (punto de fuga) 50 default
  7.     ScreenLine = (screeny - 1)
  8.     ;-
  9.     ;-DIBUJADO D LA CARRETERA
  10.     For a = 0 To (roadlines-1)
  11.         ;-
  12.         If  (road(a)\ZMap + TexOffset#) Mod (100) > (100/2) Then ;colores de tile1 y tile 2
  13.           ;-
  14.           road_RGB(a,0)=147:road_RGB(a,1)=147:road_RGB(a,2)=147
  15.           grass_RGB(a,0)=239:grass_RGB(a,1)=222:grass_RGB(a,2)=206
  16.         Else
  17.           ;--colores de tile2
  18.           road_RGB(a,0)=156:road_RGB(a,1)=156:road_RGB(a,2)=156
  19.           grass_RGB(a,0)=230:grass_RGB(a,1)=214:grass_RGB(a,2)=198
  20.         End If
  21.         ;--
  22.        
  23.         ;aki venia la parte de los stripes y edges, cada cuarto de tile, ok?
  24.         ;-------------------------------------------------------------------
  25.        
  26.         ;--
  27.        
  28.         ;-
  29.         ;-dibujo cada elemento de la linea, de izq a derecha..
  30.             ;-
  31.            
  32.             Color grass_RGB(a,0),grass_RGB(a,1),grass_RGB(a,2)
  33.             Line 0, ScreenLine,screenx,Screenline;CESPED O CARRETERA
  34.             ;-
  35.                                
  36.                 ;Dibujo la carretera en si-
  37.                 ;-
  38.                 Color road_RGB(a,0),road_RGB(a,1),road_RGB(a,2)
  39.                 Line (X - HalfWidth)-steer_x, ScreenLine,(X + HalfWidth)-steer_x, ScreenLine;CARRETERA CENTRAL
  40.                 ;---
  41.             ;-
  42.                 ;_
  43.                 road((roadlines-1)-a)\x1 =(X- HalfWidth)-steer_x ;ahora ya tengo el puto limite izq de la carretera
  44.                 road((roadlines-1)-a)\x2 =(X+ HalfWidth)-steer_x ;ahora ya tengo el puto limite der de la carretera
  45.                 ;-
  46.                 ;-;saco de cada una el ancho de linea
  47.                 road((roadlines-1)-a)\anchosmap =  HalfWidth ;la formula es Ancho , pero le falta el giro...
  48.                 ;DebugLog road((roadlines-1)-a)\anchosmap : Stop
  49.                 ;-----
  50.        
  51.                
  52.         ;-----
  53.         HalfWidth# = HalfWidth# - WidthStep
  54.         ScreenLine = ScreenLine -  1
  55.  
  56.         ;-
  57.  
  58.         ;-
  59.        
  60.        
  61.         ;-
  62.    
  63.  
  64. DX# = DX# + DDX#
  65.  
  66.         X# = X# + DX# +(steer_x*0.01)
  67.         ;---
  68.  
  69.        
  70.         ;--prueba---
  71.        
  72.         ;---
  73.        
  74.     Next
  75.     ;-
  76.    
  77.    
  78.     ;;--fuerza de curva---
  79.     If NextStretch$ <> "Recta" Then  ;viene una curva...
  80.         If accel# > 3.0 Then  ;si la velocidad es mayor de 30 % ...
  81.             ;steer_x = steer_x - (DX# * .5) * accel#    ;derrapa!!!
  82.         EndIf
  83.     EndIf
  84.     ;-----------------------
  85.    
  86.     ;--calcula limites del coche
  87.     car_limiteizq= (car_x - (ImageWidth(car)/2) )
  88.     car_limiteder= (car_x + (ImageWidth(car)/2) )
  89.     ;-
  90.     ;-
  91.     ;--------------------------
  92.    
  93.    
  94.    
  95.    
  96.     ;-MOVIMIENTO DE TILES
  97.     TexOffset# = TexOffset# + ScrollSpeed#  ;scroll de la textura hacia abajo
  98.     While TexOffset# >= SizeTile#               ;temaño por defecto de cada tile, se puede cambiar..
  99.         TexOffset# = TexOffset# - SizeTile#
  100.     Wend
  101.     ;-----------
  102.    
  103.     SegY# = SegY# - (1*Scrollspeed#)  ;frecuancia y velocidad con la que sale la curva. Default 5. Ahora depende de la velocidad
  104.    
  105.    
  106.    
  107.    
  108.     ;-
  109.     While SegY# < 0
  110.         ;-
  111.  
  112.         Gosub read_circuit ;temporal, borrarlo
  113.         ;-
  114.     Wend
  115.     ;-
  116.  
  117.    
  118.    
  119.     ;------Actualizo y dibujo los objetos-----------
  120.     Update_Objects()
  121.     ;------------------------------------------------
  122.    
  123.        
  124.    
  125. ;-
  126. Return
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement