Diseñando motor de Items para la Churrera
Moderador: na_th_an
Re: Diseñando motor de Items para la Churrera
¡Como siempre, muchas gracias por la rapidez y efectividad!
Re: Diseñando motor de Items para la Churrera
Una nueva pregunta Nathan, actualmente en Avorcha, los tiles elegidos para el selector, no tienen el mismo color, uno es rojo colorao, y el otro rosita mono (como se puede ver en la imagen del proyecto). Ahora mismo, lo que hace es pintar de todo rojo. Para evitar ésto... ¿habría que cambiar el itemSelectClr? ¿Es este el color de atributo? ¿O habría que cambiar otra cosa más?
Re: Diseñando motor de Items para la Churrera
$this->bbcode_second_pass_quote('Nightwolf', 'U')na nueva pregunta Nathan, actualmente en Avorcha, los tiles elegidos para el selector, no tienen el mismo color, uno es rojo colorao, y el otro rosita mono (como se puede ver en la imagen del proyecto). Ahora mismo, lo que hace es pintar de todo rojo. Para evitar ésto... ¿habría que cambiar el itemSelectClr? ¿Es este el color de atributo? ¿O habría que cambiar otra cosa más?
Sip con eso ya te vale, sólo en los 2 sitios indicados$this->bbcode_second_pass_quote('na_th_an', 'C')laro, todo puede hacerse, pero modificando código. No es demasiado directo porque el código que maneja los items lo genera el compilador de scripts. Habría que modificar msc.bas y recompilarlo.
A partir de la linea 638:
$this->bbcode_second_pass_code('', ' ' Generate display_items
If itemSetOr = 0 Then
' Horizontal
print #f, "void display_items (void) {"
print #f, " its_p = " & itemSetX & ";"
print #f, " for (its_it = 0; its_it < MSC_MAXITEMS; its_it ++) {"
print #f, " draw_coloured_tile (its_p, " & itemSetY & ", items [its_it]);"
print #f, " if (its_it != flags [FLAG_SLOT_SELECTED]) {"
print #f, " sp_PrintAtInv (" & (itemSetY + 2) & ", its_p, 0, 0);"
print #f, " sp_PrintAtInv (" & (itemSetY + 2) & ", its_p + 1, 0, 0);"
print #f, " } else {"
print #f, " sp_PrintAtInv (" & (itemSetY + 2) & ", its_p, " & itemSelectClr & ", " & itemSelectC1 & ");"
print #f, " sp_PrintAtInv (" & (itemSetY + 2) & ", its_p + 1, " & itemSelectClr & ", " & itemSelectC2 & ");" <-- Aqui cambia el atributo
print #f, " }"
print #f, " its_p += " & itemSetStep & ";"
print #f, " }"
print #f, "}"
Else
' Vertical
print #f, "void display_items (void) {"
print #f, " its_p = " & itemSetY & ";"
print #f, " for (its_it = 0; its_it < MSC_MAXITEMS; its_it ++) {"
print #f, " draw_coloured_tile (" & itemSetY & ", its_p, items [its_it]);"
print #f, " if (its_it != flags [FLAG_SLOT_SELECTED]) {"
print #f, " sp_PrintAtInv (its_p + 2, " & itemSetX & ", 0, 0);"
print #f, " sp_PrintAtInv (its_p + 2, " & (itemSetX + 1) & ", 0, 0);"
print #f, " } else {"
print #f, " sp_PrintAtInv (its_p + 2, " & itemSetX & ", " & itemSelectClr & ", " & itemSelectC1 & ");"
print #f, " sp_PrintAtInv (its_p + 2, " & (itemSetX + 1) & ", " & itemSelectClr & ", " & itemSelectC2 & ");" // <-- y aquí
print #f, " }"
print #f, " its_p += " & itemSetStep & ";"
print #f, " }"
print #f, "}"
End If')