Comunidad de diseño web y desarrollo en internet online

Duda con random.

Citar            
MensajeEscrito el 07 May 2012 08:42 pm
Tengo esto en flash 5 viejo:

Código ActionScript :

    Abrev = 2.5*_level0.AlexAcc;
    W = (10*_level0.AlexAcc+75+Abrev)/2;
    E = (75+Abrev+100)/2;
    Excess = 75+Abrev;
    E = E-Excess;
    W = (Excess-W)/E;
    E = 1;
    Excess = random(E+W);
    if (Excess<E) {
        Pow = random(76+Abrev-10*_level0.AlexAcc)+10*_level0.AlexAcc;

Lo que sigue no importa, ni lo anterior, de hecho prácticamente lo único importante aquí es lo que puse último.

La idea es que por ejemplo cuando _level0.AlexAcc sea 0, Pow sea desde 0.01 a 75. El problema es que con lo expuesto, el resultado es de 0 a 75, y no sé cómo arreglarlo sin usar otro if, no quiero otro if. Les mostraré cómo funciona el código cuando _level0.AlexAcc es 0:
Abrev = 2.5*(0) = 0
W = (10*(0)+75+(0))/2 = 37.5
E = (75+(0)+100)/2 = 87.5
Excess = 75+(0) = 75
E = (87.5)-(75) = 12.5
W = ((75)-(37.5))/(12.5) = 3
E = 1
Excess = random((3)+(1)) = random(4)
if (Excess<(1)) {
Pow = random(76+(0)-10*(0))+10*(0) = random(76)+0

O sea de 0 a 75. Pero como dije, quiero que sea de 0.01 a 75.

Si hago así:
Pow = random(76+Abrev-10*_level0.AlexAcc)+10*_level0.AlexAcc+0.01
...me queda de 0.01 a 75.01, o sea tampoco me sirve.

Gracias desde ya.

Por Tachikomaia

73 de clabLevel



 

chrome
Citar            
MensajeEscrito el 07 May 2012 11:00 pm
No habría problema si cuando _level0.AlexAcc es 10 el interior del random fuera mayor que 1. Como es 1, restarle 0.01 sería bugoso, de hecho random(1) ya lo es bastante...
O sea, esto tampoco sirve:
Pow = random(76+Abrev-10*_level0.AlexAcc-0.01)+10*_level0.AlexAcc+0.01

Por Tachikomaia

73 de clabLevel



 

chrome

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.