Делаем залитый трек — различия между версиями

Материал из Gravity Defied Wiki
Перейти к: навигация, поиск
Строка 35: Строка 35:
 
          
 
          
 
  <code> int green = 170;  
 
  <code> int green = 170;  
         green -= Math.abs((((m_charaaI[j2][1] << 3) >> 16) - ((m_charaaI[j2 + 1][1] << 3) >> 16))*100/(((m_charaaI[j2][0] << 3) >> 16) - ((m_charaaI[j2 + 1][0] << 3) >> 16)));  
+
         green -= Math.abs((((m_charaaI[j2][1] << 3) >> 16) - ((m_charaaI[j2 + 1][1] << 3) >> 16))*100/(((m_charaaI[j2][0]
 +
<< 3) >> 16) - ((m_charaaI[j2 + 1][0] << 3) >> 16)));  
 
         if(green < 10)    green = 10;  
 
         if(green < 10)    green = 10;  
 
         j._ifIIV(0, green, 0);  
 
         j._ifIIV(0, green, 0);  
         j.DrawTrack((m_charaaI[j2][0] + j1 << 3) >> 16, (m_charaaI[j2][1] + l1 << 3) >> 16, (m_charaaI[j2 + 1][0] + i3 << 3) >> 16, (m_charaaI[j2 + 1][1] + j3 << 3) >> 16, (m_charaaI[j2 + 1][0] << 3) >> 16, (m_charaaI[j2 + 1][1] << 3) >> 16, (m_charaaI[j2][0] << 3) >> 16, (m_charaaI[j2][1] << 3) >> 16);  
+
         j.DrawTrack((m_charaaI[j2][0] + j1 << 3) >> 16, (m_charaaI[j2][1] + l1 << 3) >> 16,
 +
(m_charaaI[j2 + 1][0] + i3 << 3) >> 16, (m_charaaI[j2 + 1][1] + j3 << 3) >> 16, (m_charaaI[j2 + 1][0] << 3) >> 16,
 +
(m_charaaI[j2 + 1][1] << 3) >> 16, (m_charaaI[j2][0] << 3) >> 16, (m_charaaI[j2][1] << 3) >> 16);  
 
         j._ifIIV(0, 255, 0);  
 
         j._ifIIV(0, 255, 0);  
         j.drawDownTrack((m_charaaI[j2 + 1][0] << 3) >> 16, (m_charaaI[j2 + 1][1] << 3) >> 16, (m_charaaI[j2][0] << 3) >> 16, (m_charaaI[j2][1] << 3) >> 16);  
+
         j.drawDownTrack((m_charaaI[j2 + 1][0] << 3) >> 16, (m_charaaI[j2 + 1][1] << 3) >> 16,  
 +
(m_charaaI[j2][0] << 3) >> 16, (m_charaaI[j2][1] << 3) >> 16);  
 
         j._ifIIV(0, green, 0);
 
         j._ifIIV(0, green, 0);
 
  </code>
 
  </code>

Версия 11:42, 19 ноября 2010

Открываем i.java
Вставляем в любое место(можно перед последней скобкой):

Вот что у нас получитьса
public void DrawTrack(int x1,int y1, int x2,int y2,int x3,int y3,int x4,int y4 )

{ x1 = _qII(x1);
y1 = _rII(y1);
x2 = _qII(x2);
y2 = _rII(y2);
x3 = _qII(x3);
x4 = _qII(x4);
y4 = _rII(y4);
m_CGraphics.fillTriangle(x1, y1, x2, y2, x3, y3);
m_CGraphics.fillTriangle(x1, y1, x3, y3, x4, y4);
}
public void drawDownTrack(int x1, int y1, int x2, int y2) {
x1 = _qII(x1);
y1 = _rII(y1);
x2 = _qII(x2);
y2 = _rII(y2);
int down = Math.max(y1, y2);
down = Math.max(down, m_dI);
m_CGraphics.fillTriangle(x1, y1, x2, y2, x2, down);
m_CGraphics.fillTriangle(x1, y1, x2, down, x1, down);

}


Открываем l.java и после строк:

i3 = (int)(((long)i3 << 32) / (long)(l3 >> 1 >> 1) >> 16);

Вставляем:

 int green = 170; 
       green -= Math.abs((((m_charaaI[j2][1] << 3) >> 16) - ((m_charaaI[j2 + 1][1] << 3) >> 16))*100/(((m_charaaI[j2][0]
<< 3) >> 16) - ((m_charaaI[j2 + 1][0] << 3) >> 16))); 
       if(green < 10)    green = 10; 
       j._ifIIV(0, green, 0); 
       j.DrawTrack((m_charaaI[j2][0] + j1 << 3) >> 16, (m_charaaI[j2][1] + l1 << 3) >> 16,
(m_charaaI[j2 + 1][0] + i3 << 3) >> 16, (m_charaaI[j2 + 1][1] + j3 << 3) >> 16, (m_charaaI[j2 + 1][0] << 3) >> 16,
(m_charaaI[j2 + 1][1] << 3) >> 16, (m_charaaI[j2][0] << 3) >> 16, (m_charaaI[j2][1] << 3) >> 16); 
       j._ifIIV(0, 255, 0); 
       j.drawDownTrack((m_charaaI[j2 + 1][0] << 3) >> 16, (m_charaaI[j2 + 1][1] << 3) >> 16, 

(m_charaaI[j2][0] << 3) >> 16, (m_charaaI[j2][1] << 3) >> 16);

       j._ifIIV(0, green, 0);

Компилируем и радуемся :)

by alex55 & Danvir