LATEST UPDATE: The below problems are more or less out of the way mainly because of r86, except for number (2), for a particular reason.
I've isolated the angle problem that this engine is having, to TWO main possible factors. It can only be one or the other, not both, I presume.
a) The anglelerp(a, b, x) expression. It's supposed to replace the RotateAngle() expression from Classic, but I have a feeling it's not working right. I'm gonna ask Ashley about it via PM.
b) The collision detection system might not be working properly in this instance, though I can't see how it would cause spontaneous and virtually random changes in angle.
I've been trying to port a Sonic engine someone else made from Construct Classic to Construct 2, but there's been a few issues that has halted progress. Three main issues:
(1) I'm pretty sure the "While" condition is completely redundant, but if not, how do you create a work-around for them?
(2) Construct 2 doesn't have the "RotateAngle" expression, resulting in the player unable to rotate properly.
<img src="http://dl.dropbox.com/u/919275/Screenshots/AOD/RotateAngleExpression.png" border="0">
(3) Construct 2 doesn't have the "Sign" expression... Whatever the hell that is.
<img src="http://dl.dropbox.com/u/919275/Screenshots/AOD/SignExpression.png" border="0">
I'll provide the caps here:
Classic .cap (Version r2, requires the MagiCam and Slgor's input system plugins.)
Construct 2 .capx, release 86, requires Standard license (requires the Function Plugin)
Go to the "Player_Code" event sheet on both, and open up two groups:
- Motion Management -> Tools (Whole group, for (1) and (2), I'm going to replace the "Parameter" function with a variable to get around the "Else" problem)
- Movement Routines -> Movement (look at the "Calculate Sub-Step" events for (3))
If anyone has any idea on how to work around these issues, I'd be grateful.