基本上,我正在努力制作一个将在Google的广告网络上投放的横幅广告。然而事实证明,他们不接受在代码中使用math.random的广告。
所以我试图将我的代码转换为使用math.random来调用模拟同一事物的函数。我找到了关于这个主题的信息,但我被困住了。
http://wondergiant.com/2013/03/random-without-math-random/
在插入此代码并使用getRan(20)查找并替换math.random()后,我的代码中没有错误,但是我工作的随机生成的雪花不再有效。显然我正在实施这个错误。谁能告诉我怎么能让它发挥作用呢?
以下是原始代码:
function createSnow(i:int):void {
var m:MovieClip = new snowflake();
m.mouseEnabled = false;
if(intro == true) {
m.y = Math.random() * - margin *2;
m.x = Math.random() * (sw / 2 + margin) - margin * 2;
} else {
m.y = Math.random() * (sh + margin*2) - margin*2;
m.x = Math.random() * (sw + margin*2) - margin*2;
}
m.rotation = Math.random() * 360;
m.depth = Math.random() * (snowZmax*2-snowZmin) + snowZmin
m.depth = int(m.depth*100)/100
m.scaleX = m.scaleY = Math.max(0.4, (1/(Math.max(0, m.depth))-0.5)*snowSize)
//trace("d : "+m.depth + " = scaleX " + m.scaleX)
if(fade == true) {
m.alpha = 0;
} else {
m.alpha = newAlpha(m);
}
addChild(m);
snowX(m);
snowY(m);
}
如果我替换所有" math.round"使用" getRan(20)"的实例,我没有得到任何雪花,但我也没有任何错误。任何关于如何使其发挥作用的建议都会很棒!
答案 0 :(得分:2)
Math.random()
返回0到1之间的数字。当你致电getRan(20)
时,你要求的数字介于0和20之间。根据documentation,函数的默认值是1,所以在你的情况下你应该可以不带任何参数调用它:
getRan(); // Give me a random number between 0 and 1