void Animate(float dt) { float maxDt = 1; if (dt > maxDt) { dt = maxDt; } if (xInv) { if (xRot <= -overlap) { xInv = false; xSpeed = minspeed + rnd.MaxNext(5); } xRot -= xSpeed * dt; } else { if (xRot >= overlap) { xInv = true; xSpeed = minspeed + rnd.MaxNext(5); } xRot += xSpeed * dt; } if (yInv) { if (yRot <= -overlap) { yInv = false; ySpeed = minspeed + rnd.MaxNext(5); } yRot -= ySpeed * dt; } else { if (yRot >= overlap) { yInv = true; ySpeed = minspeed + rnd.MaxNext(5); } yRot += ySpeed * dt; } }
public void Start(GamePlatform p_) { this.p = p_; //Initialize translations lang = new Language(); lang.platform = p; lang.LoadTranslations(); p.SetTitle(lang.GameName()); textColorRenderer = new TextColorRenderer(); textColorRenderer.platform = p_; p_.LoadAssetsAsyc(assets, assetsLoadProgress); overlap = 200; minspeed = 20; rnd = p.RandomCreate(); xRot = 0; xInv = false; xSpeed = minspeed + rnd.MaxNext(5); yRot = 0; yInv = false; ySpeed = minspeed + rnd.MaxNext(5); z = -5; filter = 0; mvMatrix = Mat4.Create(); pMatrix = Mat4.Create(); currentlyPressedKeys = new bool[256]; p.AddOnNewFrame(MainMenuNewFrameHandler.Create(this)); p.AddOnKeyEvent(MainMenuKeyEventHandler.Create(this)); p.AddOnMouseEvent(MainMenuMouseEventHandler.Create(this)); p.AddOnTouchEvent(MainMenuTouchEventHandler.Create(this)); }