NathanKell
...
I think it'll be possible to hack together sidestep controls.
However! I don't think collision detection would work with them.
The way is, you add say A,D to controls as sidestepleft, right; then in process controls you check to see if in location, and if so on sidestep left you:
//psuedocode
Get pchar
GetCharacterAngle(pchar)
GetCharacterPos(pchar, &x, &y, &z);
Calculate_xyz_offset_for_angle;
SetCharacterPos(pchar, offsetx + x, offsety + y, offsetz + z);
Now, z should stay constant, and offsetx and offsety will just be vector math (convert a mag/dir (side step size) magnitude vector perpendicular to pchar angle to a coordinate vector and add to x and y).
But again, SetCharacterPos bypasses collision detection, so you may end up in a wall. <img src="http://www.piratesahoy.com/forum/style_emoticons/<#EMO_DIR#>/smile.gif" style="vertical-align:middle" emoid="
" border="0" alt="smile.gif" />
However! I don't think collision detection would work with them.
The way is, you add say A,D to controls as sidestepleft, right; then in process controls you check to see if in location, and if so on sidestep left you:
//psuedocode
Get pchar
GetCharacterAngle(pchar)
GetCharacterPos(pchar, &x, &y, &z);
Calculate_xyz_offset_for_angle;
SetCharacterPos(pchar, offsetx + x, offsety + y, offsetz + z);
Now, z should stay constant, and offsetx and offsety will just be vector math (convert a mag/dir (side step size) magnitude vector perpendicular to pchar angle to a coordinate vector and add to x and y).
But again, SetCharacterPos bypasses collision detection, so you may end up in a wall. <img src="http://www.piratesahoy.com/forum/style_emoticons/<#EMO_DIR#>/smile.gif" style="vertical-align:middle" emoid="
