Работя върху 2D игра с вертикално превъртане, която е базирана на doodle jump и използвам flash и as3, за да я създам. Сложих превъртане и хвърляне на хайвера на платформата и досега добре, но нещо, което рандомизирам x и y за всяка платформа и очевидно те просто хвърлят хайвера си, където пожелаят (вътре в сцената, това е единственото ми действително правило). Искам да създам правила, така че максималното разстояние между новата платформа и последната да е, да речем, 35px.
Текущият ми случаен код е:
public function createPlatform():void
{
//randomY();
var newY:Number = Math.random() * 600;
var X:Number = Math.random() * 500;
var tempPlatform:mcPlatform = new mcPlatform();
tempPlatform.x = X;
tempPlatform.y = newY;
platforms.push(tempPlatform);
mcContent.addChild(tempPlatform);
}
Също така се опитах да направя произволно само за Y по този начин:
private function randomY():void
{
var flag:Boolean = false;
while (flag == false)
{
newY = Math.random() * 600;
if(newY < lastY && (lastY - newY) < 50 && (lastY - newY) > 10)
{
newY = lastY;
flag = true;
}
}
}
смисълът на играта е героите да скачат от платформа на платформа и когато играта превърта съдържанието си, тя просто създава нов набор от платформи.
P.S.: newY
е деклариран в началото на кода като 600, така че първият винаги започва от височината на сцената.